Guido Cella
ea73221b45
Add killclient
2020-07-23 20:30:25 +02:00
Devin J. Pohly
4a4a261111
let xdg be the plain "createnotify"
...
use x11 suffix for other function to match isx11, also shorter
2020-07-22 20:54:39 -04:00
Devin J. Pohly
ce2c9e6660
xwayland is the exceptional case, let xdg be 0
2020-07-21 23:25:16 -04:00
Devin J. Pohly
a10357fae0
condense appid/title logic
2020-07-21 18:47:30 -04:00
Devin J. Pohly
a21c9378ee
fix segfault on xwayland "appid"
2020-07-21 18:43:26 -04:00
Alexander Courtis
57fef50310
xwayland: add server and basic window functionality ( #10 )
...
* xwayland: add server and basic window functionality
* xwayland: add server and basic window functionality
* xwayland: add server and basic window functionality
* xwayland: add server and basic window functionality
2020-07-21 18:35:46 -04:00
Lauri Gustafsson
91b18d4d4d
Add repeat delay and repeat rate to config.h ( #13 )
2020-07-02 15:41:12 -05:00
Devin J. Pohly
728e0e5d71
clear correct focus on keyboard leave
2020-06-15 09:22:43 -05:00
Shugyousha
63f09d1f23
Don't pass NULL surfaces to wlr focus functions ( #8 )
...
Turns out that this will hit asserts that will abort dwl.
2020-06-14 04:05:21 -05:00
Devin J. Pohly
14063d58bb
Handle missing XDG_RUNTIME_DIR explicitly
...
Also update the documentation to indicate that this is a Wayland thing
and not dwl-specific.
2020-06-07 11:43:48 -05:00
Devin J. Pohly
f19d00b94a
move perrors earlier
...
Should come right after the erroring call so nothing else has a chance
to overwrite errno
2020-06-07 11:42:43 -05:00
Martin Tournoij
da5b4d965d
Add startup errors, mention XDG_RUNTIME_DIR in README
...
It was just exiting with code 1 for me. The problem turned out to be
that you *need* to set XDG_RUNTIME_DIR or it won't work (I think e.g.
systemd does that for you, but on Void it's not set by default), so
mention that in the README.
2020-06-07 14:51:02 +08:00
Devin J. Pohly
8c0afa7c73
send xdg_decoration configure right after create
...
Thanks to @cedws for pointing this out!
2020-06-07 01:12:02 -05:00
Devin J. Pohly
2598100d53
Implement xdg-decoration protocol
...
Applications like alacritty which use this newer protocol will no longer
attempt to draw their own decoration.
2020-06-04 23:37:31 -05:00
Devin J. Pohly
5991cec0ff
Write something more intuitive for focusclient()
2020-06-03 19:45:40 -05:00
Devin J. Pohly
78187f5e65
document -qvd options
2020-06-03 15:05:12 -05:00
Devin J. Pohly
67299a18a5
make sure freed listeners are removed from list
2020-05-10 01:04:31 -05:00
Devin J. Pohly
c6833cf93e
add output manager protocol
2020-05-09 23:01:30 -05:00
Devin J. Pohly
59d16e491a
add screencopy support
...
While we're taking low-hanging fruit here...
2020-05-09 22:48:19 -05:00
Devin J. Pohly
0bd4eb8ff3
add primary selection support too!
2020-05-09 22:45:22 -05:00
Devin J. Pohly
0b0dd6b63c
handle request set selection
...
Ported from wlroots commit fa5d709
2020-05-09 22:30:20 -05:00
Devin J. Pohly
94bb68afe1
use wlr_xdg_surface.set_tiled correctly
...
Closes #2 . I'm guessing from sway that the idea of setting maximized
state so that windows cooperate is superseded by using set_tiled.
2020-05-09 14:50:31 -05:00
Devin J. Pohly
cad233b605
initialize global listeners statically
2020-05-09 10:10:02 -05:00
Devin J. Pohly
5817c917b6
abc
2020-05-03 13:18:53 -05:00
Devin J. Pohly
323092d3ce
remove vestigial listeners
2020-05-03 13:18:10 -05:00
Devin J. Pohly
7212da059c
no need for a line split here
2020-05-03 12:41:15 -05:00
Devin J. Pohly
1a30d9908d
no conditional needed for output modes
...
If the output backend doesn't support modes, get_preferred_mode will
return NULL, and set_mode will accept NULL.
2020-05-03 11:45:47 -05:00
Devin J. Pohly
b19afa10f3
use strstr for monrules
2020-05-03 11:39:48 -05:00
Devin J. Pohly
7afe152c47
add reminder comment
2020-05-03 11:38:34 -05:00
Devin J. Pohly
1b87831e00
inline xytosurface
2020-05-03 11:37:44 -05:00
Devin J. Pohly
f7d2524435
split xytoclient and xytosurface
2020-05-03 11:31:55 -05:00
Devin J. Pohly
835a46ef30
style
2020-05-03 11:23:51 -05:00
Devin J. Pohly
1d0350fa3d
refocus -> lastfocused
2020-05-03 11:23:39 -05:00
Devin J. Pohly
cf65fd8c9a
raise client on refocus
...
Might revisit this later, but this currently seems like the right
strategy.
2020-05-03 00:55:00 -05:00
Devin J. Pohly
86d8cb1804
add client rules
2020-05-03 00:49:02 -05:00
Devin J. Pohly
5de1cfbebf
allow setmon to specify alternate tags
2020-05-03 00:44:16 -05:00
Devin J. Pohly
b10ef0e80a
loop over array pointers directly
2020-05-03 00:41:37 -05:00
Devin J. Pohly
2e7b5310b4
includes: abc
2020-05-02 15:24:18 -05:00
Devin J. Pohly
3096d4eec1
set default cursor over window borders
2020-05-02 15:22:07 -05:00
Devin J. Pohly
ecdd012f6b
sacrifice 24 lines to suckless style :)
2020-05-02 15:21:36 -05:00
Devin J. Pohly
20ed6cb3d5
allow passing NULLs to xytoclient
...
For sx/sy, these are handled by the underlying call to
wlr_surface_surface_at.
2020-05-02 14:43:28 -05:00
Devin J. Pohly
8c80f74513
remove outdated/fixed comment
2020-05-02 14:33:32 -05:00
Devin J. Pohly
187d25e838
style: int instead of bool
2020-05-02 14:32:23 -05:00
Devin J. Pohly
d0df4d0d72
correct standard include for signal.h
...
Fixes #1 . Thanks @sdsddsd1!
2020-05-02 10:42:51 -05:00
Devin J. Pohly
87f8e6687b
include border in xytoclient
...
If there isn't an actual surface under the cursor, *surface will be set
to NULL, which is safe now that focus functions handle a NULL surface
safely.
2020-04-30 12:32:57 -05:00
Devin J. Pohly
2c134faa40
allow NULL surface with client in focus functions
2020-04-30 11:37:04 -05:00
Devin J. Pohly
33b0236858
make move-grab coords client-relative
2020-04-30 11:33:32 -05:00
Devin J. Pohly
3973ea5bfe
unify movemouse/resizemouse
2020-04-30 10:25:37 -05:00
Devin J. Pohly
53e71957f8
fix a long line
2020-04-26 22:19:48 -05:00
Devin J. Pohly
40d0d0f829
wait to get window geometry until map time
2020-04-26 22:18:39 -05:00
Devin J. Pohly
34d5045d84
use wlr_box for client geometry
2020-04-26 22:12:08 -05:00
Devin J. Pohly
a25ad1c327
call arrange only where needed
...
A few of these could probably even be more specific, but this is where
dwm's calls are.
2020-04-26 22:02:47 -05:00
Devin J. Pohly
499a43db74
funnel isfloating changes through setfloating()
2020-04-26 21:55:49 -05:00
Devin J. Pohly
ce5d116efd
move comment where it's more relevant
2020-04-26 21:42:45 -05:00
Devin J. Pohly
dd50a3ee04
mouse move now changes window monitor
2020-04-26 21:35:21 -05:00
Devin J. Pohly
19e712625f
options to select log level
2020-04-26 21:32:44 -05:00
Devin J. Pohly
b2960e53de
rename keyboardfocus() to focusclient()
2020-04-26 20:17:47 -05:00
Devin J. Pohly
7094bcc5e3
integrate raiseclient into keyboardfocus
2020-04-26 20:16:47 -05:00
Devin J. Pohly
6d5726e426
don't pass compositor button events to client
2020-04-26 20:12:54 -05:00
Devin J. Pohly
b025b7bdbd
render windows across monitors
2020-04-26 20:00:06 -05:00
Devin J. Pohly
aa7020b344
abc
2020-04-26 19:48:28 -05:00
Devin J. Pohly
8f02449cb4
funnel all monitor-moving through setmon()
2020-04-26 19:47:38 -05:00
Devin J. Pohly
847cd4c488
I'm good with changing the loglevel here...
2020-04-26 17:43:03 -05:00
Devin J. Pohly
309f6c96cf
hang some stuff on ->data
...
Sure it'll be useful at some point. Like here.
2020-04-26 17:42:10 -05:00
Devin J. Pohly
ab51576556
linesaver in pointerfocus
2020-04-26 14:47:23 -05:00
Devin J. Pohly
cd6683e6a1
fix refocus on sendmon
2020-04-26 14:11:44 -05:00
Devin J. Pohly
88f0ea343b
make sure windows always overlap with their monitor
2020-04-26 14:08:47 -05:00
Devin J. Pohly
48a8adb70a
track window width/height
2020-04-26 13:18:20 -05:00
Devin J. Pohly
5dd8a5f22f
use wlr_box for monitor regions
2020-04-26 12:41:33 -05:00
Devin J. Pohly
2fb9f53483
save lines in keyboardfocus
2020-04-26 12:01:08 -05:00
Devin J. Pohly
d34bf87dba
don't unfocus when mouse leaves a window
2020-04-26 12:01:00 -05:00
Devin J. Pohly
6cad698517
fix multi-dpi scaling
2020-04-25 01:18:28 -05:00
Devin J. Pohly
c00da5eeb0
clarify keyboardfocus vs pointerfocus
2020-04-24 00:12:58 -05:00
Devin J. Pohly
60f2c0b7de
draw window borders
...
Works with scaled/rotated displays too!
2020-04-23 23:55:29 -05:00
Devin J. Pohly
6254bcd033
factor out scalebox()
...
May switch to the version from sway if that seems like a good idea at
some point.
2020-04-23 23:52:27 -05:00
Devin J. Pohly
6e02b421cd
note about cursor init
2020-04-23 23:47:52 -05:00
Devin J. Pohly
ee2b3af1ca
configure monitor rotation/reflection
2020-04-23 23:44:54 -05:00
Devin J. Pohly
2cb526bbd9
add chvt function
...
It truly isn't just a window manager anymore :-|
2020-04-23 23:44:54 -05:00
Devin J. Pohly
1870187d62
make space for window borders
2020-04-23 23:35:54 -05:00
Devin J. Pohly
fb6b16aeee
change cursor during move and resize
2020-04-23 23:35:54 -05:00
Devin J. Pohly
2f21445761
style in buttonpress
2020-04-23 23:35:54 -05:00
Devin J. Pohly
288f6397fa
simplify move/resizemouse functions
2020-04-23 23:35:54 -05:00
Devin J. Pohly
073c35ae2f
funnel all resizing through resize()
2020-04-23 23:35:54 -05:00
Devin J. Pohly
60c887f3c0
use exit code macros everywhere
2020-04-23 23:35:54 -05:00
Devin J. Pohly
84da7b4470
some comments and reminders
2020-04-23 23:35:54 -05:00
Devin J. Pohly
275badc707
factor out renderclients
...
This will help once we get to implementing layer-shell
2020-04-23 23:16:56 -05:00
Devin J. Pohly
15ed82571b
don't autoraise
...
Still raise in buttonpress and focusstack of course. Focus models
honestly wouldn't be too hard to make into a config.h option.
2020-04-23 22:15:30 -05:00
Devin J. Pohly
e6bcf95e2e
use the focus stack to determine stacking order
...
Suddenly we have autoraise!
2020-04-23 22:11:52 -05:00
Devin J. Pohly
a5a7445dee
adopt a bit more dwm-like terseness
2020-04-23 22:11:52 -05:00
Devin J. Pohly
66bf55930f
change focus(NULL, NULL) to mean unfocus
...
"Focus the most recently focused window on selmon" is now refocus()
2020-04-23 22:11:52 -05:00
Devin J. Pohly
0d8f51e0a3
implement focusmon and tagmon
2020-04-23 22:11:52 -05:00
Devin J. Pohly
a87adfd77c
focus follows mouse
2020-04-23 22:11:52 -05:00
Devin J. Pohly
4eabe48fed
add incnmaster and setmfact commands
2020-04-23 22:11:52 -05:00
Devin J. Pohly
66054700cb
add toggletag and toggleview
2020-04-23 22:11:52 -05:00
Devin J. Pohly
35557ab042
don't detect non-visible clients under cursor
2020-04-23 22:11:52 -05:00
Devin J. Pohly
387dff81b3
add tag and view functions
2020-04-23 22:11:52 -05:00
Devin J. Pohly
fda58764ab
refocus if focused client is unmapped
...
focus(NULL, NULL) works like dwm's focus(NULL): focus the most recent
visible client on selmon, or clear the existing focus if there are none.
2020-04-23 22:11:48 -05:00
Devin J. Pohly
c03081d85d
implement floating windows
2020-04-23 19:48:00 -05:00
Devin J. Pohly
e447cd0215
load scaled cursor theme with each output
2020-04-23 19:12:58 -05:00
Devin J. Pohly
623867a367
turn focusnext into dwm's focusstack
2020-04-23 00:47:15 -05:00