aboutsummaryrefslogtreecommitdiffstats
path: root/calmwm.c (unfollow)
Commit message (Collapse)AuthorLines
2014-02-01Let the config parser continue parsing even after encountering an error;okan-7/+5
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-01-28Move conf_init/clear into main - no behaviour change; from Tiago Cunha.okan-2/+5
2014-01-22cwm_argv doesn't need to be global any longerokan-6/+6
2014-01-22start properly releasing X resources during teardownokan-1/+20
2014-01-22Somewhat streamline event loop/restart/quit handling; most notableokan-2/+15
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-21Sprinkle a few more const; from Tiago Cunha.okan-2/+2
2014-01-03use consistent typesokan-2/+2
2013-12-12ICCCM explicitly states that server time (CurrentTime) should *not* beokan-1/+2
used for focus events, but rather the timestamp of the generated event. Track the last event timestamp and send it down for a WM_TAKE_FOCUS ClientMessage. I suspect we should do this for clients that don't announce this Atom as well, though the raciness gets us into a bind. Solves focus order issue since WM_TAKE_FOCUS; fix verified by sthen@ ok sthen@
2013-07-15simplify atom handling; allows us to limit to one round-trip to serverokan-2/+4
for gathering Atoms.
2013-07-08whitespace and style fixes; from Tiago Cunha and one from me.okan-4/+2
2013-06-17move Cursors into conf.okan-12/+2
2013-06-17now that we have conf_screen, which configures individual screensokan-13/+6
*after* config parsing, we no longer need to split up display/screen initialization, so collapse.
2013-05-22get rid of long standing XXX: now that we configure screens based onokan-9/+1
config options, add the keybinding GrabKey calls here
2013-05-14if -> ifdefokan-2/+2
2013-04-12makes no sense to set an error handler which uses X_Dpy before XOpenDisplay.okan-3/+1
2013-04-12push Screenq into screen_initokan-7/+3
2012-12-18simplify config file setup; with Tiago Cunhaokan-4/+19
2012-12-17pull user home directory via getenv or getpwuid and stash it so we don'tokan-1/+12
need to do this everytime; with Tiago Cunha
2012-12-17non-trivial menu drawing rewrite, moving to Xft and solving variousokan-6/+1
font/color drawing issues; from Alexander Polakov
2012-11-29zap extra linesokan-3/+1
2012-11-29x_setupscreen -> screen_init; no functional change.okan-58/+2
2012-11-09sortokan-2/+2
2012-10-31replace 'reload' with 'restart', which merely re-exec's cwm using theokan-1/+3
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-08-07support multibyte input to menu code; from Alexander Polakov with a tiny tweak.okan-1/+6
2012-07-18Further simplify Xinerama init and re-init on XRR events.okan-6/+3
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-06querying for Xinerama should be done per display, not per screen, sookan-12/+5
move chuck to display init; allows some shuffling to occur limiting screen_init_xinerama()'s scope while keeping order intact.
2012-07-05the display's width and height are updated after an XRandR event so weokan-3/+3
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-05-16instead of using the menu window for _NET_SUPPORTING_WM_CHECK, create aokan-3/+4
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-13knf, some from a diff from Tiago Cunha.okan-1/+3
2011-09-08allow configurable menu font color; from Alexander Polakov with a tweakokan-2/+1
from me. ok oga@
2011-07-25We are inconsistent when it comes to function returns, so just go allokan-4/+5
the way with the cwm specific parts. ok oga@
2011-07-23Clarify defines and make them not look like non-local ones; started by aokan-3/+3
small diff from Thomas Pfaff. ok oga@
2011-06-24add 'normal' cursor and shuffle the others we use to make a bit moreokan-11/+12
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-24replace the non-working check to see if another wm is running with aokan-20/+21
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-05-11tag and comment cleanup; ok oga@okan-1/+1
2010-04-12grab events on the root window *before* we look for existing windows.oga-7/+7
This closes a race we were hitting often where stuff started right before cwm may not get noticed and not have borders. ok okan@. Prompted by something todd noticed.
2010-01-27- allow per-screen gap; not (yet) user configurable.okan-1/+2
- teach _NET_WORKAREA about gap. ok oga@
2009-12-15pull all non-X11 headers from calmwm.h and place them only where theyokan-1/+11
are required. encourged to go all the way by oga@
2009-12-15pull these headers only into files that need them.okan-1/+4
ok oga@
2009-12-15merge the 2 common header files; specific includes to be pulled out asokan-2/+1
separate commits. ok oga@
2009-12-10Implement _NET_CURRENT_DESKTOP, _NET_DESKTOP_VIEWPORT andoga-12/+5
_NET_DESKTOP_GEOMETRY. ok okan@
2009-12-10finish unfucking the screen_ctx handling.oga-8/+3
remove screen_current() it was utterly bogus when nscreens > 1. pass a fake client_ctx in the case where there's no client and the kbfunc or mousefunc doesn't need a real one, it just contains the current screen, modify these functions so that they pass down the screen context to their callees. make groups per screen, it's the only way it makes sense in this regard. ok okan@.
2009-12-08start fixing screen_ctx usage, for it is utterly broken. bring fontokan-3/+3
into screen_ctx and start passing screen_ctx around to in order get rid of Curscreen; fixup per-screen config colors the same way. diff mostly from oga@, with a bit harsher reaction to the state of screen_ctx. "please commit" oga@
2009-12-07Implement _NET_NUMBER_OF_DESKTOPS, currently this is statically 9 andoga-2/+9
unchangable. the group code needs some cleaning up before this will be a bit less hackish. ok okan@
2009-12-07introduce the beginnings of netwm support, minimally and correctly;okan-1/+3
allows java to be happy, but additionally stops others from whinning about a non-netwm complaint wm. more to come. written a few times; this one includes a clever hack from oga@ to populate _NET_SUPPORTED. ok oga@
2009-08-24Instead of having a function that just calls TAILQ_INIT on a global, useoga-5/+3
TAILQ_HEAD_INITIALIZER() and drop the function. ok okan@
2009-06-26static local functions and data; almost identical diff from Thomas Pfaffokan-8/+7
ok oga@
2009-06-23tidy up startup/init routinesokan-6/+6
ok oga@
2009-06-20unroll XCALLOC/XMALLOC macros; since we use xcalloc/xmalloc all over theokan-2/+2
place anyway, this makes things a bit more consistent; from Thomas Pfaff ok oga@
2009-05-18nuke the leading underscore notation for local static functions - thereokan-4/+4
are far better ways to know. "go for it" oga@