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
Stivvo
d8570d5ceb
Allow borderpx = 0
2020-09-06 12:20:41 +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
Stivvo
621d4c9173
Toggle fullscreen on all clients
...
mod+e allows to toggle fullscreen any client, even those who don't
support it themselves
2020-09-05 11:22:24 +02:00
Stivvo
d9cf3e064c
Handle new windows
...
Windows lose fullscreen state when a new window is created in the same
tag
2020-09-05 11:02:13 +02:00
Stivvo
73d717a924
isfullscreen int
2020-09-05 10:40:52 +02:00
Stivvo
bd222cb75d
Same fscreen func for xdg and xwayland
2020-09-05 10:40:52 +02:00
Stivvo
dd2adb38ae
Fullscreen xwayland
2020-09-05 10:40:52 +02:00
Stivvo
aeae3dadbb
Unlink fullscreen
2020-09-05 10:37:59 +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
Stivvo
43bd806291
Restore windows after fullscreen
...
Store position and size of windows before going fullscreen. This is more
efficient than arrange() and also works with floating windows
All the clients keep their original position because arrange() isn't
used after quitting fullscreen
2020-09-04 17:11:26 +02:00
Stivvo
4b1ab7804b
No borders on fullscreen windows
...
Some code has been borrowed from the smartBorders patch
2020-09-04 17:09:42 +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
Stivvo
06982a56b5
Toggle fullscreen
2020-09-04 14:04:19 +02:00
Stivvo
60f0b667b1
Basic fullscreen
2020-09-04 12:44:09 +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
d74d404026
update README
2020-08-29 08:47:28 +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
b237ea0e45
simplify make clean
2020-08-28 15:17:38 +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
d61658bdd7
update make clean
2020-08-26 21:05:44 +02:00
Bonicgamer
45a2e25d6d
Merge pull request #2 from djpohly/master
...
Merge
2020-08-26 14:24:21 -04: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