summaryrefslogtreecommitdiff
path: root/app/cwm
AgeCommit message (Collapse)Author
2009-01-23Whitespace nit.Owain Ainsworth
pointed out by okan.
2009-01-23Switch to using XInternAtoms for caching the atom numbers. Saves a pileOwain Ainsworth
of function calls and server roundtrips. ok okan@
2009-01-23move conf_clear() and add proto.Okan Demirmen
ok todd@ oga@
2009-01-23Move the keybinding argument to a union to prevent warnings whereOwain Ainsworth
sizeof(int) != sizeof(void *). This has been annoying me for ages. ok okan@, todd@
2009-01-22now that pwin is gone gone gone, we no longer have to do the bwidthOkan Demirmen
dance; xevents now able to deal with a border being set (which fixes those annoying movie-watching apps). ok todd@, oga@
2009-01-22The default font name is strduped, so don't test for default font nameOwain Ainsworth
(therefore leaking it) when cleaning up a conf struct. ok okan@
2009-01-22Oops, missed an atom.Owain Ainsworth
ok okan@.
2009-01-22Cache all of the X atoms we use at startup.Owain Ainsworth
Do this instead of querying for them every time we use them. This removes an XXX that has been in there since time began. This will become more important as we move towards supporting netwm. ok todd@, okan@.
2009-01-21borderwidth as a cwmrc(5) keyword, really helps debuggingTodd T. Fries
from okan@ ok oga@
2009-01-19library dependency ordering matters for static archs, -lXext last in this caseTodd T. Fries
from matthieu@, verified on vax
2009-01-17remove unusedOkan Demirmen
ok oga@
2009-01-17Finally fix the really annoying race where if you rapidly switch groups severalOwain Ainsworth
times you'd end up losing clients (thinking they had gone away). From the ICCCM (which should not be read without a stiff drink in hand, I made this mistake so you don't have to): to request a window to be withdrawn one should send a synthetic UnmapRequest event when iconified. To request iconification one should just unmap the window. The ICCM further recommends that the synthetic event should just be taken as a cue to withdraw, to deal with legacy clients. Taking a hint from this, rework xev_handle_unmaprequest to correctly detect these situations. A Withdrawn window may come back anywhere, even as a subwindow of something else, so the correct way to handle this state is to forget it ever existed. While i'm here, kill a dumb attempt to notice this in client_delete, and nuke the very unnecessary arguments. Todd confirmed this fixes the `race'. ok todd@, ok ok okan@
2009-01-16revert just the 'race fix'; more works needs to be ironed out withOkan Demirmen
events and state. agreed by oga
2009-01-16remove pwin, bringing us to one client, one window. we no longer haveOkan Demirmen
to push attributes around, so things get a lot simplier, while fixing a few issues in the meantime; original suggestion by Edd Barrett many many moons ago. annoying window placement and race, found in c2k8 by todd, fix by oga! lots of feedback from todd and oga - thanks! "commit that bad boy" oga@
2009-01-15On startup, don't leak memory when we enumerate existing windows.Owain Ainsworth
The behaviour until now was to ask X for the windows name (which is malloced) then drop that on the floor and do nothing with it. Skip this foolery and just skip the window. I don't believe I never noticed this before! "you can has ok" okan@
2009-01-15- add missing prototypes.Okan Demirmen
- properly name, place and static private functions. - move function which finds the xinerama screen for a coordinate to a more appropriate place while altering its semantics to match others. - tiny bit of style. ok oga@
2009-01-13better cast; noticed by ray@Okan Demirmen
ok ray@ oga@
2009-01-11Add -Wall to CFLAGS, it's helped find a few dodgy constructs.Owain Ainsworth
ok okan@.
2009-01-11shortcut_to_name should not be defined as static in a header file. PutOwain Ainsworth
it in group.c where it it used most, and add an extern definition for the other users of it. Found by gcc -Wall. ok okan@
2009-01-11add missing prototypesOkan Demirmen
ok oga@
2009-01-11better comparison idiom; found with -WallOkan Demirmen
ok oga@
2009-01-11- merge grab_sweep() into mousefunc_window_resize().Okan Demirmen
- merge grab_drag() into mousefunc_window_move(). - properly name, proto and static private functions. - since we already do XMoveResizeWindow() and XMoveWindow() in (now) mousefunc_window_resize() and mousefunc_window_move() respectively, client_resize() and client_move() calls are unnecessary. ok oga@
2009-01-11FcNameParse() manpage lies, cast here.Okan Demirmen
found with pcc. ok oga@
2009-01-11remove unused variablesOkan Demirmen
ok oga@
2009-01-08If the mousebutton is unknown when we go to grab, don't just print aOwain Ainsworth
warning, but also skip the XGrabButton call. Noticed by code inspection by okan@, but we agreed my fix was cleaner. ok okan.
2009-01-06remove "search should ignore the current window" from list, for theOkan Demirmen
current behavior is better... ok oga@
2009-01-06HasXinerama is an intOkan Demirmen
ok oga@
2009-01-06remove unused codeOkan Demirmen
ok oga@
2008-12-04Kill obviously dead variable.Owain Ainsworth
2008-12-03Don't ignore sigpipe. Everytime cwm forks it execs anyway (so itOwain Ainsworth
shouldn't get that signal), and this causes problems for our children since they inherit the ignore. Pointed out by Jacek Masiulani in pr 6010; thanks!
2008-09-29Xinerama and XRandR dual head support for cwm(1). Now we detect the xrandrOwain Ainsworth
reconfiguration events and change our sizes depending on that. We also detect the xinerama screens for maximize, vertmaximize and initial window placement. This could be improved by automatically resizing maximized windows when the screen resolution changes and by moving windows that would be hidden into visible space. Said changes will come shortly. Tested by many. matthieu@ didn't oppose.
2008-09-22.Bl needs a matching .El. From Martin Toft a while ago, thanks!Owain Ainsworth
2008-09-22Improve wording of the ``ignore'' directive. From Martin Toft a whileOwain Ainsworth
ago, ok okan@ from similar amount of time ago.
2008-09-22*sigh* Revert the diff that wasn't meant to go in yet.Owain Ainsworth
note to self: When you mean to type cvs commit search.c, don't forget the filename.
2008-09-22Display the current window title not a previous one in the case ofOwain Ainsworth
``show all'' in the window search dialogue. Noticed and diff from Tim van der Molen, thanks!
2008-09-03Keep the exec menu entries sorted.Can Erkin Acar
Go for it okan@
2008-07-22fix the froggy problem.Owain Ainsworth
Implement a handler for the MappingEvent, meaning that the keymap has changed. When this happens, ungrab all bindings, update the map, and regrab. Fixes the problem where some keybindings wouldn't work under non us or uk keymaps (especially the .fr map, it seems). Issue noticed by ajacoutot@, ratchov@, and a few people on misc. Based on an initial diff from ratchov@. ok okan.
2008-07-22We've been handling grabbing wrong all this time (noticed at c2k8).Owain Ainsworth
add conf_grab() and conf_ungrab, and use them in the keybinding manipulation functions to {,un}grab the binding for all screens we have defined. the lovely little ordering problem comes in here, since when we parse the config initially Screenq is empty, so regrab after we fill the queue, hopefully later reordering will remove this little need and there will be much rejoicing. ok okan.
2008-07-22split x_setup() into two. dpy_init() for setting up the display andOwain Ainsworth
checking the X config, and x_setup to set up the screens. There's an ordering problem that means that some of this init needs to come after the config is parsed, the rest should ideally happen before though. This is a rough split, it will be refined later. Again, needed for an upcoming change. ok okan.
2008-07-22Add xu_key_ungrab() and a mirror to xu_key_ungrab(). a couple of changesOwain Ainsworth
that are coming up depend on it. ok okan.
2008-07-22Kill screen_init(). it's been stubbed out for a while now. I don't envision itOwain Ainsworth
coming back in it's current form. ok okan@.
2008-07-22kill another leftover prototype.Owain Ainsworth
ok okan@
2008-07-18Put back the initialisation of gc in group_cycle. No cookie for okan.Owain Ainsworth
Reported by Dan Harnett, thanks!
2008-07-15move client_vertmaximize to a more sensible location, purely for readability.Okan Demirmen
"don't mind at all" oga@
2008-07-15save an X call and use what we already have stored.Okan Demirmen
ok oga@
2008-07-15don't compensate for bwidth twice.Okan Demirmen
ok oga@
2008-07-11Nm makes more sense than Xr, from Pierre Riteau - thanks!Okan Demirmen
2008-07-11Change "a window" to "current window" in documentation. it's more correct.Owain Ainsworth
While i'm here: Capital letter and full stop in descriptions in cwmrc.5 "looks good - do it" okan@.
2008-07-11add Xr for cwm(1)Okan Demirmen
2008-07-11no more hidden (and mysterious) config reloads and allow binding a keyOkan Demirmen
to a config reload; CMS-r by default. ok oga@