~ruther/dwl

ref: 68412d8957ea31f92014dfc8813a1f294a55211b dwl/dwl.c -rw-r--r-- 70.9 KiB
68412d89 — Guido Cella 4 years ago
try to fix again

Calculate x and y of usable_area, not just width and heigth.
69847872 — Guido Cella 4 years ago
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.
79f3bbaf — Guido Cella 4 years ago
remove variable
52a4d3a1 — Guido Cella 4 years ago
use size_t for lengths
9743778d — Guido Cella 4 years ago
rename variable and merge 2 lines
6b25e7ef — Guido Cella 4 years ago
simplify
8ee02008 — Guido Cella 4 years ago
use unsigned int for loop indexes
ae798c69 — Guido Cella 4 years ago
Don't let overlays lose focus

if you open a new window while an overlay is mapped, the overlay should
stay focused
8de18f9b — Guido Cella 4 years ago
fix restoring pointer focus

I don't know why I thought it was working before. Maybe I should go do
something else.
71572521 — Guido Cella 4 years ago
improve code style
9308a90d — Guido Cella 4 years ago
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)
8e81c90f — Guido Cella 4 years ago
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.
2d84c746 — Guido Cella 4 years ago
focus the previous client in the similar code too
068352e8 — Guido Cella 4 years ago
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.
4341deae — Guido Cella 4 years ago
fix alhpabetical order
5dc94600 — Guido Cella 4 years ago
simplify focus leave condition
35b93669 — Guido Cella 4 years ago
reuse motionnotify()
d98ca07a — Guido Cella 4 years ago
enable pointer on layer surfaces
b26ede47 — Guido Cella 4 years ago
more TODOs
4017a27b — Guido Cella 4 years ago
fix focus leave condition

needs refactoring and testing
Next
Do not follow this link