Commit graph

2036 commits

Author SHA1 Message Date
Mikkel Oscar Lyderik a96a5e0013 Handle bar commands outside config file
Our initial implementation of `bar {  }` assumed that the commands could
only be used in the config. This is not true for two commands:

* bar mode
* bar hidden_state

This patch makes it possible to issue these commands outside a bar
block, for instance through swaymsg

    $ swaymsg bar mode hide bar-0

This does not implement the `barconfig_update` IPC event which should be
trigged from these commands. I have added TODO's where this should be
added once implemented.
2015-12-21 14:33:27 +01:00
Drew DeVault 9d09f5e391 Merge pull request #387 from mikkeloscar/handle-term-signal
swaybar: Correct handling of SIGTERM.
2015-12-21 06:14:49 -05:00
Mikkel Oscar Lyderik 5c8a3afff9 swaybar: Correct handling of SIGTERM.
Swaybar did not correctly handle the SIGTERM sent from sway when
exiting, ultimately leaving the child status_command behind.
This should correctly handle the SIGTERM signal and terminate the
status_command.

Fix #386
2015-12-21 11:50:56 +01:00
Drew DeVault fc71c6303c Fix default swaybar font 2015-12-21 05:07:19 -05:00
Drew DeVault 5fbecba37a Merge pull request #381 from sce/fix_gaps
Fix gaps
2015-12-20 15:44:42 -05:00
S. Christoffer Eliesen f4b9c3856a layout: Fix edge_gaps off with top/left panels.
Since x/y won't be zero when there's a top or left panel in place, we
need to take those coordinates into account too.
2015-12-20 21:23:20 +01:00
S. Christoffer Eliesen ce54b4ff2e container: Fix inner gaps against screen edge. 2015-12-20 21:23:20 +01:00
Drew DeVault adf5b8fed7 Merge pull request #380 from mikkeloscar/bar-font-support
swaybar: Add font support
2015-12-20 13:30:11 -05:00
Mikkel Oscar Lyderik 83eb8d16aa swaybar: Add font support 2015-12-20 18:32:54 +01:00
Drew DeVault 3082245243 Merge pull request #373 from sce/per_panel_config
Per panel config
2015-12-20 12:05:32 -05:00
Drew DeVault fdb9ce52ef Merge pull request #378 from mikkeloscar/bar-pixel-perfect
swaybar: pixel perfect layout
2015-12-20 12:05:13 -05:00
Drew DeVault dfc23086fd Merge pull request #377 from progandy/optional-pixbuf
make gdk-pixbuf dependency really optional
2015-12-20 11:56:13 -05:00
Mikkel Oscar Lyderik d373a193ac swaybar: pixel perfect layout
This should make the bar workspace button layout identical to the layout
used in i3.
2015-12-20 17:52:33 +01:00
progandy 21014e606b make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
Drew DeVault 66554698a0 Update README screenshot
The new one has the top cut off, I didn't notice.
2015-12-20 09:30:13 -05:00
Drew DeVault b171047d82 Merge pull request #369 from crondog/master
swaybar: use height from config
2015-12-20 09:24:55 -05:00
Drew DeVault 33fb648938 Merge pull request #372 from sce/fix_swaybar_output_name_test
config: load_swaybars: Fix name comparison.
2015-12-20 09:23:34 -05:00
Drew DeVault 702cf053e2 Merge pull request #370 from sce/fix_free_bar
config: free_bar: Check if outputs is NULL.
2015-12-20 09:20:03 -05:00
Drew DeVault 05e48835f7 Make some dependencies optional
Closes #368
2015-12-20 09:14:30 -05:00
S. Christoffer Eliesen e45fd9b6c5 extensions: Track panels by wl_resource, position per panel.
Track each panel separately via its wl_resource. `set_panel_position`
might be called before `set_panel`, so reuse panel config.

Place the position in panel_config so that each panel has its own
position.
2015-12-20 12:54:34 +01:00
S. Christoffer Eliesen 6db0f6f80f extensions: panel_config->resource => wl_surface_res.
Change the name to something less ambigious.
2015-12-20 12:54:34 +01:00
S. Christoffer Eliesen 6ace37d0b1 config: load_swaybars: Fix name comparison. 2015-12-20 12:53:56 +01:00
S. Christoffer Eliesen 2779559b15 config: free_bar: Check if outputs is NULL.
bar_config.outputs is NULL if no output is explicitly defined in config
(ie. use for for all outputs).
2015-12-20 10:14:36 +01:00
crondog da6cd3cef7 swaybar: use height from config 2015-12-20 15:47:32 +11:00
Drew DeVault 3777c8993b Merge pull request #366 from mikkeloscar/fix-swaybar-high-cpu
swaybar: use select instead of busyloop
2015-12-19 10:44:47 -05:00
Mikkel Oscar Lyderik bc9b93f597 swaybar: use select instead of busyloop
Use of busyloop caused high cpu usage for sway because swaybar had to be
redrawn all the time. By using select instead the bar only has to be
redrawn when the status_command changes (i.e. every second) or when the
workspaces are updated.

Fix #345
2015-12-19 16:33:58 +01:00
Drew DeVault 616ea27e19 Merge pull request #364 from cyberhuman/master
Update readme dependency list and build instructions
2015-12-19 09:01:50 -05:00
Raman Varabets bb4339f62e Update readme dependency list 2015-12-19 15:42:16 +08:00
Drew DeVault 155fb7a221 Merge pull request #362 from crondog/master
swaybar: use position from config
2015-12-18 20:24:05 -05:00
crondog c8555f5813 swaybar: use position from config 2015-12-19 12:15:12 +11:00
Drew DeVault 859f2fea0c Just bail if ws_json is fucked up 2015-12-18 19:45:16 -05:00
Drew DeVault de2f3b393a Wow that was stupid 2015-12-18 19:38:36 -05:00
Drew DeVault d1e031025d I'm still getting crashes without this line 2015-12-18 19:35:27 -05:00
Drew DeVault 3282163f64 Implement compositor support for swaylock
This makes swaylock more or less work.
2015-12-18 19:30:19 -05:00
Drew DeVault eefc93db43 Fix lock extension setup in compositor 2015-12-18 19:30:19 -05:00
Drew DeVault 253efad437 Merge pull request #361 from mikkeloscar/i3bar-command
Add support for running swaybar_command
2015-12-18 19:17:56 -05:00
Mikkel Oscar Lyderik 207678e809 Add support for running swaybar_command 2015-12-19 01:03:39 +01:00
Drew DeVault 7647762bab Fix default workspace name generation
This fixes the issue where workspace 10 ends up being the default.
2015-12-18 18:52:51 -05:00
Drew DeVault 2ab4e5676e Merge pull request #360 from sce/fix_arrange_windows
Fix arrange windows
2015-12-18 18:39:02 -05:00
Drew DeVault f62502e78d Drop sway-xorg.desktop 2015-12-18 18:21:55 -05:00
Drew DeVault b9f14cee41 Merge pull request #359 from mikkeloscar/i3bar-command
Add bar option: swaybar_command <command>
2015-12-18 18:19:59 -05:00
Mikkel Oscar Lyderik 9d7f1afdfb Add bar option: swaybar_command <command> 2015-12-19 00:13:51 +01:00
Drew DeVault 6555aad7f9 Merge pull request #358 from mikkeloscar/reload-swaybg-swaybar
Reload swaybar/swaybg on config reload.
2015-12-18 18:13:40 -05:00
S. Christoffer Eliesen f0b3ee6d84 layout: arrange_windows: Partially fix swaybar irregularties. 2015-12-18 23:53:42 +01:00
S. Christoffer Eliesen 0ad5059b6f layout: arrange_windows: Fix/better debug output. 2015-12-18 23:53:42 +01:00
Mikkel Oscar Lyderik 90ff36cab8 Terminate children when freeing output container 2015-12-18 18:27:54 +01:00
Mikkel Oscar Lyderik ede27eabc5 Reload swaybar/swaybg on config reload.
This works by tracking the pids of the child processes in the related
output container and terminating the processes and spawning new ones on
a config reload.

Should solve: #347
2015-12-18 18:27:44 +01:00
Drew DeVault 73c8a48417 Merge pull request #357 from sce/fix_swaybar_crashes
swaybar: ipc_update_ws: Fix memory corruption.
2015-12-18 09:42:54 -05:00
S. Christoffer Eliesen de219f6bec swaybar: ipc_update_ws: Fix memory corruption.
json_object_object_get_ex does not require json_object_put according to
docs, this should fix the random crashes.
2015-12-18 15:30:46 +01:00
Drew DeVault a116eafaa4 Fix possible segfault in swaybar 2015-12-18 09:03:45 -05:00