Commit graph

2144 commits

Author SHA1 Message Date
Dana Jansens
eb09b1873d move focus_cycle_indicator into its own file 2007-05-19 14:36:19 +00:00
Dana Jansens
40f789e641 2007-05-19 14:22:20 +00:00
Dana Jansens
d307a36893 add missing include for new header 2007-05-19 14:16:23 +00:00
Dana Jansens
718adbae65 move focus cycling into its own file 2007-05-19 14:15:28 +00:00
Dana Jansens
3d7c2f45ec 80 cols 2007-05-19 13:45:16 +00:00
Dana Jansens
9752670920 remove a function that is no longer used. and backwards boolean algebra was causing us to not ignore the right enter events 2007-05-19 00:38:06 +00:00
Dana Jansens
7ee54ff106 get rid of the serials for ignoring enters.. 2007-05-18 23:40:13 +00:00
Dana Jansens
6142eb3a48 when done iconify animating, send a configure notify (this fixes kde's pager showing the window in the wrong place) 2007-05-18 15:20:03 +00:00
Dana Jansens
6d26502631 super correct enter event ignoring that will only ignore what it has to, yay? 2007-05-18 00:11:01 +00:00
Dana Jansens
9451205cf1 but don't count the same enter events more than once still 2007-05-17 23:21:52 +00:00
Dana Jansens
ae269d77ca fix a comment 2007-05-17 23:21:09 +00:00
Dana Jansens
bba37f0cd1 ignore enter events without disrupting the event queue 2007-05-17 23:20:50 +00:00
Dana Jansens
18ef3dce1c re-staticify this function 2007-05-17 23:14:59 +00:00
Dana Jansens
e47499a07c don't ignore the same enter events more than once 2007-05-17 23:11:14 +00:00
Dana Jansens
a71c91abe5 old comment 2007-05-17 13:35:35 +00:00
Mikael Magnusson
c8b4710755 static makes more sense than inline i think 2007-05-17 09:20:16 +00:00
Dana Jansens
9d004f517b name of the action_undecorate atom was wrong 2007-05-17 04:16:20 +00:00
Dana Jansens
382d37553d add an atom ob_wm_action_undecorate to match with ob_wm_state_undecorated, so stuff could know if the window can be undecorated 2007-05-17 04:15:34 +00:00
Dana Jansens
f9a79e6062 a little check that catches firefox and other buggy apps, which set the same wmcommand across sessions on different window types. type is a pretty obvious check its hard for it to be a false alarm 2007-05-17 03:31:20 +00:00
Dana Jansens
c6dac85397 don't let the user toggle decorations on widnows that don't have any decorations to toggle 2007-05-17 02:29:13 +00:00
Dana Jansens
3c590a5851 kill enter events without using pointer grabs 2007-05-17 02:23:35 +00:00
Dana Jansens
281c1edb42 kill enter events without using pointer grabs 2007-05-17 02:21:22 +00:00
Dana Jansens
b1076c9333 rename client_configure_full to client_configure 2007-05-17 01:45:00 +00:00
Dana Jansens
cfce6b8f4d simpler code yay 2007-05-17 01:43:29 +00:00
Dana Jansens
2ca83f6713 grab the pointer when windows move them selves so no enter events happen. i wonder if this will cause but reports. it still does for restacking though..
little cleanup in client.c, and remove client_configure macro which was now
redundant
2007-05-17 01:38:01 +00:00
Dana Jansens
619eeaa962 grab the pointer accross actions run by the applications, the same as for
actions run by the user
2007-05-17 00:56:29 +00:00
Dana Jansens
4fdf8a4315 "fullscreen" windows that are undecorated by the user do not count as legacy fullscreen windows 2007-05-17 00:50:09 +00:00
Dana Jansens
b69bf80982 fullscreen only if no decorations 2007-05-16 17:01:47 +00:00
Dana Jansens
5a1a3c2b12 comment what i did 2007-05-16 03:08:49 +00:00
Dana Jansens
3addcd8bb9 don't queue showmenu events, and set button to 0 when a grab is in place after the buttonpress event is run 2007-05-16 03:07:17 +00:00
Dana Jansens
d30809e5fa always ignore errors for client_focus like we used to. 2007-05-15 17:38:52 +00:00
Dana Jansens
d3e524420f revert r6485, for backwards compatibility 2007-05-15 16:07:16 +00:00
Dana Jansens
3ddc053ccd that broke flashing 2007-05-15 04:44:15 +00:00
Dana Jansens
2a203eb5dc fix a comment 2007-05-15 04:34:11 +00:00
Dana Jansens
361bf6af5c simplify focus handling a bit. no need to listen to focus going to the frame because if it ever does that, the window is unmapping and the frame will just unmap and send it to root.
make focus fallback a lil more robust, it checks for errors when it sets focus on the window, and if an error occured it will focus the next option.
2007-05-15 04:32:59 +00:00
Dana Jansens
f5597c060e try draw the decorations sooner 2007-05-15 03:47:56 +00:00
Dana Jansens
9c5e87069e don't do this stuff when it's already done. save bandwidth. 2007-05-15 03:47:39 +00:00
Dana Jansens
6194c9796c save some rendering 2007-05-15 03:46:51 +00:00
Dana Jansens
9aa5ca29ae updates for the build system. always set Openbox on the support window 2007-05-15 02:32:49 +00:00
Dana Jansens
5d85502e3b also if you hide the focused window, then kill the interactive action so focus isnt all confused for the app 2007-05-14 23:34:05 +00:00
Dana Jansens
47c8d40729 don't assert, users can bind stuff however they like. but if they do something that moves focus during an interactive action, kill the grab 2007-05-14 23:32:50 +00:00
Dana Jansens
b7827484ef ungrab the keyboard for passive grabs. kill interactive actions for exec actions. don't ungrab the keyboard during interactive actions though. 2007-05-14 23:31:41 +00:00
Dana Jansens
8f2291a7b6 excep the assert was backwards. heh 2007-05-14 23:22:06 +00:00
Dana Jansens
f5d7952a94 big scary g_assert(). interactive actions should never move focus until they're done. 2007-05-14 23:21:53 +00:00
Dana Jansens
f9fe78d970 get rid of the fullscreen below layer. its the same as maximized windows.. 2007-05-14 23:00:36 +00:00
Dana Jansens
66db9aef34 use the right cursor for moveresize 2007-05-14 22:59:43 +00:00
Dana Jansens
ec21f8c9ec yay for simplifying code. if we check for errors we dont need the "focus_tried" stuff 2007-05-14 22:58:08 +00:00
Dana Jansens
1b2c6f609d always ungrab keyboard before doing a noninteractive action (which will ungrab before doing its real action business).
too bad we cant ungrab the mouse too.
2007-05-14 22:53:32 +00:00
Dana Jansens
415ce6e5de watch for errors while setting focus on windows, return false if there was an error, so fallback and keep looking 2007-05-14 22:52:40 +00:00
Dana Jansens
2e7359a2fd fix fullscreen windows being stuck in the wrong layer when they come out of
fullscreen.
add a new layer where fullscreen windows go when are aren't focused, below
all normal windows, so you can alt-tab to a below layer window and it will
show itself.
2007-05-14 22:20:48 +00:00
Dana Jansens
f58ece6095 remove config namespaces 2007-05-14 21:32:12 +00:00
Dana Jansens
b906db3e11 remove the dialog option for Desktop action for now. can't change desktop during a grab. the dialog for desktop changing will need to change, and then we can add it back 2007-05-14 20:55:36 +00:00
Dana Jansens
ff7eb1ea3d some debug prints 2007-05-14 13:47:03 +00:00
Dana Jansens
9011eb27e0 remove this check, it didnt guarantee anything anyways 2007-05-14 13:44:49 +00:00
Dana Jansens
a019ee1028 add a debug action.. change focus debug output a lil, no grab events 2007-05-14 03:40:03 +00:00
Dana Jansens
26ff0cbaa8 the configurenotify needs to come after adjusting the frame's size. otherwise it gets messed up somehow. 2007-05-14 02:27:43 +00:00
Dana Jansens
1a5139f283 send a configurenotify on mapping after the window is shown 2007-05-14 02:20:59 +00:00
Dana Jansens
4ff717355a don't listen to focus events in the dock, unless you're going to do it properly 2007-05-14 02:06:34 +00:00
Dana Jansens
7af7ee05aa fix a comment 2007-05-14 01:07:26 +00:00
Dana Jansens
9d7608789c another little focus cleanup/rearrangement, for focus going to windows that
are no longer there.
2007-05-14 01:06:42 +00:00
Dana Jansens
53e75c5be4 we don't need to save the config type in the session because if they dont run their DE with the openbox-*-session command, openbox won't be loaded anyhow. and if they do, they the var will be set and doesn't need to come from the session. 2007-05-14 00:41:30 +00:00
Dana Jansens
5a3154df08 add --debug-xinerama 2007-05-14 00:28:16 +00:00
Dana Jansens
1eff22b1ef remove some old checking because we're not using window properties to store the premax/fullscreen areas. they are always set when the state is turned on.
fullscreen to the correct monitor.
2007-05-14 00:07:38 +00:00
Dana Jansens
83bd9e1d5a change now the keyboard is ungrabbed before executing actions. instead, ungrab it just before calling exec. other actions don't need it ungrabbed, and this way the release doesn't get sent through to programs for our keybindings. except for exec i suppose. 2007-05-13 23:51:55 +00:00
Dana Jansens
9fcb2aa1d2 add grab/ungrab macros so dont need to pass in 10 arguments to ungrab stuff.
add a confine option to grab_pointer to confine the pointer to the screen, and use that for moveresize
2007-05-13 23:30:52 +00:00
Dana Jansens
627125a6c6 set the cursor before using it 2007-05-13 23:19:56 +00:00
Dana Jansens
03136a081a only do moveresize when grab is successful 2007-05-13 23:18:44 +00:00
Dana Jansens
66af88b27c only set focus_client to null if the window losing focus was the focus_client 2007-05-13 23:13:15 +00:00
Dana Jansens
0c173e1577 set focus_client when focus leaves a window 2007-05-13 23:11:16 +00:00
Dana Jansens
334f9df7aa don't unset the config namespace so that if you rerun it, it uses the same one. this is for dev work, really.
also, recompiled man pages
2007-05-13 23:01:04 +00:00
Dana Jansens
5c96972bff save the config type in the session command line arguments 2007-05-13 22:57:42 +00:00
Dana Jansens
6171dbf970 when using openbox-gnome/kde-session, use a separate config file (rc-gnome/kde.xml) 2007-05-13 22:49:20 +00:00
Dana Jansens
0ef82a1bda but rename ob_pid back to openbox_pid for backwards compatibility. this will go away entirely soon. 2007-05-13 22:33:04 +00:00
Dana Jansens
99e23015cf rename the openbox_* atoms back to ob_* 2007-05-13 22:31:36 +00:00
Dana Jansens
2676b61b0f missing a header 2007-05-13 22:30:58 +00:00
Dana Jansens
49b6e6ac0a let unfocus action go back to the same window. you should be doing some other action above it that will change where focus can end up 2007-05-13 22:12:11 +00:00
Dana Jansens
65a176330a dont set focus_client to NULL when sending focus to nothing, let that happen from the FocusOut events 2007-05-13 21:57:00 +00:00
Dana Jansens
3acd5ff0c5 fix for wrapping in desktop cycling 2007-05-13 21:17:32 +00:00
Mikael Magnusson
73e7b2925a fix error in client_directional_edge_search that ignored all windows in the same layer 2007-05-13 21:13:29 +00:00
Dana Jansens
eb7a3a0638 im just leaving the dock alone.. 2007-05-13 21:08:50 +00:00
Dana Jansens
7a39cb3e8d no strut for docks that autohide 2007-05-13 21:06:23 +00:00
Dana Jansens
3adadb955e resist all layers 2007-05-13 20:38:19 +00:00
Dana Jansens
7fddf2abc2 some focus fixes. always set the new focus when we fallback or else weird states appear. better handling of focusin's on clients that don't exist? 2007-05-13 20:35:44 +00:00
Mikael Magnusson
2b2245851d restore code that keeps popups on screen 2007-05-13 20:04:30 +00:00
Dana Jansens
ecde8e8f73 reorganize --help. dont error if they use a --sm stuff and sm isn't enabled 2007-05-13 19:23:37 +00:00
Dana Jansens
e28cbd61c1 kill grabs before xsetinputfocus 2007-05-13 18:27:58 +00:00
Dana Jansens
b67e98842c reset the pager popup's size after reconfigure 2007-05-13 17:28:52 +00:00
Dana Jansens
0ec49ac781 comment 2007-05-13 17:22:48 +00:00
Dana Jansens
94d9d069b5 add a debug line 2007-05-13 17:17:23 +00:00
Dana Jansens
11df262d7e add support for _NET_WM_ACTION_ABOVE and _NET_WM_ACTION_BELOW which aren't in the NETWM spec yet, but will be shortly. 2007-05-13 17:15:15 +00:00
Dana Jansens
0ee1581824 fix drawcontents=no 2007-05-13 16:45:58 +00:00
Dana Jansens
2fdad9a0ff no more losing focus from wm_torture -t map_response
when a focusin comes for an invalid target, set that focus has wandered off, so
that when the focusout comes in afterwards we can react accordingly
2007-05-13 16:39:04 +00:00
Dana Jansens
fd9b6a43cf always send configure notify when windows map 2007-05-13 16:04:40 +00:00
Dana Jansens
c23741290c fix directional focus 2007-05-13 15:40:16 +00:00
Dana Jansens
56d7bc50f0 don't allow focus to move during an interactive grab. if users set up actions
such that this would happen, then kill the interactive grab before moving
focus.
this is to avoid NotifyWhileGrabbed FocusOut's
2007-05-13 15:29:49 +00:00
Dana Jansens
acfa2af3c2 use the right list in client_add_hide_notify, rename destructor to destroy_notify which is really what it is, and is more consistant now that there are 2 notifies 2007-05-13 07:45:15 +00:00
Dana Jansens
9f22554b6a when i said it handled both cases, i was mistaken, so use a callback for each case. 2007-05-13 07:40:02 +00:00
Dana Jansens
685dca1c5f likewise if a window is unmanaged and we were trying to give it focus, we want to know about it - also if the window gets hidden for some other reason, we also want to know about it.
add a notifier for windows being hidden, and use that instead - it handles both cases.
2007-05-13 07:38:35 +00:00
Dana Jansens
1e957a1688 some changes to focus handling.
most interesting is the change in focus_fallback, which means that it won't
call xsetinput focus in some cases, potentially reducing flicker and stuff.
also potentially producing bugs? heh.

the screen.c focus fallback code doesn't seem to need special cases anymore,
which is really good, if that is really the case.

move the focus_tried stuff out of event.c into focus.c, where it seems to
belong.
2007-05-13 07:09:34 +00:00
Dana Jansens
f694c650c8 dont count focusin on the support window to be a focusin on a client 2007-05-13 05:51:08 +00:00