Commit Graph

5729 Commits

Author SHA1 Message Date
emersion
700941dde8 Listen to server-decoration mode changes 2018-08-06 15:20:30 +01:00
Ryan Dwyer
f57a3919cf Move workspace moving code out of container_move_to
container_move_to handled moving containers to new parents, as well as
moving workspaces to new outputs.

This commit removes the workspace-moving code from this function and
introduces workspace_move_to_output. Moving workspaces using
container_move_to only happened from the move command, so it's been
implemented as a static function in that file.

Simplifying container_move_to makes it easier for me to fix some issues
in #2420.
2018-08-07 00:03:01 +10:00
Ian Fan
f7c21451df commands: fix workspace edge cases 2018-08-06 14:17:58 +01:00
Ian Fan
667b8dcb67 commands: check for special workspaces in workspace & move commands 2018-08-06 14:17:58 +01:00
Ian Fan
3b1f58e135 commands: document <criteria> focus 2018-08-06 14:17:58 +01:00
Ian Fan
dd48c8a579 commands: add optional flags to move 2018-08-06 14:17:58 +01:00
Ian Fan
85ae121caa commands: complete workspace implementation
Allow optional --no-auto-back-and-forth flag, as well as refactoring some logic
2018-08-06 14:17:58 +01:00
Ian Fan
356063b6c0 commands: fix layout implementation (also better name for previous split layout) 2018-08-06 14:17:58 +01:00
Ian Fan
3a980857cb commands: better type for con_id string length 2018-08-06 14:17:58 +01:00
Ian Fan
69e1a421fc commands: complete move implementation 2018-08-06 14:17:58 +01:00
Ian Fan
be64c46624 commands: complete layout implementation 2018-08-06 14:17:58 +01:00
Ian Fan
11ac66d6fe commands: allow __focused__ for con_id criterion 2018-08-06 14:17:58 +01:00
Ian Fan
710f27d0d2 commands: allow "first", "last", "newest" and "recent" as values for urgent criteria 2018-08-06 14:17:45 +01:00
Mariusz Bialonczyk
776b9b7e1f Fix segv when sway is terminating
I've got the following SIGSEGV when terminating sway:
```
Program terminated with signal SIGSEGV, Segmentation fault.
0x00005607dc603af5 in view_unmap (view=0x5607dcb3d350) at ../sway/tree/view.c:599
599		if (surviving_ancestor->type >= C_WORKSPACE) {
```
surviving_ancestor was NULL at that time

This commit is trying to fix this problem.
2018-08-05 17:04:20 +02:00
emersion
0cd418ba42
Merge pull request #2422 from ggreer/compiler-errors
Fix compiler errors.
2018-08-05 10:35:50 +01:00
Geoff Greer
208831aec6 Fix compiler errors.
- Some platforms don't expose kill() unless _POSIX_C_SOURCE is defined.
- fork(), execl(), and setsid() need unistd.h on some platforms.

Basically, this fixes some platform-specific build errors.
2018-08-05 00:24:44 -07:00
emersion
0016f77440
Merge pull request #2418 from RyanDwyer/separate-root
Separate root-related code
2018-08-04 20:41:45 +01:00
Ryan Dwyer
30e7e0f7c7 Move workspace pid code to root.c 2018-08-04 14:01:49 +10:00
Ryan Dwyer
04489ff420 Separate root-related code
This creates a root.c and moves bits and pieces from elsewhere into it.

* layout_init has been renamed to root_create and moved into root.c
* root_destroy has been created and is called on shutdown
* scratchpad code has been moved into root.c, because hidden scratchpad
containers are stored in the root struct
2018-08-04 14:01:20 +10:00
Ryan Dwyer
5de2223c6d
Merge pull request #2419 from RedSoxFan/fix-2416
Check correct ws for sticky and fix floating iter
2018-08-04 10:26:55 +10:00
Ryan Dwyer
e24fc3df18
Merge branch 'master' into fix-2416 2018-08-04 10:15:29 +10:00
Drew DeVault
38675eba7b
Merge pull request #2400 from RedSoxFan/swaynag-config-errors
Show swaynag on config errors
2018-08-03 15:08:38 -04:00
Brian Ashworth
ad2a7c2618 Check correct ws for sticky and fix floating iter 2018-08-03 11:36:18 -04:00
Brian Ashworth
36fd84cc42 Remove swaynag_clone and use memcpy 2018-08-03 10:40:09 -04:00
Brian Ashworth
a7f7d4a488 Write to swaynag pipe fd directly on config errors 2018-08-03 10:37:35 -04:00
Brian Ashworth
f9a6407111 Show swaynag on config errors 2018-08-03 10:37:35 -04:00
Ryan Dwyer
3e2bf7f3a5
Merge pull request #2417 from marienz/swaynag-includes
Add missing stdlib.h includes to swaynag
2018-08-03 19:58:42 +10:00
Marien Zwart
4df8858873 Add missing stdlib.h includes to swaynag 2018-08-03 19:24:44 +10:00
emersion
b49904dd7e
Merge pull request #2414 from RyanDwyer/fix-inactive-fullscreen-crash
Fix crash when fullscreen view closes on inactive workspace
2018-08-03 09:56:46 +01:00
emersion
16c1e21f26
Merge pull request #2415 from RyanDwyer/fix-fullscreen-container-crash
Fix crash when moving cursor over a fullscreen split container
2018-08-03 09:47:54 +01:00
emersion
942f92f3eb
Merge pull request #2413 from RyanDwyer/dont-move-empty-workspace
Deny "move container" when an empty workspace is focused
2018-08-03 09:45:24 +01:00
Ryan Dwyer
c17f0870ef Fix crash when moving cursor over a fullscreen split container
Calling container_at_view fails an assertion if the container isn't a
view. Calling tiling_container_at works correctly, as that function
checks if the container is a view and calls container_at_view if so.
2018-08-03 18:08:20 +10:00
Ryan Dwyer
854c5fbec8 Fix crash when fullscreen view closes on inactive workspace
When a view unmaps, normally the surviving ancestor (ie. after reaping)
needs to be arranged. When a fullscreen view unmaps, it arranges the
workspace rather than the surviving ancestor, but didn't handle cases
where the workspace itself was reaped. This happens if the workspace is
not currently shown and the fullscreen view was the last container on
that workspace.

This commit rewrites this part of view_unmap so it's more readable, and
fixes the crash by not arranging the workspace if it's been reaped. Note
that it no longer arranges the output under any circumstance - this
wasn't required anyway.
2018-08-03 17:55:58 +10:00
Ryan Dwyer
9e8d628a17 Deny "move container" when an empty workspace is focused 2018-08-03 17:13:37 +10:00
Brian Ashworth
5ac3509d54
Merge pull request #2408 from ianyfan/exit-nag
Change exit binding in default config to nag user, matching i3
2018-08-02 22:35:26 -04:00
Brian Ashworth
b16043aeeb
Merge branch 'master' into exit-nag 2018-08-02 22:18:14 -04:00
emersion
4eadf9f3ae
Merge pull request #2325 from emersion/wlr-gamma-control
Enable wlr-gamma-control-unstable-v1
2018-08-02 23:59:20 +01:00
emersion
3a54e2291c
Merge branch 'master' into wlr-gamma-control 2018-08-02 23:49:25 +01:00
Ryan Dwyer
e07da5fc5c
Merge pull request #2411 from emersion/fullscreen-pointer-input
Fix pointer events for fullscreen views
2018-08-03 08:18:09 +10:00
emersion
b336564511 Fix pointer events for fullscreen views 2018-08-02 22:48:43 +01:00
Drew DeVault
2ecba101fd
Merge pull request #2410 from minus7/fix-fullscreen
Fix crash on mouse motion on fullscreen container
2018-08-02 17:33:38 -04:00
minus
e72f86784c Fix crash on mouse motion on fullscreen container
container_at expects a workspace, not the fullscreened container.
Fixes #2409
2018-08-02 23:19:01 +02:00
Ian Fan
94888e58a2 config.in: nag user on exit 2018-08-02 15:42:43 +01:00
Drew DeVault
3eda76de48
Merge pull request #2407 from RyanDwyer/fix-popups-v3
Fix popups v3
2018-08-02 09:46:53 -04:00
Ryan Dwyer
787f08da7f Convert toplevel coordinates to output-local 2018-08-02 23:36:36 +10:00
Ryan Dwyer
8392eae40f Revert "Revert "Fix popups""
This reverts commit 9aa258d33a.

Reverting the revert, so that popups can be fixed.
2018-08-02 23:36:36 +10:00
Drew DeVault
ea14ef4095
Merge pull request #2366 from RedSoxFan/nagbar
Implement swaynag
2018-08-02 09:28:13 -04:00
Ryan Dwyer
706c0fbe23
Merge branch 'master' into nagbar 2018-08-02 23:05:49 +10:00
Drew DeVault
9aa258d33a Revert "Fix popups"
This reverts commit de86d65627.
2018-08-02 09:05:46 -04:00
Drew DeVault
8e60f6a732
Merge pull request #2404 from RyanDwyer/move-containers-when-workspace-focused
Allow moving containers when workspace itself is focused
2018-08-02 08:11:23 -04:00