Dana Jansens
1c2ec09e43
fix a memleak in client_update_icon_geometry
2008-01-25 10:32:39 -05:00
Dana Jansens
01a60706be
fix a mem leak
2008-01-25 10:29:49 -05:00
Dana Jansens
6a8a8531ba
check them startupnotify-provided wmclass against both parts of a window's wm_class hint, as the spec doth say so.
2008-01-20 09:52:10 -05:00
Dana Jansens
cccc57fdb0
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
2008-01-16 19:21:42 -05:00
Mikael Magnusson
0be98fee47
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.
2008-01-16 15:35:25 +01:00
Dana Jansens
053558dc5f
add a comment
2008-01-15 22:53:05 -05:00
Dana Jansens
f9f32d9fba
cant consistently tell if we should use WM_DESTROY after the first time they try close a window.. so just kill when "not responding" is showing
2008-01-15 22:51:04 -05:00
Dana Jansens
d5c824cfd4
only ping windows that we need to
2008-01-15 22:36:45 -05:00
Dana Jansens
810afd8597
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
2008-01-15 22:34:04 -05:00
Dana Jansens
dbce9ee243
its possible we did kill -TERM and it stayed alive and started responding again, so handle that case
2008-01-15 22:15:45 -05:00
Dana Jansens
e6d33facc8
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)
2008-01-15 22:13:16 -05:00
Dana Jansens
07994cb2dc
when you close a window that you already tried to close and its not responding to pings, then do a kill the next time
2008-01-15 22:00:21 -05:00
Dana Jansens
d3e9fc8941
show [Not Responding] in the titlebar when closing an app and it stops responding to pings
2008-01-15 21:57:47 -05:00
Dana Jansens
fb7a71da20
can tell when a window that was "closed" has stopped responding now
2008-01-15 21:43:23 -05:00
Dana Jansens
d790dc162d
check if a client will respond to pings
2008-01-15 20:48:28 -05:00
Dana Jansens
ed51baa958
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.
2008-01-16 02:08:42 +01:00
Dana Jansens
6dfc3c726a
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)
2008-01-13 03:40:14 -05:00
Dana Jansens
9e9a7e124d
allow dialog windows to be fullscreened, kpdf does this
2008-01-11 09:46:07 -05:00
Mikael Magnusson
556eb7b7fb
ANSI function declarations, ie () -> (void)
2007-09-04 06:27:10 +02:00
Mikael Magnusson
e5c7c95f2d
Squash one more leak
2007-08-07 04:24:48 +02:00
Dana Jansens
fa085b7338
fix edge detection, it was skipping edges sometimes
2007-08-04 17:39:49 -04:00
Dana Jansens
ac59dd4fe5
don't focus new windows if they appear on another desktop and a relative is not focused
2007-08-04 12:57:34 -04:00
Dana Jansens
6593261f30
new least-intrusive focus stealing prevention
2007-08-03 18:11:27 -04:00
Dana Jansens
dacc9dac7a
remove focus-stealing-prevention stuff, don't use user_time crap at all. it is broken in every application that has ever used it. ever. ever. \^_^/;;;
2007-08-01 23:35:31 -04:00
Dana Jansens
80120d0487
don't force oldschool fullscreen windows to move inside struts (fixes acroread some more, along with previous commit)
2007-08-01 19:09:30 -04:00
Dana Jansens
44802ea327
fix for acroread - don't shrink windows when they specifically fit an entire monitor
2007-08-01 18:54:02 -04:00
Dana Jansens
9aed919554
fix directional edge finding for xinerama, so that it can skip across to the next monitor
2007-07-26 10:48:05 +02:00
Dana Jansens
bca44f9d20
raise new windows when they aren't getting activated in a couple cases
...
1. when we're not activating it because the user has a menu open or is moving/resizing a window
2. when we're not activating it because it's opening on another desktop
2007-07-24 14:51:59 -04:00
Dana Jansens
84cdb2be99
don't focus new windows when the user is in a menu or move/resizing a window
2007-07-21 23:11:42 -04:00
Mikael Magnusson
77baf26a7f
remove trailing whitespace
2007-07-17 02:48:16 +02:00
Dana Jansens
a9f2b2c681
a number for placing windows, to keep them on screen, but let you place them off-screen
...
1. when a window is not on any monitor, don't just ignore it, stick it on the first monitor arbitrarily (rather than the closest monitor - room for improvement?)
2. when placing a window with per-app settings, don't rudely force it back on screen fully.
2007-07-15 12:35:10 -04:00
Dana Jansens
fd8af998ea
was incorrectly using the width for calculations instead of the height in client_find_onscreen
2007-07-15 11:45:55 -04:00
Mikael Magnusson
8ad51aef1e
80 cols everywhere
2007-07-14 15:22:35 +02:00
Mikael Magnusson
355981bf14
use dock_get_area instead of accessing dock struct directly
2007-07-13 16:14:02 +02:00
Mikael Magnusson
fc32204f3c
split out edge detecting code a bit so it is easy to add the dock area and do that too
2007-07-13 14:37:15 +02:00
Dana Jansens
abff95bc50
only add group transients when you have a group
...
Signed-off-by: Dana Jansens <danakj@orodu.net>
2007-07-12 16:30:05 -04:00
Dana Jansens
4b73574406
adding trunk
...
Signed-off-by: Dana Jansens <danakj@orodu.net>
2007-07-12 02:57:08 -04:00
Dana Jansens
6f79080a4b
fix grow to edge stuff. also fix key-resizing terminals.
2007-07-11 23:47:41 +00:00
Dana Jansens
aa901a8ee7
comment
2007-07-11 00:56:45 +00:00
Dana Jansens
489844da32
fix for weird group transient crap.
...
2 group transients
+ 1 direct transient of one of the above
--
the other group transient would be a child of the direct transient.
it's friggin annoying to look for this. i had to destroy my super clever but
impossible to maintain client_update_transient_tree in order to do it, and add
redundant execution, where children update their transient trees when a parent
does.
2007-07-11 00:56:12 +00:00
Dana Jansens
ad8a7e2e02
grow to edge works again, using the new edge detection code
2007-07-10 20:47:10 +00:00
Dana Jansens
0d0ce065df
don't focus helper windows that map unless there are no other valid targets in the group (don't move focus from a group window to a new helper window).
...
this fixes gucharmap.
2007-07-06 19:41:23 +00:00
Dana Jansens
e0e1b7a5cb
move to edge works and the code can be used for resize now too, yay
2007-07-06 04:08:30 +00:00
Dana Jansens
01a35904fe
rewrote the movetoedge code so it works with both types of edges (to edge and from edge)
2007-06-28 05:18:01 +00:00
Dana Jansens
52b63adfe1
remove excessive debug print
2007-06-23 15:41:36 +00:00
Dana Jansens
c62fefb067
always reconfigure the window to its new position even if it was fullscreened/maxed, because the pre-max/fs area may not match its actual current area, and this can lead it things not being updated
2007-06-23 05:11:39 +00:00
Dana Jansens
1e6c375fdd
add the moveto action
2007-06-22 15:18:43 +00:00
Dana Jansens
29c4cf4a15
add the activate action. it will replace the focus action, as it can just focus without raising now (or without unshading)
2007-06-22 04:59:06 +00:00
Dana Jansens
19ecd4d6d4
look, thumbnails in alt-tab. its such crap though. oh well, just for fun.
2007-06-21 16:20:43 +00:00
Dana Jansens
0e2492a501
don't resize windows when they are user size _or_ user positioned
2007-06-19 21:24:02 +00:00