Commit graph

4574 commits

Author SHA1 Message Date
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
Drew DeVault 7558a274fa Add shims for swaylock on compositor 2015-12-18 08:49:04 -05:00
Drew DeVault 7f7be26cfe Merge pull request #356 from sce/output_vs_workspace_size
layout: Keep output at the correct size, workspace can be smaller.
2015-12-18 08:40:52 -05:00
S. Christoffer Eliesen ed730db11b layout: Keep output at the correct size, workspace can be smaller.
If the output is not at the correct size then that info must be queried
from wlc. The output size is used by e.g. seamless mouse to detect
output edges.

With this patch the output size is now correct and the workspace size is
adjusted according to any panels.

Without this patch seamless mouse would fail to detect outputs
above/below each other if there was a panel in between because the
output would offically end where the panel started, not at the actual
screen edge.
2015-12-18 14:03:11 +01:00
Drew DeVault 8033eb4d6a Merge pull request #355 from sce/fix_moving_last_ws
focus: Fix moving last workspace.
2015-12-18 07:59:49 -05:00
Drew DeVault 62649a56c5 Merge pull request #354 from sce/fix_swaybar_for_fedora
swaybar: Remove stropts.h, fixes build for fedora.
2015-12-18 07:59:23 -05:00
S. Christoffer Eliesen 18a7afa1b3 focus: Fix moving last workspace.
If there's only one workspace on an output and it's moved to a different
output then active workspace will be NULL.
2015-12-18 13:23:49 +01:00
S. Christoffer Eliesen 8a6e05d7a1 swaybar: Remove stropts.h, fixes build for fedora.
Turns out that fedora killed off stropts.h some time ago [1] and
removing it seems to work just fine. (Tested on Fedora 23)

[1] https://bugzilla.redhat.com/show_bug.cgi?id=439403
2015-12-18 13:18:35 +01:00
Drew DeVault 5f9909c9dd Merge pull request #353 from mikkeloscar/swaybar-close-statuscmd
swaybar: terminate status_command process
2015-12-17 21:30:58 -05:00
Mikkel Oscar Lyderik 529ee83ef6 swaybar: terminate status_command process
Fix #346

Send SIGTERM to the `status_command` process before swaybar exits.
2015-12-18 03:15:49 +01:00
Drew DeVault f994f00d00 Merge pull request #352 from progandy/workspace-numbers
Workspace numbers
2015-12-17 19:48:55 -05:00
progandy 76c520a04b sway: insert numbered workspaces in order
fixes #308

Ordered by number ascending, with insert before same numbers.
Workspaces without numbers are appended at the end of the list.

Example order:
1 2:named 3:the_second 3:the_first 9 FIRST_NAME SECOND_NAME ...
2015-12-18 01:22:07 +01:00
progandy 8f1ac1ef2c sway: enable workspace selection by number 2015-12-18 01:21:31 +01:00