Commit Graph

207 Commits

Author SHA1 Message Date
Devin J. Pohly
f2d025d4e9 do managed check in activatex11 2020-07-25 11:48:47 -04:00
Devin J. Pohly
e5e170e420 add client.type field
Current options are XDGShell, X11Managed, and X11Unmanaged.
2020-07-25 11:46:12 -04:00
Devin J. Pohly
39f3b87f3a rename activate to activatex11 for consistency 2020-07-25 11:46:12 -04:00
Devin J. Pohly
8b7cc8ada6 clarify createnotifyx11 function 2020-07-25 11:29:36 -04:00
Alexander Courtis
c4cf78aadb xwayland: unmanaged (dropdown menu) support 2020-07-25 11:29:02 -04:00
Devin J. Pohly
4bc7f2d8e4 remove n counter from zoom(), add comments 2020-07-24 17:35:19 -04:00
Guido Cella
7b608da8c5 Add zoom 2020-07-24 17:30:45 +02:00
Devin J. Pohly
53798dfbff fix WLR_SURFACE macro 2020-07-23 19:32:10 -04:00
Devin J. Pohly
5d66ea8a99 don't double-add new monitor to mons
this was a copy/paste error
2020-07-23 18:14:33 -04:00
Devin J. Pohly
d42d8bda42 add cleanup listener for keyboards 2020-07-23 18:13:42 -04:00
Devin J. Pohly
89e9a4be33 add monitor destroy listener 2020-07-23 18:03:13 -04:00
Devin J. Pohly
5ca1e22fef reorder teardowns 2020-07-23 17:36:20 -04:00
Devin J. Pohly
8b13e42d3f fix more unfreed memory 2020-07-23 17:34:50 -04:00
Devin J. Pohly
bc65c1a570 output_layout_manager not auto-destroyed 2020-07-23 17:20:23 -04:00
Devin J. Pohly
91000b5e76 xcursor_manager is not automatically destroyed 2020-07-23 17:16:02 -04:00
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