okan
7f75636e2f
- let callers of font_draw figure out (and pass) the color instead of an
...
'active' flag.
- use strlen() inside of font_draw; the only instance where it wasn't
used happened to be ignored on a subsequent draw.
2013-05-14 12:35:56 +00:00
okan
27a9825a40
swap x/y calculations in kbd move/resize to match those in the respective mouse functions
2013-05-11 22:03:17 +00:00
okan
7ab1469590
new -> init
2013-05-11 22:01:07 +00:00
okan
f00ab96178
replace conf_{gap,color,font} with conf_screen since really we are
...
configuring the screen *after* parsing, just as we do a conf_client on
client manage.
2013-05-11 21:46:27 +00:00
okan
dc5b3b52df
more type fixes for mask/button
2013-05-10 16:32:47 +00:00
okan
6ab8a91ea8
spacing
2013-05-10 16:10:40 +00:00
okan
8044f37078
int type fixes
2013-05-10 16:05:34 +00:00
okan
f0fe071b5a
fix KeySym type
2013-05-10 15:44:43 +00:00
okan
384bb6c501
border width/color makes sense for some, so put it back
2013-05-07 01:35:41 +00:00
okan
fb30b6ad26
negative values for borderwith, moveamount, snapdist and gap are
...
configuration errors, so warn and load defaults.
2013-05-06 19:09:19 +00:00
okan
52cbef8a12
remove group in client_delete directly.
2013-05-06 16:03:11 +00:00
okan
ed984685b1
border width/color makes no sense on menuwin
2013-05-06 16:00:34 +00:00
okan
72e88bc952
- no need to position and size the menu window before an Expose event
...
since we'll be calculating required size later anyway; allows us to
consolidate all prompt/display/search string building goop into
menu_draw.
- reset the pos/size of menuwin when leaving a menu.
- reverse the 'prompt' NULL check to be consistent with 'initial' one
and fix a whitespace nit while here.
2013-05-02 20:18:35 +00:00
okan
c3f5c37243
zap leftover debug printf
2013-05-02 19:41:52 +00:00
okan
ed8f41814a
get rid of cc->name in the resize box and make dimensions more readable.
2013-05-02 19:33:17 +00:00
okan
5e2856ce65
only redraw the name/size box when the client resizes, not every time
...
there's movement; should slightly help with resize syncs.
2013-05-02 19:30:10 +00:00
okan
f0a6447140
no need for font_{ascent,descent,height} wrappers; limit font_width to
...
just requiring xftfont.
2013-05-02 17:25:15 +00:00
okan
b0af7028d0
group conf_* init functions
2013-04-30 21:12:20 +00:00
okan
66a7b7fbf9
missing proto
2013-04-30 21:11:07 +00:00
okan
3b69bf465e
type fix
2013-04-30 21:10:23 +00:00
okan
87e16df157
use an int in screen_init and avoid needing to cast for screen number (which).
2013-04-29 00:56:47 +00:00
okan
fe3f832f4b
mechanical xu_{get,set}state -> xu_{get,set}_wm_state change
2013-04-17 13:57:06 +00:00
okan
62aed144f2
slightly rework WM_STATE set/get to make it less ambigious; will be more clear
...
on what needs to change to make it right in the end.
2013-04-17 13:52:20 +00:00
okan
fbc1e7edbd
zap extra space
2013-04-17 13:31:47 +00:00
okan
373f1ddf90
add conf_ignore and move group_make_autogroup to conf_autogroup to match.
2013-04-17 13:30:38 +00:00
okan
726def3405
only a window is required to set WM_STATE. also un-confuse xu_ptr_getpos
...
by using 'win' instead of 'rootwin' so as not to imply only the root
window is queried, rather any window.
2013-04-14 16:13:17 +00:00
okan
461decc718
we handle WM_STATE here, so remove misleading comment.
2013-04-12 20:54:27 +00:00
okan
2dfe178aa9
we already set window state in client_hide or client_unhide right before, so
...
there's no need to do it again.
2013-04-12 20:45:57 +00:00
okan
5e28ed99db
makes no sense to set an error handler which uses X_Dpy before XOpenDisplay.
2013-04-12 14:49:16 +00:00
okan
0b6abd364f
push Screenq into screen_init
2013-04-12 14:46:30 +00:00
okan
a7e1ba7503
_NET_WM_NAME is UTF8_STRING type
2013-04-10 19:08:09 +00:00
okan
a1a6245df6
plug memleak; always need to menuq_clear even when a selection is made.
2013-04-08 15:43:04 +00:00
okan
4ad10add15
reverse logic to make it like the others
2013-04-08 13:05:27 +00:00
okan
a395df4a8f
consistency
2013-04-08 13:02:31 +00:00
okan
29a51173bc
missing prototype
2013-04-08 00:56:21 +00:00
okan
ec8c1c2f0f
add missing proto; replace magic number
2013-04-05 17:36:02 +00:00
okan
13a11c8799
zap stray whitespace
2013-04-05 17:07:25 +00:00
okan
1eec28aa57
- no reason to breakout ClassHints work, so fold into client_{new,delete},
...
but keep _MOTIF_WM_HINTS separate.
- simplify fetching app/class hint.
- fix _MOTIF_WM_HINTS Atom type.
2013-04-03 20:22:55 +00:00
okan
01d25075d0
honor PATH search order for exec; from Andres Perera.
2013-04-03 19:28:00 +00:00
okan
b0d374e0fb
move XUngrabServer to the end of client_new() to avoid races where clients,
...
such as those using sdl, attempt to manage the clients themselves when the
clients aren't fully ready. other wm's grab the xserver during the whole
client setup process, so match.
behavior found by jsg.
2013-04-03 19:20:50 +00:00
okan
118cf232b6
replace handrolled for loop with TAILQ_FOREACH; from andres.p@zoho.com
2013-03-09 21:55:56 +00:00
okan
a39c86a915
put back r1.68 which allows an empty group to be sticky; behavior
...
change noticed by Thomas Pfaff and diagnosis why we need to
group_setactive in this case by Alexander Polakov. replace XXX with
a useful comment.
2013-01-13 13:55:12 +00:00
okan
01f04be317
set the initial group to '1', missed by recent off-by-one group
...
numbering re-work; discovered the hard way by sthen@.
ok sthen@
2013-01-10 15:28:11 +00:00
okan
a56cb7d9d2
add per-group vert/horiz tiling support; introduces 2 new bind commands,
...
'vtile' and 'htile'; from Alexander Polakov.
2013-01-08 15:16:04 +00:00
okan
62ff18b6d7
teach screen_find_xinerama() about gap and adjust (simplify) callers;
...
menu becomes gap-aware for free.
2013-01-08 04:12:51 +00:00
okan
1124cee92f
fix menu/client placement in panning setups; XineramaQueryScreens gives
...
us the width of the psuedo screen, but here we need the edge instead
(xmax/ymax); just re-use w/h here for now.
2013-01-07 21:53:23 +00:00
okan
5c111b8c13
revert previous
2013-01-07 21:45:24 +00:00
okan
0fc885f41e
unbreak xinerama support from r1.41 for panning setups
2013-01-07 20:32:19 +00:00
okan
968dc645ee
use cc->bwidth in client_vmax since we've yet to reset it (matches
...
client_hmax); from Jan Stary
2013-01-06 01:01:26 +00:00
okan
65585e276f
rename {h,v}max functions for consistency; from Jan Stary
2013-01-04 16:30:03 +00:00
okan
8ca4aa87e7
really these are just border colors, so adjust the define
2013-01-04 16:27:58 +00:00
okan
41fd96bb01
spacing
2013-01-04 16:23:51 +00:00
okan
9e11fcccad
get rid of struct color
2013-01-04 16:23:04 +00:00
okan
07daaf479c
pass the screen workarea, as opposed to viewarea, allowing client
...
snapping to honor gap.
2013-01-02 21:41:14 +00:00
okan
7fa6ca94df
re-work client_snapcalc() so it takes client and edge dimensions with
...
snapdist; allows for simplier snap calculations.
required for an upcoming diff for honoring gap.
2013-01-02 21:37:21 +00:00
okan
68cdbb853d
merge in Xinerama screen query; no functional change.
2013-01-02 18:11:23 +00:00
okan
10e814fedf
have screen_find_xinerama() return struct geom *reliably* instead of
...
XineramaScreenInfo; simplifies goop around the callers.
2013-01-02 16:26:34 +00:00
okan
23c2576b3c
more variable consistency
2013-01-02 02:19:20 +00:00
okan
621a7f2c53
info->xine, for consistent variable names
2013-01-02 02:02:08 +00:00
okan
f26b8dff2e
after we toggle a group hidden, it makes no sense to set it as active
...
(in sticky or non-stick mode), regardless of existing clients assigned
to that group; oga marked this bit XXX in -r1.34 for it didn't seem make
sense then either.
pulled from a diff from from Alexander Polakov.
2013-01-01 14:50:01 +00:00
okan
572328d529
least intrusive way to plug a memleak when unbinding a duplicate key for
...
kbfunc_cmdexec; from Tiago Cunha
2013-01-01 14:33:52 +00:00
okan
f67f32f8a5
replace emptystring with strdup here as well so we know we are free'ing
...
a malloc'd variable everytime; from Tiago Cunha
2013-01-01 14:26:29 +00:00
okan
12bed5f129
make num of groups no longer off-by-one; from Alexander Polakov
...
note that a re-exec of cwm will not rewrite the group number atom of
*existing* clients, so they will remain off-by-one until each client has
its atom updated, or of course a restart of X.
2013-01-01 14:19:56 +00:00
okan
f718e8894b
gc unused cmd 'flags' variable
2012-12-19 15:21:34 +00:00
okan
9a1820657c
expand CHILDMASK
2012-12-18 18:39:55 +00:00
okan
ab9f6dbbff
use MOUSEMASK since we already have it
2012-12-18 18:35:36 +00:00
okan
565c84cc7a
remove unused SEARCHMASK
2012-12-18 17:44:18 +00:00
okan
7f6aabcb3d
define LockMask|Mod2Mask; no functional change
2012-12-18 17:37:39 +00:00
okan
44784133e7
simplify config file setup; with Tiago Cunha
2012-12-18 00:14:41 +00:00
okan
4766921753
put a default known_hosts into conf
2012-12-17 23:54:57 +00:00
okan
eabe498038
pull user home directory via getenv or getpwuid and stash it so we don't
...
need to do this everytime; with Tiago Cunha
2012-12-17 23:03:41 +00:00
okan
b08541104f
cmap -> colormap in client_ctx
2012-12-17 18:35:26 +00:00
okan
2410477c9d
stash the default screen visual and colormap in screen_ctx
2012-12-17 18:34:06 +00:00
okan
8f15d97537
replace client highlight with a client flag
2012-12-17 17:48:57 +00:00
okan
4ef0e7d9d2
make client_mtf static
2012-12-17 14:58:46 +00:00
okan
1c7a3484bf
create and use menuq_clear() helper; from Tiago Cunha
2012-12-17 14:32:39 +00:00
okan
b926f75dcc
current_client() returns _curcc, so use it where appropriate
2012-12-17 14:26:29 +00:00
okan
887ac8ab28
screen font -> xftfont
2012-12-17 14:20:52 +00:00
okan
5ca4dca2e3
knf
2012-12-17 02:53:29 +00:00
okan
52982ae188
non-trivial menu drawing rewrite, moving to Xft and solving various
...
font/color drawing issues; from Alexander Polakov
2012-12-17 02:28:45 +00:00
okan
00eccbe44f
zap extra lines
2012-11-29 16:50:03 +00:00
okan
d43f96b65c
specific last match for autogroup; few iterations with Kent Spillner.
2012-11-29 04:25:49 +00:00
okan
ddf27615e6
x_setupscreen -> screen_init; no functional change.
2012-11-29 03:54:46 +00:00
okan
58353e9599
remove dead extern
2012-11-29 03:34:19 +00:00
okan
db22777ba0
add xasprintf() for upcoming changes.
2012-11-28 14:32:44 +00:00
okan
9c0280009c
ever since the 9wm code bits were removed or replaced, this file has
...
been a no-op, for each source file has a complete license marker (ISC).
no objections from oga, who did the 9wm rewrite/remove work in 2008.
2012-11-28 14:25:05 +00:00
okan
096354b57d
replace hand rolled font_make() with XftFontOpenName() and merge into
...
font_init().
2012-11-28 14:14:44 +00:00
okan
50585c9a89
add some checks
2012-11-16 14:15:48 +00:00
okan
48634b386c
variable name consistency; from Thomas Pfaff
2012-11-14 21:31:53 +00:00
okan
89bef83e09
tab-complete buglet fix: once exec_path is completed, allow for
...
subsequent completion; from Alexander Polakov
2012-11-14 21:12:24 +00:00
okan
4f78cb6835
sort
2012-11-09 03:52:02 +00:00
okan
81715b0acb
fix some warnings; inspired by a diff from Thordur Bjornsson.
2012-11-08 20:18:19 +00:00
okan
74af9940e6
style nit; from Tiago Cunha.
2012-11-07 21:10:32 +00:00
okan
02dbbaba8a
add comment why we mouse unbind, just like kbd
2012-11-07 21:04:55 +00:00
okan
62f3e39ff4
now that we have FOREACH_SAFE queue macros, use them where appropriate;
...
from Tiago Cunha.
2012-11-07 21:01:48 +00:00
okan
8d78ddf545
plug a leak when using 'unmap' for kbd/mouse bindings; from Tiago Cunha.
2012-11-07 20:37:55 +00:00
okan
1e3fec4362
get rid of the xfree() wrapper around free(); from Tiago Cunha.
2012-11-07 20:34:39 +00:00
okan
1d807310d5
clarify windowname and windowclass values are pulled from the WM_CLASS
...
property; from Kent Spillner
2012-11-07 14:59:07 +00:00
okan
0fa8ad10b0
zap trailing space
2012-11-07 14:58:26 +00:00
okan
4f79744f37
missing headers; from Thordur Bjornsson.
2012-11-07 14:49:46 +00:00
okan
b01ce50ca5
spacing
2012-11-07 14:40:51 +00:00
okan
8bbba5aed3
tab completion support for menus; from Alexander Polakov.
...
ok sthen@ on an older incarnation
2012-11-07 14:39:44 +00:00
okan
09b4f89a44
try to clarify xprop(1) output, with respect to WM_CLASS, without going
...
overboard; suggested idea by jmc
2012-11-01 01:10:47 +00:00
okan
17e94be7be
no longer a reason to carry conf_path in struct conf, so dice.
2012-10-31 22:06:24 +00:00
okan
34267fe638
replace 'reload' with 'restart', which merely re-exec's cwm using the
...
existing argv; same idea with respect to argv saving as Alexander
Polakov. reload support was half-complete and is getting in the way.
agreed to by many
2012-10-31 19:30:19 +00:00
okan
d6b5535794
on reload, run each client through conf_client to pick up potential
...
ignore and bwidth changes; also add a hack for existing maximized
windows so they don't inherit a new bwidth.
based on a diff from, and discussion with, Tiago Cunha.
2012-10-29 19:46:03 +00:00
okan
b3191069d5
clarify autogroup option; based on diffs from kspillner@acm.org with
...
feedback from jmc
2012-10-28 20:13:02 +00:00
okan
72f1943e2c
comment what this whole bit does, not just part of it.
2012-10-23 16:13:59 +00:00
okan
b94eed0ab4
add a height to struct menu and use it in the most obvious of places.
2012-10-23 16:08:59 +00:00
okan
770189e8ac
treat menu width the same as the height is treated when deciding its
...
max size and location; partially from a diff from Alexander Polakov.
2012-10-23 15:50:15 +00:00
okan
44b83028a3
Stop drawing when menu doesn't fit inside the screen; picked from a
...
larger diff from Alexander Polakov.
2012-10-23 15:32:38 +00:00
okan
762473fe35
revert previous for now until a way to test more than a few encodings is found
2012-09-12 15:09:33 +00:00
okan
2a98b1a00b
be explicit in which key masks we allow during keypress and buttonpress
...
events; from Alexander Polakov - makes non-us layout reliable.
2012-09-10 13:28:04 +00:00
okan
a78478db77
replace with xu_getprop wrapper used everywhere else.
2012-09-09 20:52:57 +00:00
okan
ab1deebeda
extend client_resize so that it can know when to reset max flags and
...
bwidth; this allows a client to be resized from a max state, which now
gets treated like a non-max'd client. based on a diff that does part of
this in a different way from Alexander Polakov.
2012-09-09 19:47:47 +00:00
okan
f4e0469f06
support multibyte input to menu code; from Alexander Polakov with a tiny tweak.
2012-08-07 14:05:49 +00:00
okan
9e50f2e028
Further simplify Xinerama init and re-init on XRR events.
...
While testing for Xinerama during setup was done display-wide, each time
XineramaQueryScreens() is called either in start-up or due to an XRR
event, the library re-tests for the Xinerama extension anyway before
moving on; so the initial test is redundant and allows another global to
go away with one other change: always fill in sc->xinerama (and _no),
regardless of the success of malloc in XineramaQueryScreens(), and use
it to see if Xinerama dimensions exist when asked by client and/or menu
code.
2012-07-18 21:53:22 +00:00
okan
476b0dcf17
unify various max routines to match client placement and partially menu ones
...
when calculating screen dimensions.
2012-07-16 01:53:14 +00:00
okan
8a8244095d
check value
2012-07-16 01:42:00 +00:00
okan
147b66e3ac
move the HasXinerama check into screen_find_xinerama and simplify logic;
...
moves closer to logic in menu code.
2012-07-16 01:36:30 +00:00
okan
94b92cf7fb
re-use geom struct in client_ctx (saved)geometry.
2012-07-13 17:01:04 +00:00
okan
6ee7c6534f
convert xmax/ymax uses to view geometry.
2012-07-13 15:21:35 +00:00
okan
3f2059e461
introduce screen "view" area and "work" area (gap applied) to simplify
...
various blocks that require understanding the screen geometry.
2012-07-13 14:18:04 +00:00
okan
3ce93c9b3b
fix atom for setting WM_STATE.
2012-07-08 02:55:01 +00:00
okan
8260032aee
fix atom for retrieving WM_STATE between re-exec's.
2012-07-08 02:50:41 +00:00
okan
0ec36603b5
remove a redundant assignment and another one up.
2012-07-08 01:00:24 +00:00
okan
37bdf57a02
querying for Xinerama should be done per display, not per screen, so
...
move chuck to display init; allows some shuffling to occur limiting
screen_init_xinerama()'s scope while keeping order intact.
2012-07-06 14:18:00 +00:00
dcoppa
78655b3e88
Add a couple examples of keybindings using keysyms, as discussed
...
with okan@ and sthen@.
OK okan@, sthen@
2012-07-06 08:41:29 +00:00
okan
43b628a3d0
the display's width and height are updated after an XRandR event so we
...
don't need to pass down the new values to screen_update_geometry(); so
just read the width/height values directly for both uses of
screen_update_geometry(). prep for further changes in this area.
2012-07-05 17:35:13 +00:00
okan
e52aef56f0
assign and use screen ctx where appropriate and consistently.
2012-07-04 23:42:03 +00:00
okan
3a1ddcb19e
use the screen ctx since we already have it assigned.
2012-07-04 18:07:12 +00:00
okan
74ef1605a1
fix missing atom (WM_PROTOCOLS) wrt new style handing; without this, the
...
window manager didn't know if a client supported CLIENT_PROTO_DELETE and
thus used a hammer, XKillClient.
behaviour reported by Tim van der Molen.
2012-07-04 18:00:13 +00:00
okan
d24974f4cb
re-implement atom handing; makes for a normalized and more consistent
...
separation between cwm and ewmh. seen by a few.
2012-07-03 13:49:03 +00:00
okan
50687e789b
get rid of more stray lines/spaces
2012-05-16 21:57:21 +00:00
okan
838f6a5713
instead of using the menu window for _NET_SUPPORTING_WM_CHECK, create a
...
dummy one to use instead; allows us to not have to wait for menu_init(),
so re-shuffle _NET_SUPPORTED slightly.
ok sthen@
2012-05-16 01:17:14 +00:00
okan
61a281d1f3
fix comment
2012-05-16 01:10:11 +00:00
okan
adfd269db7
cycle through other common cycling modifiers; based on a diff from
...
Alexander Polakov.
ok sthen@
2012-05-16 01:09:17 +00:00
okan
abc316c162
convert from deprecated XKeycodeToKeysym to XkbKeycodeToKeysym
...
ok sthen@
2012-05-16 01:04:36 +00:00
okan
87d3c25241
altpersist->cycling to be more clear that this is for cycling mod
...
persistence; based on a diff from Alexander Polakov, in preparation for
looping through other potential cycling modifiers.
2012-05-13 15:17:13 +00:00
okan
6dcdd18c5a
knf, some from a diff from Tiago Cunha.
2012-05-13 15:15:54 +00:00
okan
dcfe652e93
wrap long lines; from Tiago Cunha.
2012-05-10 00:39:47 +00:00
okan
41a86560b4
fix section order: move AUTHORS below HISTORY; from Tiago Cunha
...
ok jmc@
2012-05-09 18:37:39 +00:00
pascal
0bb9a6d6a1
kill useless .Pp
...
ok jmc@
2012-05-07 21:25:29 +00:00
okan
42304914dc
check if we're in the group already, else multiple calls to
...
group_movetogroup() on one client will still increment nhidden if the
group is hidden.
found the hard way by Thomas Jeunet and fix from Alexander Polakov -
thanks to both!
ok oga@
2011-12-29 20:48:38 +00:00
okan
a396addc5c
put snapdist in the correct location; as an option, not a bind; Tiago Cunha.
...
ok oga@
2011-11-06 02:03:47 +00:00
okan
6f33ccac59
rename variable to reduce potential for name-space collision.
...
bikesheding and ok oga@.
2011-10-17 18:18:38 +00:00
okan
66bb8d02da
use xfree instead of free since strings is allocated with xmalloc; from
...
dhill
ok oga@
2011-10-12 15:43:50 +00:00
okan
7a6e2b9d5a
move client to group (movetogroup) and hide client only if group is
...
already hidden (suggested behavior from Alexander Polakov).
ok sthen oga
2011-09-19 07:23:03 +00:00
okan
e18bdf5702
fix spelling I keep getting wrong for some unknown reason; found by and
...
diff from Alexander Polakov.
2011-09-13 09:17:30 +00:00
okan
5d6aec2db4
add WM_TRANSIENT_FOR event support: moves dialogs, toolbars and such to
...
the group of the main application window; based on a diff from Alexander
Polakov with CLIENT_IGNORE flag suggestion from oga@.
ok oga@
2011-09-13 08:41:57 +00:00
okan
780e9cb0df
repair groupcycle (broke after cycle-in-group support added more flags);
...
found by and fix from Thomas Pfaff.
ok oga@
2011-09-13 08:37:49 +00:00
okan
3f2d53b6dd
allow configurable menu font color; from Alexander Polakov with a tweak
...
from me.
ok oga@
2011-09-08 12:35:33 +00:00
okan
107bc37429
allow menufg/menubg to be configurable; from Alexander Polakov.
...
ok oga@
2011-09-08 12:07:03 +00:00
okan
9ab59987f7
reinit menu on reload; from Alexander Polakov. needed for catching
...
upcoming menu config changes.
ok oga@
2011-09-08 12:00:49 +00:00
okan
9dabac6117
restore a comment and add another for clarity.
2011-09-05 07:37:55 +00:00
oga
d341c2bfd8
Make flavours of maximisation additive.
...
i.e. horiz-max + vertmax = full maximisation. full - horiz = vertmax.
etc.
Martynas wrote something like this once, so I did okan, this version
seems to finally deal with the corner cases.
ok okan@.
2011-09-04 16:59:31 +00:00
okan
d1b5022611
split off window hints from geometry so we don't need to carry them all
...
around when dealing with {,h,v}max. same idea from oga.
2011-09-03 09:42:33 +00:00
okan
ed6f73250e
simplify color initialization.
...
ok oga@
2011-09-03 09:25:39 +00:00
okan
aa9dbd1dca
Add {r,}cycleingroup to cycle through clients belonging to the same
...
group as the active client (as opposed to all unhidden clients); from
Alexander Polakov, with a tiny tweak requested by oga.
ok oga@
2011-09-03 09:20:58 +00:00
okan
f93ec1eba0
"defaultfont" is unclear (and confusing while reading code) when it also
...
applies to the user supplied font, so rename.
ok oga@
2011-09-03 09:17:16 +00:00
okan
d44962b456
zap unused macro. ok oga@
2011-08-29 09:10:49 +00:00
okan
dda3ed6180
restore mouse move via the keyboard, noticed by todd@. while the check
...
for cc was wrong due to the fact that cc->sc is always filled in during
the event, we don't even need it - just operate on the focused screen's
root window regardless.
ok todd@ oga@
2011-08-29 09:09:45 +00:00
oga
af80ac7042
A while ago I wrote some code to not warp to ignored windows on map (rev
...
1.52), not realising that the previous (less efficient) fix had already
been commited (rev 1.50).
Had this in my tree for ages to remove the previous code. Effectively
reverts rev 1.50.
ok okan@
2011-08-22 16:34:34 +00:00
okan
661c8ef1c1
revert r1.11 of parse.y and create logic in conf_setup instead to deal
...
with the various scenarios of when to attempt a parse of the config,
load defaults, and when to warn and/or exit. triggered by bogus warning
first noticed by sobrado@.
ok oga@
2011-08-22 16:18:05 +00:00
okan
648d5b0b39
Re-draw borders after reloading, not before; from Alexander Polakov.
...
ok oga@
2011-07-26 08:51:24 +00:00
okan
3826753e1a
use the menu border; from Alexander Polakov, but with the existing define.
...
ok oga@
2011-07-25 15:41:05 +00:00
okan
bd65f03126
We are inconsistent when it comes to function returns, so just go all
...
the way with the cwm specific parts.
ok oga@
2011-07-25 15:10:24 +00:00
okan
24bf547e5f
Clarify defines and make them not look like non-local ones; started by a
...
small diff from Thomas Pfaff.
ok oga@
2011-07-23 13:09:11 +00:00
okan
df02d70181
correct spelling; from Alexander Polakov.
2011-07-14 11:39:53 +00:00
okan
33023ff923
UTF8-ify, from Alexander Polakov, but without setlocale(), after
...
feedback from stsp@ - thanks!
'go for it' oga@
2011-06-27 12:46:54 +00:00
okan
9eac37010a
warn if we can't parse the config file on start, just like we do on reload.
...
part of a larger diff that was ok oga@
2011-06-25 13:37:05 +00:00
okan
5f2753dc80
Since cwm(1) uses the same parser as others in src, document how
...
comments and line extensions work. Taken from sthen@'s recent
commit in src.
ok sthen@
2011-06-25 13:12:56 +00:00
okan
0fd446f068
add 'normal' cursor and shuffle the others we use to make a bit more
...
sense and to be slightly less un-expected. from Alexander Polakov.
re-use 'normal' cursor now instead XC_hand1 for menu selection. i
really wish X had real docs and made sense.
ok on earlier diff with '?' removed (but it's back now) oga@
2011-06-24 06:52:23 +00:00
okan
53fbeb4e7a
New option to raise a client via the mouse (unbound by default);
...
opposing action, lower, already exists and bound. Both keyboard
mappings already exist.
'no opinion either way' oga@
2011-06-24 06:09:26 +00:00
okan
ffa68ab4a0
introduce a new config option to snap to the screen edge. 'snapdist'
...
keyword taken from a diff from Sviatoslav Chagaev to do the same thing,
but implemented in a completely way (based on some very old code from
mk@). default set to 0, so no behavior change.
ok oga@ (who would also like to take it further...)
2011-06-24 06:06:24 +00:00
okan
c800341623
re-do various bits of {,h,v}max for simplicity and less flag handling.
...
as a bonus, flipping between various combinations of vmax+hmax provides
a more predictable behavior.
commitski oga@
2011-06-24 06:01:47 +00:00
okan
5e2c6f5c05
replace the non-working check to see if another wm is running with a
...
method that actually works. checking for icccm compliant wm's should
also be done first, but that's another diff (noted by oga).
ok oga@
2011-06-24 05:58:51 +00:00
okan
c1530aea4c
more nitems usage.
...
ok oga@
2011-06-24 05:54:30 +00:00
okan
2f0f43df32
re-order sweep draw so that we map into the client window after
...
re-parenting; from Sviatoslav Chagaev.
ok oga@
2011-06-24 05:51:25 +00:00
okan
74252c7d0a
struct XftFont already has height which we can use directly instead of
...
calculating ourselves, so do so.
ok oga@
2011-06-24 05:45:57 +00:00
okan
08f0ea6df6
alter a few function returns and prototypes; found by lint.
...
ok oga@
2011-06-24 05:40:09 +00:00
okan
cfdfe3cdd9
Correct extern declaration and while here, rename a variable to be
...
pedantic.
from Thomas Pfaff.
ok oga@
2011-06-24 05:33:41 +00:00
okan
209974b036
collapse client and group {r,}cycle defines since they are really
...
the same thing.
ok oga@
2011-06-24 05:30:42 +00:00
naddy
2e88a2b0e8
switch to installing source manuals:
...
* cope with new bsd.man.mk
* update imake configuration
ports use of imake remains unchanged
2011-06-23 22:48:59 +00:00
okan
3d9ed32226
fix botched client and group cycle defines; noticed by Thomas Pfaff.
...
"no cookie! fix it" - oga@
2011-05-15 17:58:47 +00:00
okan
dc3d407467
remove left over XSync; ok oga@
2011-05-13 12:53:19 +00:00
okan
4fb00eca7b
tag and comment cleanup; ok oga@
2011-05-11 13:53:51 +00:00
okan
b1f11d8dc6
introduce a new 'freeze' flag (CMS-f by default) which may be applied to
...
any window, after which all move/resize requests will be ignored,
essentially freezing the window in place.
there's a possibility to merge this with the 'ignore' concept, pending
on how ignore+freeze should behave (really more ewmh stuff), but punting
for now since ponies are on the line.
requested and tested by thib at k2k11 with ponies, unicorns and rainbows.
'save the unicorns' todd@, ok oga@
2011-05-07 17:15:37 +00:00
oga
a1517de675
On map, don't warp to windows that are marked as ignored.
...
Requested by Christian Neukirchen last august. He provided a patch but the one I
wrote was significantly simpler (1 - 2 + in the whole diff).
makes sense to okan@.
2011-05-06 19:39:44 +00:00
okan
28ba33af91
bump window resize back to 60hz. instead, we should not need to sync
...
every time we move/resize a window, so remove XSync in both mouse move
and resize events. tested by Brynet as well.
ok oga@
2011-05-05 19:52:52 +00:00
okan
800a938556
re-org. ok oga@
2011-05-05 16:40:37 +00:00
okan
d4b279e29e
make the menu window aware of xinerama info; this makes the menu stay
...
within the current screen, like other cwm window placements and
mutations (vmax/hmax/max) - from Sviatoslav Chagaev.
ok oga@
2011-05-05 15:32:24 +00:00
okan
98c5b36dbb
revert the XSync timing change for client move only; first noticed by
...
brynet.
sure oga@
2011-03-23 07:27:32 +00:00
okan
4c04a27385
warp the pointer back, iff we don't move the mouse, once we are done
...
with the menu; idea and initial from Sviatoslav Chagaev.
discussion with and ok oga@
2011-03-22 13:50:40 +00:00
okan
9a52c582b1
we should re-focus the client and ungrab the ptr even if we don't have a
...
mouse based match (i.e. in the kbd no match case). update the comment
as well.
ok oga@
2011-03-22 11:09:52 +00:00
okan
482c4ce498
fix nousance of always highlighting the first entry even when there is
...
no match (seen in the ctrl-a case)
ok oga@
2011-03-22 11:05:13 +00:00
okan
d0a487aa3d
move the default case to the end.
...
ok oga@
2011-03-22 11:03:05 +00:00
okan
a9420f917b
reduce the number of times we sync during a window resize.
...
ok oga@
2011-03-22 10:59:08 +00:00
okan
1494c3e4c9
introduce nitems macro, with the appropriate ifndef.
...
ok oga@
2011-03-22 10:57:31 +00:00
okan
2de4639d4c
if virt/horz un-maximizing, restore only the un-maximized axis
...
coordinates; allows moving a client and not restoring the maximized axis
coordinates.
picked from a larger martynas diff from ages ago.
ok oga@
2011-03-22 10:56:08 +00:00