Dana Jansens
2a2008e837
always set focus_out, since a focusin can come first and mess up the old logic
2003-10-03 07:24:33 +00:00
Dana Jansens
2572f111e0
indenting
2003-10-03 07:07:57 +00:00
Dana Jansens
aa6bedd78b
remove debug prints
2003-10-03 07:05:36 +00:00
Dana Jansens
783f5aed00
run the event done stuff before firing queued actions
2003-10-03 06:56:54 +00:00
Dana Jansens
51780c10ea
hilight the fallback target before it actually gets focused to avoid flickering
2003-10-03 04:43:18 +00:00
Dana Jansens
6611c30854
let functions get which window would be selected on a focus fallback
2003-10-03 04:37:16 +00:00
Dana Jansens
242dc35a36
indenting
2003-10-03 04:27:44 +00:00
Dana Jansens
e2f3c00224
remove debug prints
2003-10-03 04:20:23 +00:00
Dana Jansens
4a14e50ae7
indenting
2003-10-02 04:21:37 +00:00
Dana Jansens
9bd60fd92b
dont queue up interative end actions
2003-10-02 04:06:40 +00:00
Dana Jansens
c88e66b8ff
use frame->visible instead of the desktop number
2003-10-01 17:51:20 +00:00
Dana Jansens
6f5292c87e
define DEBUG, NDEBUG, and G_DISABLE_ASSERTS
2003-10-01 17:28:12 +00:00
Dana Jansens
825426373c
remoce debug print
2003-09-29 17:10:28 +00:00
Dana Jansens
97e854b07d
use a client destructor to watch for focus_in/out becoming invalid
2003-09-29 16:32:53 +00:00
Dana Jansens
58977733d0
completely rework focus tracking. i hope this is sane... it seems to be working much better in every way thus far.
2003-09-29 10:06:19 +00:00
Dana Jansens
f81f352f4e
dont use the X done callback
2003-09-29 10:05:51 +00:00
Dana Jansens
c8565d21d4
provide a callback for when there are no more X events to process
2003-09-29 10:05:43 +00:00
Dana Jansens
c22a6b32ab
only fallback when nothing is focused, provide comment explaining why
2003-09-29 10:05:18 +00:00
Dana Jansens
9bac22eb40
indenting, focus fallback to None not PointerRoot
2003-09-29 10:03:28 +00:00
Dana Jansens
474a40754b
only do sloppy focus/raise if the client is not already focused
2003-09-29 08:02:16 +00:00
Dana Jansens
638fc4b70b
dont start a move/resize on clients that cant do it
2003-09-29 07:41:11 +00:00
Dana Jansens
8feba8518b
when a window is lowered, move it to the bottom of the focus order list
2003-09-29 07:25:00 +00:00
Dana Jansens
d50cf297e7
dialog options are no longer used
2003-09-29 06:59:46 +00:00
Dana Jansens
2c99038a0a
make the Desktop action default to non-interactive
2003-09-29 06:33:17 +00:00
Dana Jansens
43dabc2b9b
remove unused var
2003-09-29 03:37:12 +00:00
Dana Jansens
b7b187693e
start menus with the cursor inside it, not over the border, a little closer to the items..
2003-09-28 09:48:58 +00:00
Dana Jansens
a1be19e627
when nothing in a menu is selected, still let keybindings work
2003-09-28 09:47:17 +00:00
Dana Jansens
7101e30ed8
make the timeout apply to releases on menu items too
2003-09-28 09:31:23 +00:00
Dana Jansens
b8ba1cff1f
perhaps fix problems of being left in menus without being able to control openbox
2003-09-28 09:24:22 +00:00
Dana Jansens
8e63ffdabd
add option for under-mouse placement
2003-09-28 09:01:04 +00:00
Dana Jansens
fa962c1604
removing focusLast again..
2003-09-28 08:45:43 +00:00
Dana Jansens
f9c659c12c
fix resizing to 0 from aspect ratios
2003-09-28 07:38:55 +00:00
Dana Jansens
a434669d17
remove debug prints
2003-09-28 06:48:35 +00:00
Dana Jansens
dee3d68c22
try grab an icon even when there are none
2003-09-28 06:34:31 +00:00
Dana Jansens
f6ba1f27b9
halfway through client changes but...
...
should fix crashes irt actions in the action queue for clients that have been destroyed. now those actions are skipped or performed without a client as possible.
2003-09-28 06:31:00 +00:00
Dana Jansens
e30ae5696f
remove from parents when changing groups
2003-09-27 17:57:02 +00:00
Dana Jansens
0dfff40a30
formatting, add an assert
2003-09-27 17:50:28 +00:00
Dana Jansens
51cc41e4db
indenting
2003-09-27 17:39:44 +00:00
Dana Jansens
ac3a588266
properly show/hide the dialog for the Desktop action
2003-09-27 17:24:45 +00:00
Dana Jansens
26852af7a1
better focus fallbacking n shit
2003-09-27 06:42:34 +00:00
Dana Jansens
fbed66cc81
ok unfocus before removing transient shit, but remove focus related flags so we don't get focused in the fallback.
2003-09-27 06:41:00 +00:00
Dana Jansens
af7278b6e5
that was a really bad idea, i didnt mean it, i swear
2003-09-27 06:30:51 +00:00
Dana Jansens
bc1148f0b3
fix cancelling desktordir actions
2003-09-27 05:57:08 +00:00
Dana Jansens
4ae6be577d
some smarter focus fallback for sloppy focus
2003-09-27 05:31:40 +00:00
Dana Jansens
8aee387193
unfocus before unlinking the client from the transient tree
2003-09-27 05:19:15 +00:00
Dana Jansens
598bf575c8
allow focus and desktop actions to specify a <dialog>yesorno</dialog> value
2003-09-26 20:04:29 +00:00
Dana Jansens
ad29434250
remove the dialog options
2003-09-26 20:03:57 +00:00
Dana Jansens
90445487e1
dont use undermouse at all if focusNew is off
2003-09-26 19:39:33 +00:00
Dana Jansens
9e000dc6fd
use under-mouse placement *instead* of smart placement when using focus-follows-mouse AND focus-new-windows
2003-09-26 19:31:54 +00:00
Dana Jansens
0908816132
when looking for the focus target, search for modal children in the entire transient tree, not just children of the client on which focus is requested
2003-09-26 19:05:06 +00:00
Dana Jansens
49b848a2bb
smarter picking valid focus cycle targets
2003-09-26 19:04:18 +00:00
Dana Jansens
d5a1b96802
allow focus fallbacks to fullscreen windows
2003-09-26 18:19:35 +00:00
Dana Jansens
896098c961
use client_raise/lower instead of action_run_string
2003-09-26 18:18:15 +00:00
Dana Jansens
dfd524926e
add client_raise and client_lower which just fire off actions
2003-09-26 18:15:58 +00:00
Dana Jansens
411cc1d1d9
use actions for raising
2003-09-26 18:03:58 +00:00
Dana Jansens
54b8eb3bf3
bring back action_run_string,
...
use action_run_string for running actions from other actions
2003-09-26 18:02:39 +00:00
Dana Jansens
31b2dffbbe
use action_run_string for raising/lowering
2003-09-26 18:02:08 +00:00
Dana Jansens
bb541d850a
bring back action_run_string
2003-09-26 18:01:44 +00:00
Dana Jansens
fb341869b1
use an action only for Raise
2003-09-26 17:46:49 +00:00
Dana Jansens
1241a0cf0d
remove action_run_string, as this is not going to be a common thing I think
2003-09-26 17:46:27 +00:00
Dana Jansens
a51d2082bd
add a NONE user action, for internal stuff, ie running actions without direct user interaction (from anotehr action etc)
2003-09-26 17:30:32 +00:00
Dana Jansens
224927a7ae
dont iconify fullscreen windows, just recalc stacking orders when focus changes
2003-09-26 17:30:08 +00:00
Dana Jansens
a2849a728d
use actions to focus and raise the wnidow ni client_activate. this means the focus shit gets processed before the raise
2003-09-26 17:29:55 +00:00
Dana Jansens
eb51015bc3
dont run actions immediately. put them in the queue. add action_run_string for niternal use
2003-09-26 17:29:33 +00:00
Dana Jansens
87430acf34
queue up ObActions and run them when idle
2003-09-26 17:29:12 +00:00
Dana Jansens
adb9bb700f
give actions a ref count
2003-09-26 16:47:12 +00:00
Dana Jansens
9ed3baf9db
indenting
2003-09-26 15:33:11 +00:00
Dana Jansens
360d1659a1
checked the wrong var for unmaxing
2003-09-26 15:08:03 +00:00
Dana Jansens
4e8eff328c
add <dialog><focus/><desktop/> to allow disabling popups
2003-09-26 08:22:49 +00:00
Dana Jansens
b192784070
add <dock><moveButton> which can change which button combo is used to move dock apps around in the dock. The new default is A-Left instead of Middle, since soem dock apps use middle, assuming they can!
2003-09-26 07:59:06 +00:00
Dana Jansens
11615ac2c4
make the Desktop action an interactive one
2003-09-26 07:41:32 +00:00
Dana Jansens
07c3a31cf5
make the desktop popup a public function
2003-09-26 07:41:16 +00:00
Dana Jansens
2de2678e91
dont end moveresizes for interactive actions
2003-09-26 07:23:56 +00:00
Dana Jansens
365940477b
add some more client tree searching functions. make transients always get focused when a parent has focus, not just direct parents.
2003-09-26 07:08:07 +00:00
Dana Jansens
0a1b9352ca
comment the client_search_transient function
2003-09-26 06:49:45 +00:00
Dana Jansens
9933885493
dont include transients in raise/lower interactions
2003-09-26 06:47:02 +00:00
Dana Jansens
35dd3065a9
add ob_wm_state_undecorated to the net_supported hint
2003-09-26 05:11:49 +00:00
Dana Jansens
7dc01bbee7
remove debug print
2003-09-26 04:10:17 +00:00
Dana Jansens
40d58a1e34
use partial struts to determine struts properly for different xinerama heads
2003-09-26 01:40:13 +00:00
Dana Jansens
b4fa843575
add client_set_undecorated().
...
add support for the _OB_WM_STATE_UNDECORATED state hint.
2003-09-25 23:07:15 +00:00
Dana Jansens
b2dd343095
remove openbox_premax, add ob_wm_state_undecorated
2003-09-25 23:02:32 +00:00
Dana Jansens
caca123b90
dont use the _OPENBOX_PREMAX window property anymore, save max and fullscreen pre-areas in the client struct
2003-09-25 22:47:48 +00:00
Dana Jansens
62b3b8c57e
typo
2003-09-25 22:00:36 +00:00
Dana Jansens
1ee19207fb
fix a variable used without being initialized case
2003-09-25 22:00:07 +00:00
Dana Jansens
54ccb6a542
focus new children if their direct parent is focused
2003-09-25 19:01:45 +00:00
Dana Jansens
710f41e622
focus nwe transients when another window in their transient tree is focused
2003-09-25 06:41:17 +00:00
Dana Jansens
417bcd67ac
indenting
2003-09-25 05:23:08 +00:00
Dana Jansens
a3710c9601
ft was uninitialized
2003-09-25 04:34:47 +00:00
Dana Jansens
2d1b5d6e0a
handle the focus_cycle_target being destroyed during cycling
2003-09-25 03:00:30 +00:00
Dana Jansens
e4911d91c8
dont kill interactive actions when the client dies, just remove teh client pointer.
2003-09-24 18:32:05 +00:00
Dana Jansens
1213b079bb
add the ObClientActionReq to ObAction which says if an action needs a client for it or not
2003-09-24 18:20:49 +00:00
Dana Jansens
f68cf94d35
support the _KDE_NET_WM_FRAME_STRUT hint
2003-09-24 17:17:59 +00:00
Dana Jansens
624033c32d
support the _KDE_WM_CHANGE_STATE hint
2003-09-24 17:17:51 +00:00
Dana Jansens
847a3ef09a
remove the kde systray hints, add _kde_wm_change_state and _kde_net_wm_frame_strut
2003-09-24 17:17:34 +00:00
Dana Jansens
00d74f3d61
add PARTIAL_SRUT_EQUAL
2003-09-24 17:16:16 +00:00
Dana Jansens
89d964d9fe
hide the dock when reconfiguring otherwise the user has to move the mouse over it to make it hide the first time
2003-09-24 17:16:01 +00:00
Dana Jansens
4cf0d783f7
insert timers in the correct order
2003-09-24 16:56:46 +00:00
Dana Jansens
89286cbe83
fix problems with conflicing interactive desktop switching and send-to-ing
2003-09-24 06:29:09 +00:00
Dana Jansens
9f03493b0c
ignore all NotifyInferior crossing events again
2003-09-24 03:07:10 +00:00
Dana Jansens
6d1570210b
missing a \n
2003-09-22 17:50:05 +00:00
Dana Jansens
d10c538373
visible is in the frame struct
2003-09-22 05:41:16 +00:00
Dana Jansens
27eb1a7736
ignore non-visible windows too
2003-09-22 05:38:44 +00:00
Dana Jansens
74f36c587c
simplify the default bindings
2003-09-22 05:32:56 +00:00
Dana Jansens
87541ea377
s/Activate/Go there/
2003-09-22 05:04:34 +00:00
Dana Jansens
fe7eefc131
whitespace
2003-09-22 04:56:13 +00:00
Dana Jansens
33d4cd8bfd
gettextize the empty desktop string
2003-09-22 04:52:54 +00:00
Dana Jansens
4f3cffb847
change Switch To... to Activate...
2003-09-22 04:52:21 +00:00
Dana Jansens
a43303bdcb
dont need to swallow enter events on ungrab cuz we just ignore them all now
2003-09-22 04:23:00 +00:00
Dana Jansens
d5f9df0845
provide a means to properly ignore enter events for focus changes
2003-09-22 04:18:54 +00:00
Dana Jansens
f595277f1c
add back focusLast
2003-09-22 04:17:43 +00:00
Dana Jansens
f791f9a35e
eat enter events on desktop switch so that our own policy can be applied
2003-09-22 04:16:02 +00:00
Dana Jansens
f68066aa63
we always want to start with something focused, moving this to openbox.c
2003-09-22 04:14:32 +00:00
Dana Jansens
8b5619d0ad
add comment
2003-09-22 04:13:34 +00:00
Dana Jansens
2612dbf050
indenting
2003-09-22 03:37:22 +00:00
Dana Jansens
d9e08487df
when ending actions which can move windows, and we were using the mouse, instead of doing a focus fallback, which instantly focuses, and doesn't raise, we do an event_enter_client which simulates the act of entering the window with the pointer
2003-09-21 21:26:07 +00:00
Dana Jansens
6538a5ccb2
move the code to find the window under the pointer out of focus.c to client.c
2003-09-21 21:25:23 +00:00
Dana Jansens
6675b28ded
place so to avoid windows in layers above the window being placed!
2003-09-21 20:42:38 +00:00
Dana Jansens
1ad1e91e88
add glib.h include
2003-09-21 20:17:58 +00:00
Dana Jansens
b07194a7ae
add raiseOnFocus option
2003-09-21 20:17:50 +00:00
Dana Jansens
fe3fbbf210
fix race condition in focus delay
2003-09-21 20:17:23 +00:00
Dana Jansens
eaf9c36c2e
ignore ungrab enter notifies for focus
2003-09-21 19:42:01 +00:00
Dana Jansens
227d8b8511
pass the context to action_run_mouse
2003-09-21 19:39:06 +00:00
Dana Jansens
904327a0c8
grab the pointer before doing client actions more intelligently, i.e. only when using sloppy focus.
...
fallback focus after the action if the action was fired via a mouse binding, otherwise do not. this makes keyboard bindings not fuck with sloppy focus.
2003-09-21 19:38:57 +00:00
Dana Jansens
22bf54526c
rename dock/himeTimeout to dock/hideDelay in the config file
2003-09-21 19:31:45 +00:00
Dana Jansens
38370b2e82
dont assert, just ignore client_unfocus() when the client isnt already focused
2003-09-21 18:43:11 +00:00
Dana Jansens
be79af11f6
dont save the appearance when reconfiguring!! that was a crash waiting to happen!!
...
also reset the border stuff on reconfigure
2003-09-21 18:19:11 +00:00
Dana Jansens
6c4126ec61
allow a number of enter events to be ignored. Don't just skip any enter/leave events as these are used for highlighting hover buttons and ignoring these makes the hover state out of sync sometimes
2003-09-21 18:10:39 +00:00
Dana Jansens
1b75005e0d
count the EnterNotify events and tell openbox to ignore them when ungrabbing the pointer
2003-09-21 18:09:48 +00:00
Dana Jansens
a260db31a9
if the keyboard is grabbed then dont ungrab it!
2003-09-21 17:17:34 +00:00
Dana Jansens
32047fd66c
export if the keyboard and pointer are currently grabbed or not
2003-09-21 17:17:19 +00:00
Dana Jansens
087ea0e5cb
remove that shti
2003-09-21 17:17:00 +00:00
Dana Jansens
34bff2d255
whitespace
2003-09-21 17:12:59 +00:00
Dana Jansens
0aa7f70d91
export if an interactive grab is in progress
2003-09-21 17:12:22 +00:00
Dana Jansens
5f5160b40c
dont drop out of dirfocus when there is no new target to be found
2003-09-21 17:03:17 +00:00
Dana Jansens
9960ef2ff9
use the new action_run symantics
2003-09-21 16:58:56 +00:00
Dana Jansens
0cceca2303
dont add null actions to the list
2003-09-21 16:42:15 +00:00
Dana Jansens
617bd951d6
smart xinerama placement for groups
2003-09-19 19:55:21 +00:00
Dana Jansens
b731e0e282
smart placement has a fallback for just groups now too
2003-09-19 19:34:42 +00:00
Dana Jansens
ba05275408
comment
2003-09-19 17:45:33 +00:00
Dana Jansens
e5908c3f89
use the new action ru system which always runs lists of actions instead of individual ones
2003-09-19 17:41:05 +00:00
Dana Jansens
77d8347234
const
2003-09-19 17:40:35 +00:00
Dana Jansens
44fd94ff51
only allow running lists of actions at a time, policy is to always allow multiple action bindings, so this enforces it, and at the same time, UngrabKeyboard() before firing actions if there are no interactive ones. This is needed for some execute's, namely gnome-panel-control --main-menu.
2003-09-19 17:40:26 +00:00
Dana Jansens
19e4820073
properly send resize events for when the app has requested the resize
2003-09-19 16:58:23 +00:00
Dana Jansens
9e60c45cda
dont allow 0 desktops
2003-09-19 07:30:07 +00:00
Dana Jansens
abde4bc153
dont split client requested resizes into 2 events, thanks to manmower for this idea
2003-09-18 20:09:16 +00:00
Dana Jansens
2bd406a0a5
make a warning into a debug message
2003-09-18 08:02:05 +00:00
Dana Jansens
fdd1c3c8a7
add a 'Switch to...' entry to empty desktops in the client-list-menu
2003-09-18 06:17:51 +00:00
Dana Jansens
3b1e518dbc
while doing a moveresize, the client actions act on will be the client being moveresized
2003-09-18 06:09:44 +00:00
Dana Jansens
5da2b67298
off by one error
2003-09-18 05:23:13 +00:00
Dana Jansens
186824fc13
provide some default bindings, not a complete list from the rc.xml.. yet.
2003-09-17 08:12:23 +00:00