Commit Graph

667 Commits

Author SHA1 Message Date
c5a76f1d5b - 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
9cad4c73b3 honor PATH search order for exec; from Andres Perera. 2013-04-03 19:28:00 +00:00
ec4474a33a 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
fbb0df4155 replace handrolled for loop with TAILQ_FOREACH; from andres.p@zoho.com 2013-03-09 21:55:56 +00:00
47aa485fa2 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
62acbee4b3 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
3a7596968b 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
bf9d981597 teach screen_find_xinerama() about gap and adjust (simplify) callers;
menu becomes gap-aware for free.
2013-01-08 04:12:51 +00:00
e7b85cfb2f 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
4ffe56b9a3 revert previous 2013-01-07 21:45:24 +00:00
7c4ed94757 unbreak xinerama support from r1.41 for panning setups 2013-01-07 20:32:19 +00:00
c426254da5 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
6d123cd96d rename {h,v}max functions for consistency; from Jan Stary 2013-01-04 16:30:03 +00:00
579f981718 really these are just border colors, so adjust the define 2013-01-04 16:27:58 +00:00
96adffcd9d spacing 2013-01-04 16:23:51 +00:00
698530155d get rid of struct color 2013-01-04 16:23:04 +00:00
c139df129c pass the screen workarea, as opposed to viewarea, allowing client
snapping to honor gap.
2013-01-02 21:41:14 +00:00
2ac65bd288 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
6e5dda99a6 merge in Xinerama screen query; no functional change. 2013-01-02 18:11:23 +00:00
ce8ef02ed2 have screen_find_xinerama() return struct geom *reliably* instead of
XineramaScreenInfo; simplifies goop around the callers.
2013-01-02 16:26:34 +00:00
e492ed8e41 more variable consistency 2013-01-02 02:19:20 +00:00
2d28b71a1b info->xine, for consistent variable names 2013-01-02 02:02:08 +00:00
afb3648440 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
ccbb1f1529 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
6cb334e503 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
0957fbbee2 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
dc1e3a8843 gc unused cmd 'flags' variable 2012-12-19 15:21:34 +00:00
c565b790ed expand CHILDMASK 2012-12-18 18:39:55 +00:00
86eaf5e973 use MOUSEMASK since we already have it 2012-12-18 18:35:36 +00:00
31e9fe4dcd remove unused SEARCHMASK 2012-12-18 17:44:18 +00:00
e5d59c2d7b define LockMask|Mod2Mask; no functional change 2012-12-18 17:37:39 +00:00
b848a2b236 simplify config file setup; with Tiago Cunha 2012-12-18 00:14:41 +00:00
479e9f769c put a default known_hosts into conf 2012-12-17 23:54:57 +00:00
75f65f399e 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
fe44d1dfce cmap -> colormap in client_ctx 2012-12-17 18:35:26 +00:00
af13c08108 stash the default screen visual and colormap in screen_ctx 2012-12-17 18:34:06 +00:00
82e8ec4245 replace client highlight with a client flag 2012-12-17 17:48:57 +00:00
8e67d1389c make client_mtf static 2012-12-17 14:58:46 +00:00
3a3e0383b2 create and use menuq_clear() helper; from Tiago Cunha 2012-12-17 14:32:39 +00:00
d651c1cc3b current_client() returns _curcc, so use it where appropriate 2012-12-17 14:26:29 +00:00
980c6de1ff screen font -> xftfont 2012-12-17 14:20:52 +00:00
96cd288a2a knf 2012-12-17 02:53:29 +00:00
6900cd3612 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
a3aaad2c18 zap extra lines 2012-11-29 16:50:03 +00:00
560acb43fc specific last match for autogroup; few iterations with Kent Spillner. 2012-11-29 04:25:49 +00:00
7edabe94f2 x_setupscreen -> screen_init; no functional change. 2012-11-29 03:54:46 +00:00
5947879dfb remove dead extern 2012-11-29 03:34:19 +00:00
3e151f8c76 add xasprintf() for upcoming changes. 2012-11-28 14:32:44 +00:00
2b9d921eda 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
fad4798e5b replace hand rolled font_make() with XftFontOpenName() and merge into
font_init().
2012-11-28 14:14:44 +00:00