Guido Cella
8f0ce672d3
simplify
2020-09-10 06:01:18 +02:00
Guido Cella
143dce094c
fix multi monitors further
...
Fix layer surfaces without an exculsive area by using the right x and y
for the current monitor (by Stivvo).
2020-09-09 17:13:30 +02:00
Guido Cella
62250661cf
remove unneeded line
...
The bug was caused by usable_area's x and y not being set in
arrangelayers. For example if on a 2nd HD monitor, x should be 1920
while the first one ends at 1919. So I don't see why m->m should be
recalculated after creating the monitor.
2020-09-08 13:36:46 +02:00
Guido Cella
68412d8957
try to fix again
...
Calculate x and y of usable_area, not just width and heigth.
2020-09-08 12:49:05 +02:00
Guido Cella
69847872bb
fix multi monitors
...
If you don't recalculate the monitor's geometry before arranging,
clients get arranged in the first monitor. I don't understand why this
fixes the bug since tile() uses m->w rather than m->m, nor why it needs
to be recalculated after creating the monitor but sway does it too.
Although not necessary to fix the bug I also made arrangelayer() do like
sway again and recalculate usable_area instead of reusing m->m, since
m->m seems to be incorrect until it gets recalculated shortly after in
arrange(), so I suspect that leaving usable_area = m->m will cause
issues under certain circumstances.
Someone with a multi-monitor setup or better knowledge of Wayland may be
able to figure out the cause of the bug. For now, this makes layer shell
work.
2020-09-08 10:28:29 +02:00
Guido Cella
79f3bbaf38
remove variable
2020-09-06 19:59:58 +02:00
Guido Cella
52a4d3a1e5
use size_t for lengths
2020-09-05 18:29:39 +02:00
Guido Cella
9743778d09
rename variable and merge 2 lines
2020-09-05 14:15:03 +02:00
Guido Cella
6b25e7ef27
simplify
2020-09-05 06:58:54 +02:00
Guido Cella
8ee0200877
use unsigned int for loop indexes
2020-09-04 21:36:43 +02:00
Guido Cella
ae798c694a
Don't let overlays lose focus
...
if you open a new window while an overlay is mapped, the overlay should
stay focused
2020-09-04 21:35:48 +02:00
Guido Cella
8de18f9bb4
fix restoring pointer focus
...
I don't know why I thought it was working before. Maybe I should go do
something else.
2020-09-04 21:14:02 +02:00
Guido Cella
71572521e9
improve code style
2020-09-04 18:45:30 +02:00
Guido Cella
9308a90d11
remove comment
...
I don't know why it wasn't working before but now it does ¯\(ツ)/¯
(it wasn't caused by the just removed code either)
2020-09-04 18:04:20 +02:00
Guido Cella
8e81c90f31
remove mysterious code
...
Why would a surface that's not keyboard interactive get focused? Let's
remove this for now and see if issues arise.
2020-09-04 17:38:37 +02:00
Guido Cella
2d84c74657
focus the previous client in the similar code too
2020-09-04 17:38:04 +02:00
Guido Cella
068352e888
refocus old client
...
When a layer surface is destroyed focus should be returned to the last
client. Luckily if there are multiple overlays the previous overlay
still gets focused.
2020-09-04 17:21:48 +02:00
Guido Cella
4341deae8f
fix alhpabetical order
2020-09-04 17:01:34 +02:00
Guido Cella
5dc9460044
simplify focus leave condition
2020-09-04 16:42:14 +02:00
Guido Cella
35b93669f1
reuse motionnotify()
2020-09-04 15:35:04 +02:00
Guido Cella
d98ca07a64
enable pointer on layer surfaces
2020-09-04 07:42:51 +02:00
Guido Cella
b26ede4727
more TODOs
2020-09-03 18:59:27 +02:00
Guido Cella
4017a27b67
fix focus leave condition
...
needs refactoring and testing
2020-09-03 18:58:27 +02:00
Guido Cella
b4d9a8662f
send pressed keys to topmost layer surface
2020-09-03 18:34:41 +02:00
Guido Cella
5d4eadeb8e
remove blank line
2020-08-29 08:42:17 +02:00
Guido Cella
3203d1bafd
don't handle failed calloc
...
be consistent with the rest of the code
2020-08-29 08:41:51 +02:00
Guido Cella
ddd3c2ad7e
order variables more how like they are initialized
2020-08-29 07:42:47 +02:00
Guido Cella
2c08d0b421
Reuse render() and struct timespec *now
2020-08-28 09:00:03 +02:00
Guido Cella
03c020f058
reuse m->m
2020-08-27 06:45:26 +02:00
Guido Cella
1473d03293
remove comment
...
wlr_output_layout_get_box internally calls
wlr_output_effective_resolution
2020-08-27 06:04:57 +02:00
Guido Cella
c9f92bdd0e
set a monitor geometry only when creating it
...
Lets layers with an exclusive area shrink the usable area
2020-08-27 05:22:27 +02:00
Guido Cella
b8a6d3e86a
render in the same order as sway
2020-08-27 05:03:01 +02:00
Guido Cella
e13d193346
correct variable name
2020-08-26 19:52:03 +02:00
Guido Cella
ce7bc8125d
rename functions too
2020-08-26 19:51:08 +02:00
Guido Cella
e69c3d7336
remove extra space
2020-08-26 19:16:13 +02:00
Guido Cella
b35182f519
render layer surfaces
2020-08-26 19:04:30 +02:00
Guido Cella
1e2dde6674
improve naming
...
rename Layer to LayerSurface; layer should refer to overlay, top, bottom
or background
LayerSurface variables are always called layersurface
wlr_layer_surface_v1 variables are always called wlr_layer_surface
2020-08-26 17:33:17 +02:00
Guido Cella
05df9201b3
layer shell initial attempt
2020-08-24 07:04:34 +02:00
Devin J. Pohly
44ef698d6e
set up interfaces in same order as sway
...
This makes it easier to compare WAYLAND_DEBUG logs when troubleshooting.
2020-08-23 10:01:39 -05:00
Guido Cella
1c9a0d8822
enable gamma control
2020-08-22 18:09:38 +02:00
Devin J. Pohly
620da43933
cleanup function to match dwm
2020-08-19 00:32:57 -05:00
Devin J. Pohly
8eb6fe8e9e
fix usage to match
2020-08-19 00:32:32 -05:00
Devin J. Pohly
3b1992ca91
we're not really using the log
2020-08-19 00:30:00 -05:00
Devin J. Pohly
f79746c578
this is technically barf too I guess?
2020-08-19 00:24:57 -05:00
Devin J. Pohly
f13227ebae
only call updatewindowtype for x11 windows
2020-08-19 00:23:54 -05:00
Devin J. Pohly
ad9b3bc65d
handle NULL return from backend_autocreate
...
Fixes #44 .
2020-08-18 19:43:42 -05:00
Devin J. Pohly
83f60e89b0
add macro for fatal errors
...
dwm lets the OS do cleanup if the program errors out
2020-08-18 19:39:34 -05:00
Devin J. Pohly
d615d3836c
Use SIGCHLD handler from dwm
...
Fixes #46 .
2020-08-18 18:22:44 -05:00
Devin J. Pohly
c0b05eddb8
make this marginally less ugly
2020-08-16 11:36:38 -05:00
Devin J. Pohly
41c3f91b03
wlr_session_change_vt is NULL safe
2020-08-16 11:32:45 -05:00