Age | Commit message (Collapse) | Author |
|
Move the Main module to a new `app` directory. All other modules have
been nested under the `Xmobar` name. Lots of module headers & imports
were updated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I tried to scrap the hide/reveal boilerplate, but that didn't work out
due different functions ({show,hide}Window) and signaltypes. Got almost
as ugly. Maybe a pattern matching function instead of the "case typ of"
would be nicer. But that's just code golfing.
|
|
This is superior to calling the repositionWin function. It will only set
the StrutValues and avoid additional work. This means, that
extra parameters need to be passed down to showWindow. However, that is
not a problem here.
|
|
For a ChangeScreen or Reposition signal the setProperties function is
called which sets the StrutValues regardless of the mapping state.
This means that for an unmapped window a window manager will produce an
empty gap. Fixing this is easy. Just set the StrutValues to 0.
|
|
This reverts commit cae6f2bc049d4b7ed57a7a18a828bc4ea35df4aa, until we
find a reason why it's causing high CPU consumption in the X server.
|
|
This makes xmobar work in windowmanagers that support _NET_WM_WINDOW_TYPE_DOCK
but not _NET_WM_STRUT, such as Notion
|
|
When set to True the window is initially not mapped, i.e. hidden. It
then can be toggled manually (for example using the dbus interface) or
automatically (by a plugin) to make it reappear (unhide/reveal).
|
|
|
|
|
|
I misunderstood the intention of lowerOnStart and changed the
implementation to what I thought it would have to do. This was wrong
indeed, so back to original behaviour.
|
|
Realign methods, remove unnecessary imports and remove clutter
|
|
Toggling is based is based on the current window status. If unmapped
then reveal else hide.
Sync is necessary or delays might occur.
The functions are called from the event loop when the according signal
is received
When mapping (revealing) the window again we need to set the struts
property again. The easiest way to do this is to call repositionWin.
However, repositionWin needs access to the Config structure which is
available in eventLoop.
Because decomposition wouldn't be easy and I don't want to pass Config
down to showWindow (which would need to return the new Rectangle then)
this is done here.
|
|
This is necessary for setting up the signal callback (trigger) from the
Plugin interface. As another benefit it is now possible to implement the
lowerOnStart config option properly by simply sending a Hide signal in
startLoop.
|
|
These functions are about creation, positioning and property setting of
the xmobar window. An own module does them justice and eases the task of
adding functions for revealing/hiding and toggling the window.
|