Dana Jansens [Sat, 2 Feb 2008 14:01:56 +0000 (09:01 -0500)]
make fullscreen windows more xinerama and multi-screen aware
instead of calling it every time a window loses focus, it is only called when a window gains focus. then, check fullscreen layered windows, if they should be moved to a lower layer.
when moving a window between monitors, also check its layer and that of any fullscreen windows.
let a window stay in the fullscreen layer even when it is not focused, if it is on a non-visible desktop, or if it is on a different monitor from the focused window, or if nothing else is focused
Dana Jansens [Sat, 2 Feb 2008 05:59:59 +0000 (00:59 -0500)]
fix a crash from chroot of invalid keys, and make keybindings reload better
since invalid(not translated) keybindings are allowed in the tree, the tree's structure may actually need to change when reconfiguring. actually, it could need to anyways. so when re-translating all the keybindings, actually rebuild the keybinding tree. also, make the chroot building code not fail when translate fails, to match the rest of the code and avoid segfaults with chroots on invalid keys.
Dana Jansens [Thu, 31 Jan 2008 22:31:51 +0000 (17:31 -0500)]
when checking that a window is onscreen, if there are screens with higher indices than where it appeared, they would trump things and force the window onto the first screen. now, only assume the window is on no screens if it actually is on no screens
Dana Jansens [Mon, 28 Jan 2008 14:59:45 +0000 (09:59 -0500)]
don't deiconify windows on reconfigure if they cant be iconified directly. stop managing windows in reverse order on restart it messes up the dock among other things
Mikael Magnusson [Tue, 29 Jan 2008 13:04:31 +0000 (14:04 +0100)]
Mark translations without the new desktop number mismatch message as 3.4.5.
Update swedish translation with them.
[ I mistakenly originally made this commit on 3.4-working (commit 7f514044f7fb8f5c2948d9b3da837a9b46717ee5) so the changes got lost on a
subsequent merge from backport when we usually overwrite po/. ]
Dana Jansens [Sun, 27 Jan 2008 08:14:35 +0000 (03:14 -0500)]
only store icons for windows that are 64px or smaller, as we don't have need for any bigger icons at this time. unless they only provide icons bigger than that, then just store one of them (the smallest)
Dana Jansens [Fri, 25 Jan 2008 15:20:21 +0000 (10:20 -0500)]
Create fake enter events in fewer situations - avoiding times that you don't actually want them. Ignore event serials without using XSync, so that we aren't doing an XSync 100 times per minute - slow!
Dana Jansens [Thu, 17 Jan 2008 00:21:42 +0000 (19:21 -0500)]
make the ping hash tables work correctly. don't need to stop pinging, it will automatically. and not all windows get pings, even tho we get notified that they are being destroyed
Dana Jansens [Wed, 16 Jan 2008 23:44:22 +0000 (18:44 -0500)]
use hash tables in ping.[ch] instead of a list. we're pinging every window, not just windows youre trying to close, so don't use datastructures that suck with lots of windows..
Mikael Magnusson [Wed, 16 Jan 2008 14:25:08 +0000 (15:25 +0100)]
Various fixes for sparse warnings.
Define void functions with (void), not ().
Add missing includes.
Some functions were declared static but defined non-static.
Some variables that should be file static were file global but not used in any other file.
prop.h defined a new prop_atoms in each file that included it instead of declaring it extern.
Dana Jansens [Wed, 16 Jan 2008 03:34:04 +0000 (22:34 -0500)]
ping all the windows every 3 seconds, and show "not responding" if they stop replying for 3 times (9-12 seconds). show [Killing...] in the titlebar when trying to kill an app off
Dana Jansens [Wed, 16 Jan 2008 03:13:16 +0000 (22:13 -0500)]
when you close an app and it stops responding.. if you hit close again, it will try kill -TERM. if that fails and you close again, it will kill -9 ! (assuming the app is running on the local host and provided its PID)
Dana Jansens [Wed, 16 Jan 2008 00:36:36 +0000 (19:36 -0500)]
remove the visible window title hints when unmanaging a window. not all WMs set those and it messes them up, and we'll set them again appropriately, they don't need to be saved.
Dana Jansens [Sun, 13 Jan 2008 08:40:14 +0000 (03:40 -0500)]
don't skip windows that are skip_taskbar unless they are normal typed.. i.e. if a dialog sets this don't skip it (gnome shutdown/logout dialogs don't get focused otherwise in arch linux)
Dana Jansens [Sun, 13 Jan 2008 07:50:34 +0000 (02:50 -0500)]
sync when killing all keyboard grabs, so that we can be sure they are gone before proceeding (fixes a race condition when running things that want to grab the keyboard very quickly. yes, arch is that fast somehow..)
Dana Jansens [Sat, 12 Jan 2008 04:16:06 +0000 (23:16 -0500)]
since the internal windows are in window_map now, it's possible we'll get them back when we check what window an event happened on. so don't abort if that happens anymore.
Dana Jansens [Fri, 11 Jan 2008 23:57:32 +0000 (18:57 -0500)]
don't take KeyRelease events for menus until they receive a KeyPress event first. avoid using the key binding used to show the menu to execute something inside it.
Don't record desktops for lastdesktop when switching away quickly again.
When switching desktops, only record the previous desktop as the last
desktop if the user stayed there for a while. This way you can scroll
over a couple desktops quickly, then go back to the previous desktop
you _used_, not the last you scrolled past.