okan
3cb81ebeea
If _NET_WM_DESKTOP is set to -1 during client creation, place the client into
...
group 0 (nogroup); solves problem initially discovered by oga@nicotinebsd with
tint2. A clientmessage *after* client creation already handles this case.
Go further and assign every client to a group; in non-sticky mode, group 0
(nogroup) and sticky mode, the active group. In both cases, autogroup will
override the group assignment. Removing a group from a client always places
the client back into group 0 (nogroup). Autogroup can also assign a client to
group 0 (nogroup) to keep a client always visible (unless of course one opts to
hide all clients).
2014-02-07 18:09:54 +00:00
okan
98d8483d35
Some clients set the urgency flag even if they are the active client;
...
prevent annoying behavior by only setting the cwm urgency flag if the client
is not active; diff from Thomas Adam.
2014-02-06 20:58:46 +00:00
okan
f793964c9e
Introduce a region queue and replace screen's XineramaScreenInfo; we
...
still use Xinerama to populate the regions per screen, but will switch
at a more appropriate time.
2014-02-03 21:07:47 +00:00
okan
8a6dd51fac
make this XQueryTree like the other
2014-02-03 20:29:05 +00:00
okan
ad96c16838
Move redundant bits from screen_init (while dealing with existing
...
clients) directly into client_init, performing the X roundtrip only
once. With the previous change in maprequest, this moves decision making
into one place for creating new clients.
2014-02-03 20:20:39 +00:00
okan
ad76995af7
Move redundant window attr fetch from maprequest directly into
...
client_init and perform that X roundtrip only once.
2014-02-02 21:34:05 +00:00
okan
ad1b78c6d1
No need to store screen colormap and visual; rather just use the X
...
macros in the one place they are needed.
2014-02-02 16:29:04 +00:00
okan
5f9c7a21c7
Unlike free(3), XFree(3) can't be passed a NULL pointer.
2014-02-02 16:13:50 +00:00
okan
0a71742af4
The menu already limits entries with MENU_MAXENTRY, so don't bother
...
holding a command name limit as well.
2014-02-02 15:46:05 +00:00
okan
fd827fd757
Take menu's bwidth into account for position/size; reported by Thomas Adam.
2014-02-01 19:28:46 +00:00
okan
8b63ac62c2
Let the config parser continue parsing even after encountering an error;
...
original idea (with now-outdated patch) from Thomas Adam. Since we now
report where errors exist, this now makes more sense. Expand a bit on
config file parsing in the cwm(1).
Discussed with a few, including sthen; ok sthen.
2014-02-01 00:25:04 +00:00
okan
34477b8a35
re-add lost free from previous
2014-01-30 22:41:16 +00:00
okan
cc1902f57c
Switch ignoreq to winname struct since it's basically the same thing;
...
removes limit on name matching.
2014-01-30 22:17:22 +00:00
okan
7928c1ad7c
use the same autogroupwin variable as everywhere else
2014-01-30 15:43:53 +00:00
okan
fdefcecfa0
Move cwm_status around to avoid header fu, and remove extraneous signal
...
header from xevents.c; noticed by Christian Neukirchen.
2014-01-30 15:41:11 +00:00
okan
7b5b7cc9e9
Remove duplicate mouse functions and instead use the kbfunc ones. No
...
user visable changes at this point, but they'll merge at an appropriate
time.
2014-01-30 14:40:21 +00:00
okan
2be890489b
Minimize trivial differences between a few kb and mb functions.
2014-01-29 22:30:00 +00:00
okan
59fe14bd2f
keybinding -> key binding
2014-01-29 21:17:33 +00:00
okan
db0b2fde5c
Merge keybinding and mousebinding queues into using the same merged
...
struct, binding; they were essentially the same accept for what was
'pressed', keysym or button.
2014-01-29 21:13:52 +00:00
okan
4438970b64
Much like we do for keyboard and mouse bindings, remove duplicates for
...
command name - last match.
2014-01-29 18:43:27 +00:00
okan
1f8f19b4d5
Check command name/path for truncation and provide user feedback during
...
config parse (and use conf_cmd_add to populate defaults); based on a
discussion with Tiago Cunha. While this looks ugly, there are likely
some other changes here to come.
2014-01-29 18:34:22 +00:00
okan
c28467cda5
Check ignore windowname for truncation and provide user feedback during
...
config parse; based on a discussion with Tiago Cunha.
2014-01-28 20:22:21 +00:00
okan
df15337a9f
The EWMH spec states that if the cardinal returned is 0xFFFFFFFF (-1)
...
then the window should appear on all desktops, which in our case is
assigned to group 0. Found to fix stalonetray due to the non-ewmh aware
range checking in group_movetogroup(); from Thomas Adam.
2014-01-28 13:40:40 +00:00
okan
51b3fbee52
Move conf_init/clear into main - no behaviour change; from Tiago Cunha.
2014-01-28 00:42:20 +00:00
okan
0608610cc7
move some init up and shed some blank lines
2014-01-27 15:13:09 +00:00
okan
469db5f371
simplify parse_config using assignment; inspired by a very old diff from
...
Tiago Cunha.
2014-01-27 14:49:40 +00:00
okan
6f10349843
more range checking
2014-01-24 22:38:02 +00:00
okan
c7e2ee5dd5
correct arguments and drop the cast.
...
sanity check by oga@nicotinebsd
2014-01-24 15:08:06 +00:00
okan
53e77acafc
no need to quote within warning
2014-01-23 17:13:38 +00:00
okan
79248a385b
If no title is supplied, term uses only the basename for its title.
...
This is useless when searching for windows launched via the ssh command
menu; supply a more useful title: '[ssh] <hostname>'.
Idea from todd@, ok todd@
2014-01-23 16:51:28 +00:00
okan
3d2eec293a
zap whitespace
2014-01-22 22:41:09 +00:00
okan
978a5767ec
cwm_argv doesn't need to be global any longer
2014-01-22 22:26:05 +00:00
okan
5121ea5e10
start properly releasing X resources during teardown
2014-01-22 22:14:02 +00:00
okan
77aa5ac45b
Somewhat streamline event loop/restart/quit handling; most notable
...
change allows a restart to trigger proper teardown first, even though
teardown is not (yet) complete.
After some discussion with oga@nicotinebsd.org regarding a more
complicated version/idea.
2014-01-22 21:48:27 +00:00
okan
ac3162439a
Sprinkle a few more const; from Tiago Cunha.
2014-01-21 15:42:44 +00:00
okan
83f9ef884a
Save the ptr position before lowering via kbd, so as to be able to cycle
...
back with the pointer in the right place; matches behaviour when
lowering via the mouse function.
2014-01-20 23:18:47 +00:00
okan
c7adadaf9d
merge KBFLAG_NEEDCLIENT and MOUSEBIND_CTX_*; brings kbfunc and mousefunc
...
bits even closer.
2014-01-20 23:03:51 +00:00
okan
34f43e3f2d
Use argument to pass down flags for mousefunc cyclegroup; removes
...
rcyclegroup wrapper need - now similar to kbfunc.
2014-01-20 22:31:53 +00:00
okan
d91571c567
constify and rename some confusing variables around cmdq.
2014-01-20 21:34:32 +00:00
okan
7263fb4c84
- remove redundant range check for buttons in conf_bind_mouse.
...
- make conf_bind_kbd return error on non-matches to match what
conf_bind_mouse does.
- rename some variables while here for clarity.
- constify bind and cmd.
from Tiago Cunha.
2014-01-20 19:06:04 +00:00
okan
720b5452aa
Add a function that adds an entry to a menuq, normalizing a common code
...
path; from Tiago Cunha.
2014-01-20 18:58:03 +00:00
okan
43ccf4eae0
use consistent types
2014-01-03 15:29:06 +00:00
okan
08342471c8
state is long
2014-01-03 14:23:50 +00:00
okan
2843ba1e28
calculate proper menu width/height on the first Expose event; 'jump' (while using gap) noticed by Christian Neukirchen
2014-01-02 22:49:10 +00:00
okan
376e98c2c8
Accept _NET_CURRENT_DESKTOP ClientMessage; from Thomas Adam, though
...
instead of group toggle, group only.
2014-01-02 22:43:55 +00:00
okan
5a5e7441e1
Accept _NET_WM_DESKTOP clientmessage; from Thomas Adam
2014-01-02 22:26:27 +00:00
okan
10d4dcb127
bring mousefunc closer to kbfunc
2014-01-02 21:30:20 +00:00
okan
c4f6134ebe
gc keycode in keybinding since we only deal with keysym now
2014-01-02 21:17:23 +00:00
okan
8420398068
rename for clarity
2014-01-02 21:15:39 +00:00
okan
46b1d6ef1e
When a client doesn't specify size hints, nothing prevents a resize to
...
0x0 - don't allow this situation during mouse resize (check already in
place for kbd resize).
Reported by brynet@
2014-01-02 20:58:20 +00:00