Commit graph

224 commits

Author SHA1 Message Date
Marco Peereboom
d1fd84da26 At least dwc is consistent in is ability to violate KNF. 2009-10-04 06:05:57 +00:00
Marco Peereboom
b9e81d2e7f Add some serialization. Prevents some crashes under extreme load.
Not happy with it yet but it beats shitting X.  This will never be seen
under normal load.
2009-10-04 05:58:27 +00:00
Marco Peereboom
cc252be109 oops use right structure in mapevent and create a mappingevent too... 2009-10-04 04:30:41 +00:00
Marco Peereboom
5c8f4d24fa shuffle some stuff around to make more sense 2009-10-03 22:20:11 +00:00
Marco Peereboom
d13a63373b Focus the right window when cycling through visible screens.
Since we are warping the pointer put it in the right windows as well.
2009-10-03 21:43:07 +00:00
Marco Peereboom
0b529de4f6 More love for unmapping transients. Basically force parent's focus. 2009-10-03 21:31:05 +00:00
Marco Peereboom
f0f8e548df More max stack love. When destroying a transient refocus parent. 2009-10-03 20:35:01 +00:00
Marco Peereboom
98582a35ee unfuck max_stack once more. Still a bug lurking when a transient has foucs
and we switch ws back and forth.
2009-10-03 16:46:20 +00:00
Marco Peereboom
a916f33b0a Add +1 adfter a cyclescreen to give root_to_region a better chance of
working.
2009-10-02 20:00:20 +00:00
Marco Peereboom
8b4eb944cf Add stacking indicator in the bar. Purdy :-) 2009-10-02 19:50:05 +00:00
Marco Peereboom
ecc997a84e Fix max_stack after the synchronization fallout. 2009-10-02 17:45:12 +00:00
Marco Peereboom
c134f284dd Fix max_stack again and some autofocus nits.
Remove some mapping stuff and xsyncs.
2009-10-02 15:40:43 +00:00
Marco Peereboom
1238969254 Still can make it crash under extreme stress but it is the best combination
Some of the XSyncs need to go but too tired to figure out which
2009-10-02 06:18:41 +00:00
Marco Peereboom
f5d47f225a Fix monkey on keybored issues. 2009-10-02 03:28:46 +00:00
Marco Peereboom
cbdb48ff3e Do nothing when switching screens with keyboard when only on one screen.
Make the dummykeyfunc and legacyfunc look a little less like c++
Remove hiding windows when chaning xrandr on the fly since stack deals
with it and it ws causing issues with making windows dissapear.
2009-10-01 21:51:50 +00:00
Marco Peereboom
cb5c5c3b1a Fix bug where a transient destroy would not give back the focus to the
parent when the mouse was over the transient window.
2009-10-01 21:27:19 +00:00
Marco Peereboom
7976b49314 Make ignore_enter binary. The counter sometimes got off. 2009-10-01 21:15:38 +00:00
Marco Peereboom
d788faf4cf Fix apps that unmap windows but don't destroy them leaving an ugly hole
in the stack.  I am talking to you VLC.
Fix a bug where trans might be set to some garbage in mange_window
Still run into a bug that I can't explain.  It is there with your name on
it mcbride; yes really i wrote down where in the code ;-)
2009-10-01 21:08:22 +00:00
Marco Peereboom
8812058034 fix max_stack for real 2009-10-01 15:17:17 +00:00
Ryan McBride
6a26c21e75 Stop annoying flicker when a hidden workspace is mapped into a different
region from where it was before (the windows are raised over that old
workspace before being restacked in the correct location). Do this by
keeping track of where the workspace USED to be, and deferring the
XMapRaised() until stack() if the new location does not match the old one.
2009-10-01 09:51:31 +00:00
Ryan McBride
31f5dfdc37 Actually, DON'T set the ws->r to a bogus value.
It's perfectly legal for us to start managing a window in a workspace
that's not active - for example, when we start a process and change
workspaces before the window is created, or when scrotwm restarts.
2009-10-01 09:44:09 +00:00
Marco Peereboom
5229928497 Mostly fix max_stack. Only known bug is that the focuses window doesn't
always end up on top.  Attempts to fix that were unsuccessful.
2009-09-30 21:23:55 +00:00
Marco Peereboom
3b1be00edc OMG fix a 100 year old ryan bug that has been pissing me off since regions
got introduced and i pretended it was a quirk.
2009-09-30 20:15:02 +00:00
Marco Peereboom
840c2ac2b6 One more of cur_focus fallout 2009-09-30 18:08:58 +00:00
Marco Peereboom
13f0f8ce2e Fix move_to_ws as fallout from killing cur_focus 2009-09-30 18:02:18 +00:00
Marco Peereboom
75821e934e Sprinkle some if (running == 0) around sensitive spots; seems to make the
intel chip not fuck itself all the time on exit.
2009-09-30 17:19:03 +00:00
Marco Peereboom
4a52579466 fix switchws after M-q by trying harder to find a focus window. 2009-09-30 16:45:24 +00:00
Marco Peereboom
85cb80b39a Add an extra font that more people likely have.
From Juergen Daubert <jue@jue.li>

Add a "lose focus after ws fix" for slow launching apps such as gimp.
This will likely break xrandr multi screen but that is a fix for later.
2009-09-30 04:21:49 +00:00
Marco Peereboom
7dae26a162 Make sure we open transient in same ws as parent; this does not work 100%
on intel xrandr.  It seems that the intel driver switched the geometry
so that 0.0 isnt in the top left corner or something.
2009-09-29 22:35:02 +00:00
Marco Peereboom
cecd90ba6a Fix yet a few more corner cases of focus woes. We are down to 1 bug.
Damn you transients!
2009-09-29 21:23:59 +00:00
Marco Peereboom
5bc67cb7a8 And kill got_focus 2009-09-29 19:01:50 +00:00
Marco Peereboom
e4db6aa24a Continuing cleanup of focus. Clean all known nits in xrandr too.
Warp pointer to screen 0 when multi screen on restart.
Remove some dead code.
2009-09-29 18:59:09 +00:00
Marco Peereboom
3a97b91dd1 First round of cur_focus cleanup. 2009-09-29 15:06:37 +00:00
Marco Peereboom
d1911117b1 Bite the bullet and add some signal handling to reap them children.
Kill cur_focus that caused all kinds of grief.  This, deliberately, has not
been cleaned yet.  The idea is to completly overhaul the focus code that
is slimy and stinky.  Oh and it has all kinds of rotten dead code as well.
2009-09-29 14:25:40 +00:00
Marco Peereboom
de776ba84d Fix stupid lib install location, from sthen 2009-09-26 16:40:08 +00:00
Marco Peereboom
8954cdcdbf Add dumpevent and clean up some dwc debug goop. 2009-09-25 19:25:29 +00:00
Marco Peereboom
a674220643 Remove an unused var. 2009-09-23 12:02:35 +00:00
Marco Peereboom
6f1b66f723 Never unmange windows when unmapping. 2009-09-23 04:55:46 +00:00
Marco Peereboom
33babfbdd7 Make sure we unmange windows in non active workspaces; this sometimes
lead to leftover blank holes.

Fix some non c89 shit too.
2009-09-23 04:20:51 +00:00
Marco Peereboom
bab419a56d Fix nasty stacking bug that windows don't appear if they are the only
transient one in a workspace.
2009-09-23 03:34:58 +00:00
Marco Peereboom
fe7e01e141 Fix missing $ from tobiasu.
Bad dwc!
2009-09-17 02:11:34 +00:00
Marco Peereboom
41b210549d Fix library path so that i don't waste a bunch of time every time i test
scrotwm
2009-09-13 20:38:04 +00:00
Darrin Chandler
370f758d74 cleanup debug code 2009-09-12 21:41:28 +00:00
Darrin Chandler
6bc2fbd59f Too big diff. Includes:
* Fix unbind, reported by Paul Irofti <bulibuta@sdf.lonestar.org>
  * Fix many memory leaks
  * Add custom program spawning & key binding to config

Man page additions to follow soonish.

"if you are confident it is done then get it in" marco@
2009-09-12 21:32:21 +00:00
Darrin Chandler
5f73b94a87 whitespace police. no actual changes. 2009-08-30 18:16:41 +00:00
Darrin Chandler
0717d488f8 Fix crash on NULL class/name strings in bar. Reported by and similar diff
from Gregory Edigarov.

ok marco
2009-08-16 15:50:52 +00:00
Darrin Chandler
53da032ea7 Switch config quirks from '|' to '+' to be consistent with other config
items.

With previous conf_load changes, space within [] are allowed, so class
and name can appear as-is.

Switch config file and man page to match.

Old behavior still allowed for compat with existing configs out there,
but not documented anywhere.

Prodding by marco for the first bit, at least.
2009-08-11 16:43:30 +00:00
Darrin Chandler
1610a87015 Remove fixed-length limitation on window class and name as used by quirks.
Removed from html TODO list.

Overhaul conf_load to better deal with foo[bar]= syntax. Conf_load now
does the bulk of the parsing, individual config functions now call funcs
to actually set the values.

ok pyr, marco
2009-08-11 16:20:55 +00:00
Darrin Chandler
6d36d6dbef Some class/name strings can be long. Bump up SWM_QUIRK_LEN to 64. It's not
surprising that it was a Java app that tripped this up. Leaving dynamic
allocation for a later commit.

ok marco
2009-08-01 19:59:12 +00:00
Darrin Chandler
251c87928a Fix bar spacing for when class:name is followed by other stuff. 2009-06-07 16:55:06 +00:00