Isaac Freund
3efcfedcf4
layer-shell: handle commits before map
...
A client is free to change its mind and request a different
size/anchor/etc after recieving the initial configure but before
attaching and committing the first buffer. This means that we should
respond to such a situation with a new configure.
mako has been observed doing this in the wild for example.
2021-06-22 14:07:14 +02:00
Isaac Freund
a2c81adba0
xdg-toplevel: remove listeners before view destroy
...
Currently in handleUnmap() we call View.unmap() before removing
listeners. However View.unmap() may destroy the view before returning
if the transaction started doesn't have to wait on any configures.
To ensure that we don't try to remove listeners which have already been
free'd, do this before calling View.unmap().
2021-06-17 20:57:14 +00:00
Isaac Freund
5daec347c0
render: damage on background/border color change
2021-06-16 17:42:09 +00:00
Leon Henrik Plickat
3405e2a87c
Ignore move and resize requests from fullscreened XDG toplevels
2021-06-16 10:03:30 -07:00
FollieHiyuki
12c12c4b6c
completions: add fish completion for input command
2021-06-16 09:59:37 -07:00
novakane
db35f700a8
completions/zsh: add input commands
2021-06-16 09:54:07 -07:00
Isaac Freund
f3024d9198
decoration: remove listeners on destroy
2021-06-14 22:55:10 +00:00
Isaac Freund
9ecffe21d8
layout: fix use-after-free in destroy()
2021-06-14 22:45:11 +00:00
Isaac Freund
6f61ea07db
view: ensure surface_box is initailized before use
2021-06-14 22:37:14 +00:00
Isaac Freund
37251c8758
output: handle OutputDamage destroy
...
This may be destroyed before our output destroy listener is called.
2021-06-14 22:17:01 +00:00
Isaac Freund
20eb94317a
root: simplify noop output handling
...
Instead of removing the listeners of the noop output early, simply never
add them.
2021-06-14 21:52:44 +00:00
Leon Henrik Plickat
1fd8d4d828
add bash completion for input commands
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat
a267262a17
Add list-input-configs
command
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat
3f4fd97b6e
Add list-inputs
command
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat
c9c9901c5b
doc: Document input config commands
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat
833248e805
Add basic input configuration
2021-06-13 10:37:36 -07:00
Isaac Freund
cab947b3a3
ci: add gcc to fix build
...
Zig relies on the existence of a system c compiler in order to
find the native libc include paths.
2021-06-09 20:35:30 +00:00
Isaac Freund
88410cc2b8
output: destroy Layouts on Output removal
...
The Layout struct holds a pointer to the Output which becomes invalid
when the Output is destroyed so we must ensure all the layouts of an
Output are destroyed first.
2021-06-09 20:03:19 +00:00
novakane
2e7c1dbe6a
config: make attach-mode global
2021-06-08 18:26:36 +00:00
novakane
75814eb876
view_stack: update tests for zig 0.8.0
2021-06-08 18:25:43 +00:00
Isaac Freund
68267a4cfe
river: don't extend timeout on transaction preemption
...
This avoids locking up the compositor if a client is unresponsive and
the user continuously initiates new transactions through their actions.
2021-06-08 15:18:45 +00:00
Isaac Freund
e90474657f
view: send activated/fullscreen configures immediately
...
The transaction system exists to coordinate size changes of all views
in a layout in order to achieve frame perfection. Since many clients
do not need to commit a new buffer in response to a activated state
change alone, this breaks things when such a configure event is tracked
by the transaction system. Instead, simply send activated and fullscreen
configures right away but still track this state in a double-buffered
way so that e.g. border color changes based on focus are frame-perfect.
This also fixes a related issue with the transaction system where views
that did not need to commit in response to our first configure were not
rendered until their next frame.
2021-06-08 06:00:15 +00:00
Isaac Freund
021fd8f376
code: remove now unnecessary zig fmt directives
...
zig fmt does what we want since zig 0.8.0
2021-06-08 03:20:56 +00:00
Isaac Freund
1bacaa5b43
view: get rid of notifyConfiguredOrApplyPending()
...
This function is only called in one place, just inline the code.
2021-06-08 02:56:19 +00:00
Isaac Freund
cef6d5a0be
render: fix damage tracking of drag icons
2021-06-07 18:34:54 +00:00
Isaac Freund
0e9dc089d1
render: track subsurfaces created before role assignment
2021-06-05 19:30:43 +00:00
Isaac Freund
aaf5a190fc
doc: correct zig version requirement in readme
2021-06-05 19:15:21 +00:00
Isaac Freund
c0a2286847
code: update to zig 0.8.0
2021-06-05 17:29:58 +00:00
Isaac Freund
ca4abd261f
xdg-toplevel: remove set_app_id listener
2021-05-31 15:46:39 +00:00
Isaac Freund
acaf192465
render: actually damage output on view opacity change
2021-05-31 15:21:42 +00:00
Isaac Freund
9ee788b65e
render: damage output on view opacity change
2021-05-31 01:00:49 +00:00
Isaac Freund
c68b96870f
doc: add IRC web client link
2021-05-28 17:39:43 +00:00
Isaac Freund
13f01bcb4b
render: do basic yes/no damage tracking
2021-05-24 16:43:21 +02:00
Isaac Freund
3390f223a8
example/init: use Mod+Shift E for exit
...
I keep hitting Mod+E when testing because of colemak.
2021-05-24 00:33:53 +02:00
Isaac Freund
c5005ba4a8
doc: move IRC channel to libera
2021-05-19 16:55:19 +02:00
Leon Henrik Plickat
6333e465d2
Allow changing output focus with pointer
2021-05-19 14:15:28 +02:00
Leon Henrik Plickat
6ab06120fa
rivertile: clamp main_amount
2021-05-19 13:54:54 +02:00
Lennard Hofmann
21bb333323
doc: fixed command name in example
...
send-layout-value → set-layout-value
2021-05-19 13:51:56 +02:00
Isaac Freund
c8b1017923
river: remove Seat.input_manager
...
This is no longer needed as server is global.
2021-05-13 15:13:17 +02:00
Isaac Freund
50cdcf3ee4
river: remove all stored *Root pointers
...
These are no longer needed as server is global.
2021-05-13 15:08:53 +02:00
Isaac Freund
3d031631c7
river: remove misc stored *Server pointers
...
These are no longer needed as server is now global.
2021-05-13 15:06:00 +02:00
Isaac Freund
ece465b7ed
river: remove InputManager.server
...
The server is now global so this is no longer needed.
2021-05-13 14:53:08 +02:00
Isaac Freund
ac27db236a
river: remove Output.root
...
The server is now global so this is no longer needed.
2021-05-13 14:35:36 +02:00
Isaac Freund
89e0d4c083
river: remove Root.server
...
The server is now global so this is no longer needed.
2021-05-13 14:26:27 +02:00
Isaac Freund
271b1563a8
river: make server a global variable
2021-05-13 14:25:34 +02:00
Leon Henrik Plickat
7ffa2f4b9e
contrib: Update layout.c for river-layout-v2
2021-05-07 00:34:41 +02:00
Isaac Freund
7ccb4794c9
river: always render floating views above layout views
2021-05-05 15:54:52 +02:00
Isaac Freund
cccca230f0
rivertile: fix typo in error message
2021-05-05 14:48:47 +02:00
Isaac Freund
57fe91c5a4
README: don't encourage manual system-wide install
2021-05-04 19:56:48 +02:00
Isaac Freund
ce69cfc337
doc: remove outdated reference to river-layouts(1)
2021-05-03 13:36:52 +02:00