Commit Graph

70 Commits

Author SHA1 Message Date
Michael Carlberg
1075144b00 refactor(eventloop): Use concurrent queue for events
Events are now enqueued using a thread safe concurrent queue
which makes the previous eventloop locking redundant.
2016-10-29 06:48:51 +02:00
Michael Carlberg
17921823e0 fix(controller): Change verbosity of shutdown logging 2016-10-28 18:58:55 +02:00
Michael Carlberg
fa7e3d4430 fix(script): Terminate running commands
Make sure the previous command has ended before
executing a new command.

This also fixes the execution block that was
caused by the tailing the command output of
action commands.

Fixes jaagr/lemonbuddy#131
2016-10-28 18:54:08 +02:00
Michael Carlberg
2cc6ef662a fix(config): ${self.key} references the current section 2016-10-28 13:36:53 +02:00
Michael Carlberg
2661e87d83 fix(tray): Synchrounous unmap of empty tray window 2016-10-26 15:17:33 +02:00
Michael Carlberg
a1c018193a fix(tray): Catch errors caused from invalid X windows 2016-10-26 13:42:40 +02:00
Michael Carlberg
4167c8c11c fix(bar): Allow true transparency
Fixes jaagr/lemonbuddy#119
2016-10-26 02:24:10 +02:00
Michael Carlberg
204ab89921 fix(bar): Use premultiplied rgb color for X fonts
Closes jaagr/lemonbuddy#119
2016-10-26 01:50:37 +02:00
Michael Carlberg
fb7a59c6d9 fix(bar): Properly flush xcb connection
Closes jaagr/lemonbuddy#114
2016-10-25 23:58:29 +02:00
Michael Carlberg
91a9bb6d95 refactor(tray): Better support for conflicting managers
Listen for destroy event on the new manager window when
systray selection is lost. If the window gets destroyed
we can re-activate the manager.
2016-10-25 22:59:02 +02:00
Michael Carlberg
2529ec0520 fix(logger): Add pragmas to silence GCC error 2016-10-25 22:47:31 +02:00
Michael Carlberg
eac65cdabb fix(cmake): Make specific c++lib linking optional
- Do not enforce linking against libc++
- Fix various linter warnings
2016-10-25 20:47:53 +02:00
Michael Carlberg
83ae9f6435 fix(xbacklight): Allow larger property values
Not all backlight values are within 8 bit range
so do not truncate property values
2016-10-25 16:40:01 +02:00
Michael Carlberg
9496e9aa22 feat(logger): trace_x() for verbose trace logging 2016-10-25 13:10:34 +02:00
Michael Carlberg
7a1193c698 fix: Increase SIGKILL termination timer 2016-10-25 08:45:21 +02:00
Michael Carlberg
d2187f44e0 refactor(drawtypes): Cleanup and fixes 2016-10-25 07:10:05 +02:00
Michael Carlberg
7905f37462 refactor(di): Move configure_T() to anonymous ns 2016-10-25 01:55:59 +02:00
Michael Carlberg
bcf9249dc7 refactor: Use plain std::function callbacks
Replace fastdelegate with plain std::function's because
of incomplete clang support
2016-10-25 01:51:57 +02:00
Michael Carlberg
56b4657c3f feat: New module xbacklight
Better implementation for showing backlight information.
This one is using the XRandR extension instead of
reading from the raw file handlers.
2016-10-19 14:46:44 +02:00
Michael Carlberg
3c0cc72c55 fix(config): Test type and not value 2016-10-19 10:06:29 +02:00
Michael Carlberg
94ded75756 feat(config): Reference values defined in Xresources
Add config tag to reference a value defined in the Xresource db

`parameter = ${xrdb:var_name}`
2016-10-19 09:16:09 +02:00
Michael Carlberg
d879d6d42e fix: Throttle X input events
- Limit the amount of allowed input events
- Yield on lock failure
- Cleanup
2016-10-19 06:03:01 +02:00
Michael Carlberg
68f72d69cc refactor: Drop tokenized labels
Handle placeholder tokens inside each label
instead of cloning into a new instance each time
2016-10-19 01:31:17 +02:00
Michael Carlberg
7e960a3966 fix(script): Rerun tail script when done
- Improve handling of command life time proc
- Restart tail command on successful completion
- Should fix jaagr/lemonbuddy#105
2016-10-19 01:31:05 +02:00
Michael Carlberg
01c5dcb6b7 fix: Guarded module teardown 2016-10-18 17:55:34 +02:00
Michael Carlberg
f09858a1ed fix(controller): Checked request to update root window event mask 2016-10-18 17:53:10 +02:00
Michael Carlberg
5323167b1e fix(xrandr): Ignore harmless extension errors
Closes jaagr/lemonbuddy#106
2016-10-18 17:31:58 +02:00
Michael Carlberg
65b921ecd9 fix: Less verbose debug logging for %{A} 2016-10-18 12:22:14 +02:00
Michael Carlberg
de0c3eb46a fix(parser): Support default button index for actions
Defining an action without a button index caused a segfault since
the parser was treating it as the close of a previously opened action
block. This makes the parser use button LEFT as a fallback.

Also ensure that an action block has been opened before
attempting to close the block.

Fixes jaagr/lemonbuddy#104
2016-10-17 05:55:03 +02:00
Michael Carlberg
c1acf6c05f fix: Clear the pixmap properly when shifting content
Closes jaagr/lemonbuddy#100
2016-10-16 12:27:30 +02:00
Michael Carlberg
17e16d18a9 fix(i3): Make tray copy the bar' visibility state
This adds a fallback routine where the tray window will
get notified whenever the bar window changes its visibility
state. Required in case of failure to restack the tray container
above the bar window in the window stack.

Fixes jaagr/lemonbuddy#95
2016-10-15 20:10:40 +02:00
Michael Carlberg
0128168c51 fix: Update _NET_WM_* atoms for the bar window 2016-10-15 20:07:05 +02:00
Michael Carlberg
1445b95af8 refactor: Moved global signals to separate namespace 2016-10-15 19:45:17 +02:00
Michael Carlberg
20991a3465 fix(tray): Handle error when trying to restack window 2016-10-15 14:51:37 +02:00
Michael Carlberg
178b656d08 fix(tray): Catch error while processing docking requests 2016-10-15 14:00:33 +02:00
Michael Carlberg
bcd1774370 fix(tray): Put tray above bar in the window stack
Closes jaagr/lemonbuddy#94
2016-10-15 13:59:25 +02:00
Michael Carlberg
dc82d0ed57 refactor(script): Make the module behave as intended
Tail script now block execution until there's data
available on the script's output stream.

Running commands are also being terminated properly.
2016-10-15 13:15:56 +02:00
Michael Carlberg
ce93a63cb8 fix: Terminate if there are no configured modules 2016-10-15 13:10:08 +02:00
Michael Carlberg
98b5bae096 fix: Offset initial module update to avoid throttling 2016-10-15 13:09:22 +02:00
Michael Carlberg
0bac9c3f89 fix(tray): Deactivate the tray before removing the bar 2016-10-15 03:58:53 +02:00
Michael Carlberg
1ab0724347 fix(tray): Join notify thread after setting activate state 2016-10-15 03:33:35 +02:00
Michael Carlberg
6b0109e8dd fix(tray): Make sure stray clients are notified
If the tray is being activated while clients are in
the process of getting dismissed by another MANAGER
they will not receive the new MANAGER broadcast.

Delayed broadcasts are sent to make sure they're notified.
2016-10-15 03:20:19 +02:00
Michael Carlberg
048f09abc3 fix(logger): Use correct fd when testing if it's a tty 2016-10-15 02:40:05 +02:00
Michael Carlberg
fcd30c5320 fix: Revert to old offset behaviour
The offset-x should not affect the width
of the bar window

Closes jaagr/lemonbuddy#79
2016-10-14 10:38:06 +02:00
Michael Carlberg
789345291b fix(date): Use configured locale if defined
Fixes jaagr/lemonbuddy#74
2016-10-12 16:49:53 +02:00
Michael Carlberg
343d1a2ff2 fix(tray): Respond to client XCB_RESIZE_REQUEST 2016-10-12 10:50:14 +02:00
Michael Carlberg
1d7d45c4cd fix(i3): Conditionally load i3_utils 2016-10-12 06:19:26 +02:00
Michael Carlberg
2af0d0845d fix(docs): Updated README and configs
Use dash instead of underscore as parameter name separator
Will break alot of configs but people like to work!
2016-10-12 05:19:31 +02:00
Michael Carlberg
774dec5d17 refactor(i3): Rewrite of the i3 module 2016-10-12 03:57:22 +02:00
Michael Carlberg
eb38fb85ac fix: Make the application work properly using i3wm 2016-10-11 23:42:01 +02:00