Ryan Dwyer
0375f966f1
Fix surface offset when using borders
2018-05-01 07:46:57 -04:00
Ryan Dwyer
fa5de2876e
Move docblock and fix indenting of switch/case.
2018-05-01 07:46:57 -04:00
Ryan Dwyer
630ba30e3c
Implement borders
...
Implements rendering of borders. Title text is still to do.
Implements the following configuration directives:
* client.focused
* client.focused_inactive
* client.unfocused
* client.urgent
* border
* default_border
2018-05-01 07:46:57 -04:00
Ryan Dwyer
91f97fc21a
Fix segfault in view_unmap()
...
If the last remaining view on a workspace is unmapped and the workspace
is not visible, parent will be a C_OUTPUT. Call the arrange_output()
function in this case.
2018-05-01 17:18:20 +10:00
Ryan Dwyer
312fdf313f
Remove arrange_windows()
...
After the refactor, this function is no longer called.
2018-04-30 08:47:38 +10:00
Ryan Dwyer
167c2e1aa9
Refactor arrange_windows()
...
Replaces arrange_windows() with arrange_root(), arrange_output(),
arrange_workspace() and arrange_children_of().
Also makes fullscreen views save and restore their dimensions, which
allows it to preserve any custom resize and is also a requirement for
floating views once they are implemented.
2018-04-28 11:26:14 +10:00
Ryan Dwyer
ae39d7b28c
Remove sway_container.workspace_layout
...
Fixes #1716 .
2018-04-26 10:14:18 +10:00
Ryan Dwyer
dfc26c664f
Update wording about unmanaged/unmapped views
2018-04-24 20:14:22 +10:00
Ryan Dwyer
30a7488936
Add assert to view_execute_criteria()
2018-04-24 20:08:32 +10:00
Ryan Dwyer
72767e1cc3
Implement criteria commands
...
Implements the following commands:
* for_window [...] <cmdlist>
* assign [...] <workspace>
2018-04-24 20:08:32 +10:00
Ryan Dwyer
22b9169631
Fix crash in container_descendants()
...
If root is a C_VIEW, the children property is a null pointer.
2018-04-24 12:27:04 +10:00
emersion
a41057714f
Update for wlroots#885
2018-04-21 19:12:49 +01:00
Ryan Dwyer
34429a3605
Keep view fullscreened when moving to another workspace.
...
container_handle_fullscreen_reparent() must be called *after* setting
the container's new parent.
2018-04-20 21:26:14 +10:00
Ryan Dwyer
45a2fad0de
container_get_in_direction(): Don't split this function
2018-04-19 12:53:02 +10:00
Ryan Dwyer
7e38cc2e05
arrange_windows(): Calculate workspace properties when fullscreen
2018-04-19 12:50:53 +10:00
Ryan Dwyer
35ccdd67a8
More fullscreen fixes.
...
* Render fullscreen views without wlr function, which makes popups and
lockscreen work.
* Don't allow input events to surfaces behind fullscreen views.
* Use correct output dimensions (for rotated outputs).
2018-04-18 08:35:28 +10:00
Ryan Dwyer
72beae209b
Fullscreen fixes.
2018-04-18 00:10:32 +10:00
Ryan Dwyer
cc4da245a8
Fix views unmapping their own fullscreen windows.
2018-04-17 11:06:03 +10:00
Ryan Dwyer
c685ef081f
Create sway_workspace struct.
2018-04-17 09:31:34 +10:00
Ryan Dwyer
bfd5834f4c
Feedback for fullscreen.
2018-04-17 08:11:50 +10:00
Ryan Dwyer
52420cc24d
Implement fullscreen.
2018-04-16 20:36:40 +10:00
Dominique Martinet
8490d1662c
Fix gcc maybe-uninitialized warning
2018-04-13 22:47:27 +09:00
Dominique Martinet
de65d05821
container_destroy: fix segfault
...
cont->children doesn't have to be NULL when there is no children
2018-04-13 14:58:23 +09:00
Tony Crisci
9db859585e
container_create_notify on split
2018-04-07 18:01:18 -04:00
Tony Crisci
c0f9ee7bd1
seat get focus inactive view
2018-04-07 16:06:36 -04:00
emersion
61abd56ca4
Fix output containers position
2018-04-07 12:44:02 -04:00
Drew DeVault
c47b4d4edb
Merge pull request #1756 from emersion/output-damage
...
Fine-grained damage tracking
2018-04-07 11:53:10 -04:00
Drew DeVault
f5a9bd5cb7
Merge pull request #1700 from swaywm/move-cmd-full
...
Implement move [left|right|up|down]
2018-04-07 11:19:25 -04:00
emersion
93ca8919f6
Don't rejigger if parent has two children
2018-04-06 18:10:02 -04:00
emersion
37b173f326
When moving between outputs, use output center as reference
2018-04-06 17:50:12 -04:00
Drew DeVault
640232eb22
Revert "Break everything^W^WUse wlr_box for sway_container"
2018-04-06 16:13:26 -04:00
Drew DeVault
df0d57b916
Fix issue with incorrectly rejiggered workspaces
2018-04-06 15:54:03 -04:00
Drew DeVault
764489e737
Break everything^W^WUse wlr_box for sway_container
2018-04-06 15:38:37 -04:00
Drew DeVault
9109b1fd11
Fix moving to parallel container on another output
2018-04-06 15:37:55 -04:00
Drew DeVault
5ff16994c5
Address @emersion feedback
2018-04-06 15:09:52 -04:00
Drew DeVault
c8be7bfc1e
Fix another of @orestisf1993's issues
2018-04-06 13:57:04 -04:00
Drew DeVault
1f70b94f34
Fix moving into right end of container
2018-04-06 13:17:22 -04:00
Drew DeVault
cd6e3182fa
Fix issues @orestisf1993 raised
2018-04-06 12:46:33 -04:00
Drew DeVault
b5baa78dc3
Address @emersion's comments
2018-04-06 11:53:10 -04:00
Drew DeVault
603e0e42c5
Add debug tree view
2018-04-06 11:49:27 -04:00
emersion
516f5454ad
Simplify damage tracking functions, use them in layer shell
2018-04-06 11:45:40 -04:00
emersion
290c916290
Send surface enter/leave events to view children
2018-04-06 10:26:32 -04:00
Drew DeVault
a06052ad9d
Fix splitting workspaces
2018-04-06 09:43:52 -04:00
Drew DeVault
efac07db5f
Fix workspaces not updated on swaybar
2018-04-06 09:43:52 -04:00
Drew DeVault
57954a2b24
Implement move [left|right|up|down]
...
The exact semantics of this command are complicated. I'll describe each
test scenario as s-expressions. Everything assumes L_HORIZ if not
specified, but if you rotate everything 90 degrees the same test cases
hold.
```
(container (view a) (view b focus) (view c))
-> move left
(container (view b focus) (view a) (view c))
(container (view a) (view b focus) (view c))
-> move right
(container (view a) (view c) (view b focus))
(container L_VERT (view a))
(container L_HORIZ
(view b) (view c focus))
-> move up
(container L_VERT
(view a) (view c focus))
(container L_HORIZ (view b))
(workspace
(view a) (view b focus) (view c))
-> move up
(workspace [split direction flipped]
(view b focus)
(container (view a) (view c)))
(workspace
(view a) (view b focus) (view c))
-> move down
(workspace [split direction flipped]
(container (view a) (view c))
(view b focus)))
Note: outputs use wlr_output_layout instead of assuming that i+/-1 is
the next output in the move direction.
(root
(output X11-1
(workspace 1))
(output X11-2
(workspace 1 (view a focus) (view b)))))
-> move left
(root
(output X11-1
(workspace 1 (view a focus)))
(output X11-2
(workspace 1 (view b)))))
(root
(output X11-1
(workspace 1
(container (view a) (view b)))
(output X11-2
(workspace 1 (view c focus)))))
-> move left
(root
(output X11-1
(workspace 1
(container (view a) (view b))
(view c focus)))
(output X11-2
(workspace 1)))
```
2018-04-06 09:43:52 -04:00
Drew DeVault
d77a0119f4
Avoid arranging windows while reloading config
2018-04-06 09:43:44 -04:00
Drew DeVault
b08f7e5183
Fix deletion of still-visible workspaces on unfocus
2018-04-06 09:26:49 -04:00
emersion
88e3e5ea5d
Fix wl_output enter/leave events
...
Fixes #1739
2018-04-06 00:10:17 -04:00
Drew DeVault
f63d9417cd
Merge pull request #1743 from emersion/subsurface-damage-tracking
...
Damage tracking for view children
2018-04-05 22:53:21 -04:00
emersion
d65d001aa5
Fix desktop_damage_whole_surface
2018-04-05 18:38:50 -04:00
emersion
6b9b03f09f
Remove outdated TODO
2018-04-05 18:33:18 -04:00
emersion
076bedb85e
Add container_damage_whole
2018-04-05 18:31:19 -04:00
emersion
f5e5b1819b
Track damage of xdg-shell-v6 popups
2018-04-05 16:48:11 -04:00
Drew DeVault
f242362e7e
Handle output removal on swaybar
2018-04-05 16:04:30 -04:00
emersion
45f93e1650
Accumulate damage from subsurfaces
2018-04-05 15:20:45 -04:00
emersion
dcd15a2d3d
Implement shell views
2018-04-05 11:40:39 -04:00
Drew DeVault
9e89daf213
Merge pull request #1734 from swaywm/resize-cmd
...
Implement resize command
2018-04-05 00:17:47 -04:00
Drew DeVault
f77986338f
Implement resize command
2018-04-05 00:03:20 -04:00
Tony Crisci
65f254f3fb
Merge branch 'wlroots' into fix-focus-inactive
2018-04-04 22:36:09 -04:00
Tony Crisci
deda37469a
fix focus child
2018-04-04 22:31:10 -04:00
emersion
44b8d30f52
Use new wlr_*_surface_at functions
2018-04-04 22:03:14 -04:00
emersion
8eff00f723
Remove unused SWAY_VIEW_TYPES
2018-04-04 22:03:14 -04:00
Tony Crisci
fc9398a42e
Implement opacity command
2018-04-04 21:57:05 -04:00
Tony Crisci
cfd806577b
fix sending window new event
2018-04-04 19:37:01 -04:00
Tony Crisci
3e61718053
try to fix focus-inactive
2018-04-04 18:52:38 -04:00
Tony Crisci
76b0f3531f
send window close event
2018-04-04 14:19:38 -04:00
Tony Crisci
62c79ef451
fix double free
2018-04-04 00:22:40 -04:00
Tony Crisci
741e3959e3
Merge branch 'wlroots' into split-containers2
2018-04-04 00:20:44 -04:00
Tony Crisci
9d1cbd77ac
simplify container close
2018-04-03 23:59:44 -04:00
emersion
f3ef1da750
Fix wrong output container coordinates
2018-04-03 21:06:13 -04:00
Tony Crisci
fa004dd0d7
move output create to its own file
2018-04-03 20:00:09 -04:00
Tony Crisci
a001890fb8
move workspace create to workspace.c
2018-04-03 19:52:17 -04:00
Tony Crisci
97b171649d
move output damage to workspace destructor
2018-04-03 19:36:57 -04:00
emersion
c0554d23d3
Fix rendering with multiple outputs
2018-04-03 19:34:56 -04:00
Tony Crisci
035a88e0dc
rename container_finish to _container_destroy
2018-04-03 19:32:09 -04:00
Tony Crisci
481a8275c1
address feedback
2018-04-03 19:23:59 -04:00
Drew DeVault
1a5785b0c3
Merge pull request #1712 from RedSoxFan/workspace-number-names
...
Fix name generation from workspace number commands
2018-04-03 15:58:12 -04:00
Brian Ashworth
1e549230db
Fix name generation for workspace number <name>
2018-04-03 15:18:57 -04:00
Tony Crisci
a514fee1b9
rename workspace_get_initial_output
2018-04-03 13:24:48 -04:00
Tony Crisci
9b567fc37e
clean up container_get_default_layout
2018-04-03 13:23:34 -04:00
Tony Crisci
065887bb7b
move container_set_layout to layout.h
2018-04-03 13:16:23 -04:00
Tony Crisci
fcbcbf34ad
make container_finish private
2018-04-03 13:10:51 -04:00
Tony Crisci
5f4761c4f4
unify workspace create functions
2018-04-03 13:08:45 -04:00
Tony Crisci
cba258e16a
move output code out of the tree
2018-04-03 12:40:11 -04:00
Tony Crisci
09d448ea2d
unify container destroy functions
2018-04-03 12:34:01 -04:00
Tony Crisci
b4c5f79725
move view and workspace destructors to container.c
2018-04-03 12:25:19 -04:00
Tony Crisci
7afbe9284f
rename _container_destroy to container_finish
2018-04-03 11:27:27 -04:00
Tony Crisci
33006c4e64
dont deallocate in container_close
2018-04-02 23:15:19 -04:00
Tony Crisci
20f9d49b82
cleanup
2018-04-02 22:42:44 -04:00
Tony Crisci
2992b72d61
change reap container approach
2018-04-02 22:37:21 -04:00
Tony Crisci
2c165e1288
fix more close segfaults
2018-04-02 21:01:33 -04:00
Tony Crisci
a89096278b
Merge branch 'wlroots' into split-containers
2018-04-02 19:22:10 -04:00
Tony Crisci
d434da5632
Merge branch 'wlroots' into split-containers
2018-04-02 16:09:27 -04:00
Tony Crisci
d070244362
fix workspace splits
2018-04-02 15:40:40 -04:00
emersion
a4a241697a
Merge branch 'wlroots' into view-redesign
2018-04-02 15:30:58 -04:00
emersion
0c0cc79282
Merge pull request #1699 from acrisci/seat-fixes
...
Seat fixes and cleanup
2018-04-02 15:24:25 -04:00
emersion
2f64ce86c4
Xwayland unmanaged views aren't views anymore
2018-04-02 14:35:43 -04:00
Drew DeVault
4134407fa9
Merge pull request #1690 from swaywm/i3bar-json
...
I3bar json
2018-04-02 14:23:01 -04:00
Tony Crisci
357a4401fa
address feedback
2018-04-02 14:15:40 -04:00
Tony Crisci
2187684bd0
Merge branch 'wlroots' into split-containers
2018-04-02 14:06:04 -04:00