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
emersion
ff61df17ff
Add map_from_region command
2018-04-26 10:53:47 +01: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
d956286b92
Implement rename workspace command
...
This implements the following commands:
* rename workspace to new_name
* rename workspace old_name to new_name
* rename workspace number n to new_name
2018-04-23 18:54:45 +10:00
emersion
4cf77e1de4
Default to current time when triggering cursor events
2018-04-21 14:07:22 +01:00
Drew DeVault
21eb63cc9e
Merge branch 'master' into fullscreen
2018-04-19 08:56:03 -04:00
Ryan Dwyer
5b30391383
Make key repeat configurable
...
This creates two input commands for configuring the repeat delay and rate.
Example config:
input "myidentifier" {
repeat_delay 250
repeat_rate 25
}
2018-04-18 23:19:23 +10:00
Ryan Dwyer
72beae209b
Fullscreen fixes.
2018-04-18 00:10:32 +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
Danny Bautista
c355d680e9
Clean up cursor simulation code.
2018-04-10 15:40:27 -04:00
Danny Bautista
1edb2bd892
Implement cursor event simulation with sway commands.
2018-04-10 12:40:50 -04:00
Drew DeVault
07b6be6214
Merge pull request #1769 from acrisci/focus-inactive-fixes
...
Focus inactive fixes
2018-04-08 16:05:03 -04:00
Tony Crisci
e7771c507a
80char
2018-04-08 15:32:19 -04:00
Drew DeVault
0e3ddf255e
Add input "identifier" map_to_output "identifier"
2018-04-08 15:09:12 -04:00
Tony Crisci
ae78f6fb93
Merge branch 'wlroots' into focus-inactive-fixes
2018-04-08 12:47:56 -04:00
Drew DeVault
9c5a88a7bd
Fix cursor motion issues
...
Use only one canonical cursor x/y position and send cursor enter when
mouse is warped.
Tangentally related to #1714
2018-04-08 12:42:56 -04:00
Drew DeVault
9114d3b84c
Implement tablet tool support
2018-04-08 10:48:13 -04:00
Tony Crisci
de811823b6
seat focus inactive children foreach
2018-04-07 16:14:12 -04:00
Tony Crisci
c0f9ee7bd1
seat get focus inactive view
2018-04-07 16:06:36 -04:00
emersion
2b357af7ee
Give keyboard focus to unmanaged xwayland surfaces
...
This fixes dmenu
2018-04-07 14:03:30 -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
Drew DeVault
640232eb22
Revert "Break everything^W^WUse wlr_box for sway_container"
2018-04-06 16:13:26 -04:00
Drew DeVault
764489e737
Break everything^W^WUse wlr_box for sway_container
2018-04-06 15:38:37 -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
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
emersion
88e3e5ea5d
Fix wl_output enter/leave events
...
Fixes #1739
2018-04-06 00:10:17 -04:00
emersion
c2b1beef15
Remove L_TYPES
2018-04-05 23:22:08 -04:00
emersion
641807d920
Handle unmanaged surfaces motion
2018-04-05 18:48:35 -04:00
emersion
d65d001aa5
Fix desktop_damage_whole_surface
2018-04-05 18:38:50 -04:00
emersion
076bedb85e
Add container_damage_whole
2018-04-05 18:31:19 -04:00
emersion
1c91d0c10f
Add damage tracking for xwayland unmanaged surfaces
2018-04-05 17:39:17 -04:00
emersion
07f3bb3ad1
Handle xwayland configure requests for unmanaged surfaces
2018-04-05 17:22:39 -04:00
emersion
7ce1038478
Fix xwayland unmanaged surfaces
2018-04-05 17:08:30 -04:00
emersion
f5e5b1819b
Track damage of xdg-shell-v6 popups
2018-04-05 16:48:11 -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
f77986338f
Implement resize command
2018-04-05 00:03:20 -04:00
emersion
8eff00f723
Remove unused SWAY_VIEW_TYPES
2018-04-04 22:03:14 -04:00
emersion
679c51e421
Remove unused sway_view.unmanaged_link
2018-04-04 22:02:40 -04:00
Tony Crisci
fc9398a42e
Implement opacity command
2018-04-04 21:57:05 -04:00
Drew DeVault
d2d050d59c
Address review feedback
2018-04-04 18:47:48 -04:00
Drew DeVault
b7e7794912
Implement input-inhibit in sway, swaylock
2018-04-04 18:47:48 -04:00
Drew DeVault
06fbd51ff5
Add input inhibitor to input manager
2018-04-04 18:47:48 -04:00
Tony Crisci
741e3959e3
Merge branch 'wlroots' into split-containers2
2018-04-04 00:20:44 -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
eca4468c2c
fix old todos
2018-04-03 17:06:57 -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
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
2992b72d61
change reap container approach
2018-04-02 22:37:21 -04:00
Drew DeVault
56078edd65
Give exclusive focus to layers above shell layer
2018-04-02 21:09:09 -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
emersion
a4a241697a
Merge branch 'wlroots' into view-redesign
2018-04-02 15:30:58 -04:00
emersion
2f64ce86c4
Xwayland unmanaged views aren't views anymore
2018-04-02 14:35:43 -04:00
Tony Crisci
2187684bd0
Merge branch 'wlroots' into split-containers
2018-04-02 14:06:04 -04:00
Tony Crisci
5e024278a6
Merge branch 'wlroots' into seat-fixes
2018-04-02 13:23:43 -04:00
Tony Crisci
22287b42bf
dont copy input config
2018-04-02 13:19:58 -04:00
Tony Crisci
35445b40a2
remove unused attachment config
2018-04-02 12:16:00 -04:00
Drew DeVault
b2d871cfe2
Partially implement move command
...
Works:
- move [container|window] to workspace <name>
- Note, this should be able to move C_CONTAINER but this is untested
- move [workspace] to output [left|right|up|down|<name>]
Not implemented yet:
- move [left|right|up|down]
- move scratchpad
- move position
2018-04-02 11:12:18 -04:00
emersion
61fabede14
Address review comments
2018-04-02 10:57:45 -04:00
Tony Crisci
53bb7ea996
dont copy seat config on the seat
2018-04-02 10:37:31 -04:00
Tony Crisci
0828c77251
rename input-manager functions
2018-04-02 08:49:38 -04:00
Tony Crisci
e677c5b204
rename seat functions
2018-04-02 08:45:37 -04:00
Tony Crisci
81556f4b2a
add docstrings and todos
2018-03-31 20:52:34 -04:00
emersion
1d68f9ecca
Add sway_view_impl
2018-03-31 18:07:44 -04:00
emersion
b2c2ee693b
Introduce common functions to create, map, unmap, destroy views
2018-03-31 17:49:40 -04:00
Tony Crisci
6f7b33e691
handle container destroy in the seat
2018-03-31 15:38:59 -04:00
Tony Crisci
7706d83160
basic split containers
2018-03-31 15:37:16 -04:00
Drew DeVault
f2332dc75c
Address review feedback
2018-03-31 15:20:43 -04:00
Drew DeVault
9b38ef950f
Implement focus_follows_mouse
...
Also contains two other small changes:
- Clicking any button will focus the container clicked (not just left)
- Remove seamless_mouse (doesn't make sense on wlroots)
2018-03-31 13:05:45 -04:00
emersion
b237fa0b22
Set xwayland cursor
2018-03-31 00:24:38 -04:00
emersion
9665642765
Merge branch 'wlroots' into client-cursors
2018-03-30 19:04:06 -04:00
emersion
139f80b0f0
Handle map/unmap events in xdg-shell-v6
2018-03-30 17:43:43 -04:00
emersion
a776ecbb86
Add lite damage tracking
...
This skips the renderer if nothing has changed, and renders
everything otherwise.
2018-03-30 17:16:35 -04:00
Tony Crisci
7e0d430a0c
Merge branch 'wlroots' into wlroots-xwayland-map
2018-03-30 16:16:12 -04:00
Drew DeVault
49379dd0fc
Fix workspace deletion edge cases
2018-03-30 13:49:34 -04:00
emersion
cf09ea184b
Use the new map/unmap events for xwayland views
2018-03-30 13:34:25 -04:00
emersion
1592543fd6
Merge pull request #1659 from swaywm/default-orientation
...
Add default_orientation command
2018-03-30 11:49:45 -04:00
Drew DeVault
b6b674fd76
Merge pull request #1657 from emersion/render-fixes
...
Misc minor fixes
2018-03-30 11:42:59 -04:00
emersion
6c9d67b105
Handle set_cursor requests from clients
...
Allow clients to set a custom cursor if they have the seat's
pointer focus.
2018-03-30 10:53:18 -04:00
Drew DeVault
01af343912
Destroy empty workspaces when moving away
2018-03-30 10:47:19 -04:00
Drew DeVault
69eb021767
Add default_orientation command
2018-03-30 10:43:55 -04:00
emersion
981827ca42
Cleanup and remove global renderer reference
2018-03-30 00:49:27 -04:00
Drew DeVault
f26ecd9f58
Merge remote-tracking branch 'origin/wlroots' into swaybar-layers
2018-03-30 00:04:04 -04:00
Tony Crisci
8f490d7d2d
Fix oversights from previous pull request
2018-03-29 23:53:38 -04:00
Tony Crisci
dc8c9fbeb6
Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"
...
This reverts commit 472e81f35d
, reversing
changes made to 6b7841b11f
.
2018-03-29 23:41:33 -04:00
Drew DeVault
d0c7f66e95
Revert "Refactor tree"
2018-03-29 23:29:29 -04:00
Tony Crisci
2778edef97
arrange windows
2018-03-29 23:15:39 -04:00
Tony Crisci
92c58b1e63
rename container_for_each_descendent
2018-03-29 23:08:59 -04:00
Drew DeVault
8efee109ad
Implement modes
2018-03-29 22:11:08 -04:00
Drew DeVault
2719ddfe5e
Spawn swaybars when outputs are added
2018-03-29 22:11:08 -04:00
Drew DeVault
5c9cdbcdd2
Add swaybg_command
2018-03-29 22:11:08 -04:00
Drew DeVault
569b2bfd5d
Move bar config into its own file
2018-03-29 22:11:08 -04:00
Drew DeVault
bf7a4cd0eb
Add bar configuration commands
2018-03-29 22:11:08 -04:00
Drew DeVault
6836074fed
Implement enough IPC for swaybar to work
2018-03-29 22:11:08 -04:00
Drew DeVault
a76829f375
Some layer shell fixes
...
Based on the corresponding rootston changes
2018-03-29 22:11:08 -04:00
Drew DeVault
cab1352801
Start port of swaybar to layer shell
...
This starts up the event loop and wayland display and shims out the
basic top level rendering concepts. Also includes some changes to
incorporate pango into the 1.x codebase properly.
2018-03-29 22:11:08 -04:00
Tony Crisci
4c394a0e9e
address feedback
2018-03-29 21:22:39 -04:00
Tony Crisci
62d1b4cb96
fix container_get_in_direction name
2018-03-29 18:17:31 -04:00
Tony Crisci
eca029f218
more renaming things
2018-03-29 17:06:29 -04:00
Tony Crisci
b90099b4b7
rename container functions
2018-03-29 16:40:40 -04:00
Tony Crisci
83d09cf594
remove swayc_t typedef
2018-03-29 14:31:10 -04:00
Tony Crisci
874f009866
move tree includes to their own directory
2018-03-29 14:21:42 -04:00
Drew DeVault
8d6bce02af
Address review feedback
2018-03-28 18:11:03 -04:00
Drew DeVault
68cfa7ef67
Render layer surfaces and respect exclusive zone
2018-03-28 16:42:13 -04:00
Drew DeVault
0c8a64942e
Add initial layer shell skeleton
2018-03-28 15:47:22 -04:00
emersion
01beee5826
Update wlroots API
...
Breaking changes in wlr_xdg_shell_v6 and wlr_renderer have been
made upstream.
2018-03-19 23:31:18 +01:00
Tony Crisci
02804584e5
ipc new window event
2018-02-27 19:53:15 -05:00
Drew DeVault
8ad26c8afd
Send surface enter/leave events
2018-02-25 17:23:36 -05:00
Tony Crisci
ac8269d536
take seat param for handle_command and rename
2018-02-24 12:50:24 -05:00
Tony Crisci
66d1e0b313
basic layout command
2018-02-22 18:37:14 -05:00
Tony Crisci
4b3aa59b8b
rename new_input listener on input-manager
2018-02-20 19:09:38 -05:00
Tony Crisci
316effd7b1
make handle_output_destroy() static
2018-02-20 19:06:56 -05:00
Tony Crisci
66a975038c
add doc to sway_seat_get_focus_inactive()
2018-02-20 19:01:02 -05:00
Tony Crisci
f0ca2cb5c3
use quotes for container include
2018-02-17 19:05:17 -05:00
Tony Crisci
083e11ac7c
fix build for latest api
2018-02-14 15:08:10 -05:00
Tony Crisci
7dfbf06de9
output destroy
2018-02-14 14:51:51 -05:00
Tony Crisci
06c71f115b
input device destroy
2018-02-14 14:47:59 -05:00
Tony Crisci
946d9459c5
get swayc in direction
2018-02-14 14:30:27 -05:00
Tony Crisci
93084c9cf8
remove old focus member
2018-02-10 19:53:50 -05:00
Tony Crisci
145b4fdf58
use bfs iterator to collect focus stack
2018-02-10 16:52:45 -05:00
Tony Crisci
bfd2e85364
refactor workspace.h
2018-02-10 15:15:27 -05:00
Tony Crisci
a7d49da239
separate seat get focus and seat get focus inactive
2018-02-07 18:17:57 -05:00
Tony Crisci
5151502298
basic focus overhaul
2018-02-04 14:08:54 -05:00
Drew DeVault
b28602aa74
Implement workspaces
2018-01-30 23:09:21 -05:00
Drew DeVault
8231f99c12
Remove include/sway/old/
2018-01-30 20:51:57 -05:00
Drew DeVault
a686fb07ae
Execute pending commands when Xwayland is ready
2018-01-30 20:01:49 -05:00
Dominique Martinet
5766f426aa
config reload: destroy old seat when removed from config
...
This adds new sway_seat_destroy and sway_cursor_destroy helpers
and compare new and old config on free
2018-01-22 07:26:37 +01:00
emersion
0c58673c6a
Merge pull request #1574 from acrisci/config-refactor
...
Command criteria
2018-01-22 01:16:23 +01:00
Tony Crisci
5505d84ac2
criteria cleanup
2018-01-21 14:11:41 -05:00
Tony Crisci
0e3eae4baa
view interface
2018-01-21 09:09:53 -05:00
Tony Crisci
6a1d71b8b8
basic command criteria
2018-01-20 16:21:45 -05:00
Tony Crisci
c353e01c85
add kill command
2018-01-20 14:10:11 -05:00
Tony Crisci
cc3c713889
seat config handler context
2018-01-20 11:44:34 -05:00
Tony Crisci
9e0595f26b
input config handler context
2018-01-20 11:34:57 -05:00
Tony Crisci
9f54cd8935
copy config references for input and seat
2018-01-17 09:49:02 -05:00
Tony Crisci
83ddd2d9db
render override redirect
2018-01-14 13:19:21 -05:00