Ryan Dwyer
5d6d24e71a
Move code for re-arranging after font height change into a common place
7 years ago
Ryan Dwyer
228c478e8d
Implement title_format
...
This implements the title_format command, with a new placeholder %shell
which gets substituted with the view type (xwayland, xdg_shell_v6 or
wl_shell).
Example config:
for_window [title=".*"] title_format %title (class=%class instance=%instance shell=%shell)
7 years ago
Drew DeVault
58a033d816
Convert border_colors.text to float[4]
7 years ago
Ryan Dwyer
d3d1e38c1b
Change comment format
7 years ago
Ryan Dwyer
55b307cddf
Calculate config->font_height based on existing container titles
7 years ago
Ryan Dwyer
b667298a0a
Render titles
7 years ago
Ryan Dwyer
6ef14e99ee
Restore view_update_position()
7 years ago
Ryan Dwyer
abcad0ece9
Move docblock and fix indenting of switch/case.
7 years ago
Ryan Dwyer
e67f354333
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
7 years ago
Ryan Dwyer
312fdf313f
Remove arrange_windows()
...
After the refactor, this function is no longer called.
7 years ago
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.
7 years ago
emersion
ff61df17ff
Add map_from_region command
7 years ago
Ryan Dwyer
ae39d7b28c
Remove sway_container.workspace_layout
...
Fixes #1716 .
7 years ago
Ryan Dwyer
dfc26c664f
Update wording about unmanaged/unmapped views
7 years ago
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
7 years ago
emersion
4cf77e1de4
Default to current time when triggering cursor events
7 years ago
Drew DeVault
21eb63cc9e
Merge branch 'master' into fullscreen
7 years ago
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
}
7 years ago
Ryan Dwyer
72beae209b
Fullscreen fixes.
7 years ago
Ryan Dwyer
c685ef081f
Create sway_workspace struct.
7 years ago
Ryan Dwyer
bfd5834f4c
Feedback for fullscreen.
7 years ago
Ryan Dwyer
52420cc24d
Implement fullscreen.
7 years ago
Danny Bautista
c355d680e9
Clean up cursor simulation code.
7 years ago
Danny Bautista
1edb2bd892
Implement cursor event simulation with sway commands.
7 years ago
Drew DeVault
07b6be6214
Merge pull request #1769 from acrisci/focus-inactive-fixes
...
Focus inactive fixes
7 years ago
Tony Crisci
e7771c507a
80char
7 years ago
Drew DeVault
0e3ddf255e
Add input "identifier" map_to_output "identifier"
7 years ago
Tony Crisci
ae78f6fb93
Merge branch 'wlroots' into focus-inactive-fixes
7 years ago
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
7 years ago
Drew DeVault
9114d3b84c
Implement tablet tool support
7 years ago
Tony Crisci
de811823b6
seat focus inactive children foreach
7 years ago
Tony Crisci
c0f9ee7bd1
seat get focus inactive view
7 years ago
emersion
2b357af7ee
Give keyboard focus to unmanaged xwayland surfaces
...
This fixes dmenu
7 years ago
Drew DeVault
c47b4d4edb
Merge pull request #1756 from emersion/output-damage
...
Fine-grained damage tracking
7 years ago
Drew DeVault
f5a9bd5cb7
Merge pull request #1700 from swaywm/move-cmd-full
...
Implement move [left|right|up|down]
7 years ago
Drew DeVault
640232eb22
Revert "Break everything^W^WUse wlr_box for sway_container"
7 years ago
Drew DeVault
764489e737
Break everything^W^WUse wlr_box for sway_container
7 years ago
Drew DeVault
603e0e42c5
Add debug tree view
7 years ago
emersion
516f5454ad
Simplify damage tracking functions, use them in layer shell
7 years ago
emersion
290c916290
Send surface enter/leave events to view children
7 years ago
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)))
```
7 years ago
emersion
88e3e5ea5d
Fix wl_output enter/leave events
...
Fixes #1739
7 years ago
emersion
c2b1beef15
Remove L_TYPES
7 years ago
emersion
641807d920
Handle unmanaged surfaces motion
7 years ago
emersion
d65d001aa5
Fix desktop_damage_whole_surface
7 years ago
emersion
076bedb85e
Add container_damage_whole
7 years ago
emersion
1c91d0c10f
Add damage tracking for xwayland unmanaged surfaces
7 years ago
emersion
07f3bb3ad1
Handle xwayland configure requests for unmanaged surfaces
7 years ago
emersion
7ce1038478
Fix xwayland unmanaged surfaces
7 years ago
emersion
f5e5b1819b
Track damage of xdg-shell-v6 popups
7 years ago
emersion
45f93e1650
Accumulate damage from subsurfaces
7 years ago
emersion
dcd15a2d3d
Implement shell views
7 years ago
Drew DeVault
f77986338f
Implement resize command
7 years ago
emersion
8eff00f723
Remove unused SWAY_VIEW_TYPES
7 years ago
emersion
679c51e421
Remove unused sway_view.unmanaged_link
7 years ago
Tony Crisci
fc9398a42e
Implement opacity command
7 years ago
Drew DeVault
d2d050d59c
Address review feedback
7 years ago
Drew DeVault
b7e7794912
Implement input-inhibit in sway, swaylock
7 years ago
Drew DeVault
06fbd51ff5
Add input inhibitor to input manager
7 years ago
Tony Crisci
741e3959e3
Merge branch 'wlroots' into split-containers2
7 years ago
Tony Crisci
fa004dd0d7
move output create to its own file
7 years ago
Tony Crisci
a001890fb8
move workspace create to workspace.c
7 years ago
Tony Crisci
eca4468c2c
fix old todos
7 years ago
Tony Crisci
9b567fc37e
clean up container_get_default_layout
7 years ago
Tony Crisci
065887bb7b
move container_set_layout to layout.h
7 years ago
Tony Crisci
fcbcbf34ad
make container_finish private
7 years ago
Tony Crisci
5f4761c4f4
unify workspace create functions
7 years ago
Tony Crisci
09d448ea2d
unify container destroy functions
7 years ago
Tony Crisci
b4c5f79725
move view and workspace destructors to container.c
7 years ago
Tony Crisci
2992b72d61
change reap container approach
7 years ago
Drew DeVault
56078edd65
Give exclusive focus to layers above shell layer
7 years ago
Tony Crisci
2c165e1288
fix more close segfaults
7 years ago
Tony Crisci
a89096278b
Merge branch 'wlroots' into split-containers
7 years ago
Tony Crisci
d434da5632
Merge branch 'wlroots' into split-containers
7 years ago
emersion
a4a241697a
Merge branch 'wlroots' into view-redesign
7 years ago
emersion
2f64ce86c4
Xwayland unmanaged views aren't views anymore
7 years ago
Tony Crisci
2187684bd0
Merge branch 'wlroots' into split-containers
7 years ago
Tony Crisci
5e024278a6
Merge branch 'wlroots' into seat-fixes
7 years ago
Tony Crisci
22287b42bf
dont copy input config
7 years ago
Tony Crisci
35445b40a2
remove unused attachment config
7 years ago
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
7 years ago
emersion
61fabede14
Address review comments
7 years ago
Tony Crisci
53bb7ea996
dont copy seat config on the seat
7 years ago
Tony Crisci
0828c77251
rename input-manager functions
7 years ago
Tony Crisci
e677c5b204
rename seat functions
7 years ago
Tony Crisci
81556f4b2a
add docstrings and todos
7 years ago
emersion
1d68f9ecca
Add sway_view_impl
7 years ago
emersion
b2c2ee693b
Introduce common functions to create, map, unmap, destroy views
7 years ago
Tony Crisci
6f7b33e691
handle container destroy in the seat
7 years ago
Tony Crisci
7706d83160
basic split containers
7 years ago
Drew DeVault
f2332dc75c
Address review feedback
7 years ago
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)
7 years ago
emersion
b237fa0b22
Set xwayland cursor
7 years ago
emersion
9665642765
Merge branch 'wlroots' into client-cursors
7 years ago
emersion
139f80b0f0
Handle map/unmap events in xdg-shell-v6
7 years ago
emersion
a776ecbb86
Add lite damage tracking
...
This skips the renderer if nothing has changed, and renders
everything otherwise.
7 years ago
Tony Crisci
7e0d430a0c
Merge branch 'wlroots' into wlroots-xwayland-map
7 years ago
Drew DeVault
49379dd0fc
Fix workspace deletion edge cases
7 years ago
emersion
cf09ea184b
Use the new map/unmap events for xwayland views
7 years ago
emersion
1592543fd6
Merge pull request #1659 from swaywm/default-orientation
...
Add default_orientation command
7 years ago
Drew DeVault
b6b674fd76
Merge pull request #1657 from emersion/render-fixes
...
Misc minor fixes
7 years ago
emersion
6c9d67b105
Handle set_cursor requests from clients
...
Allow clients to set a custom cursor if they have the seat's
pointer focus.
7 years ago
Drew DeVault
01af343912
Destroy empty workspaces when moving away
7 years ago
Drew DeVault
69eb021767
Add default_orientation command
7 years ago
emersion
981827ca42
Cleanup and remove global renderer reference
7 years ago
Drew DeVault
f26ecd9f58
Merge remote-tracking branch 'origin/wlroots' into swaybar-layers
7 years ago
Tony Crisci
8f490d7d2d
Fix oversights from previous pull request
7 years ago
Tony Crisci
dc8c9fbeb6
Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"
...
This reverts commit 472e81f35d
, reversing
changes made to 6b7841b11f
.
7 years ago
Drew DeVault
d0c7f66e95
Revert "Refactor tree"
7 years ago
Tony Crisci
2778edef97
arrange windows
7 years ago
Tony Crisci
92c58b1e63
rename container_for_each_descendent
7 years ago
Drew DeVault
8efee109ad
Implement modes
7 years ago
Drew DeVault
2719ddfe5e
Spawn swaybars when outputs are added
7 years ago
Drew DeVault
5c9cdbcdd2
Add swaybg_command
7 years ago
Drew DeVault
569b2bfd5d
Move bar config into its own file
7 years ago
Drew DeVault
bf7a4cd0eb
Add bar configuration commands
7 years ago
Drew DeVault
6836074fed
Implement enough IPC for swaybar to work
7 years ago
Drew DeVault
a76829f375
Some layer shell fixes
...
Based on the corresponding rootston changes
7 years ago
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.
7 years ago
Tony Crisci
4c394a0e9e
address feedback
7 years ago
Tony Crisci
62d1b4cb96
fix container_get_in_direction name
7 years ago
Tony Crisci
eca029f218
more renaming things
7 years ago
Tony Crisci
b90099b4b7
rename container functions
7 years ago
Tony Crisci
83d09cf594
remove swayc_t typedef
7 years ago
Tony Crisci
874f009866
move tree includes to their own directory
7 years ago
Drew DeVault
8d6bce02af
Address review feedback
7 years ago
Drew DeVault
68cfa7ef67
Render layer surfaces and respect exclusive zone
7 years ago
Drew DeVault
0c8a64942e
Add initial layer shell skeleton
7 years ago
emersion
01beee5826
Update wlroots API
...
Breaking changes in wlr_xdg_shell_v6 and wlr_renderer have been
made upstream.
7 years ago
Tony Crisci
02804584e5
ipc new window event
7 years ago
Drew DeVault
8ad26c8afd
Send surface enter/leave events
7 years ago
Tony Crisci
ac8269d536
take seat param for handle_command and rename
7 years ago
Tony Crisci
66d1e0b313
basic layout command
7 years ago
Tony Crisci
4b3aa59b8b
rename new_input listener on input-manager
7 years ago
Tony Crisci
316effd7b1
make handle_output_destroy() static
7 years ago
Tony Crisci
66a975038c
add doc to sway_seat_get_focus_inactive()
7 years ago
Tony Crisci
f0ca2cb5c3
use quotes for container include
7 years ago
Tony Crisci
083e11ac7c
fix build for latest api
7 years ago
Tony Crisci
7dfbf06de9
output destroy
7 years ago
Tony Crisci
06c71f115b
input device destroy
7 years ago
Tony Crisci
946d9459c5
get swayc in direction
7 years ago
Tony Crisci
93084c9cf8
remove old focus member
7 years ago
Tony Crisci
145b4fdf58
use bfs iterator to collect focus stack
7 years ago
Tony Crisci
bfd2e85364
refactor workspace.h
7 years ago
Tony Crisci
a7d49da239
separate seat get focus and seat get focus inactive
7 years ago
Tony Crisci
5151502298
basic focus overhaul
7 years ago
Drew DeVault
b28602aa74
Implement workspaces
7 years ago
Drew DeVault
8231f99c12
Remove include/sway/old/
7 years ago
Drew DeVault
a686fb07ae
Execute pending commands when Xwayland is ready
7 years ago
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
7 years ago