Commit graph

1606 commits

Author SHA1 Message Date
Dana Jansens
b7d2693742 dont give decorless windows a border when toggling decorations 2003-10-09 16:36:28 +00:00
Dana Jansens
b9d47c49d6 for dock windows, honor both the above and below states, keeping docks above and below *all* normal windows though (even 'above'/'below' ones). if the dock doesn't specify then it will stack along with normal windows. 2003-10-09 16:34:37 +00:00
Dana Jansens
00f6bbb1ab put dock in the dock_above/below layer 2003-10-09 16:33:30 +00:00
Dana Jansens
8401315466 add a dock below layer, and dock above layer 2003-10-09 16:33:20 +00:00
Dana Jansens
b0d892e975 seggie 2003-10-08 19:23:53 +00:00
Dana Jansens
723ecebc2f use focus_hilite to ensure that when a wnidow thats not focused is hilighted, the hilight is removed when focus gets assigned 2003-10-08 18:29:12 +00:00
Dana Jansens
735ee93689 set focus_hilite when switching desktops and hjilitin a window which isnt focused yet 2003-10-08 18:28:51 +00:00
Dana Jansens
fe3e73f190 add a focus_hilite variable 2003-10-08 18:28:31 +00:00
Dana Jansens
440b862204 indenting 2003-10-08 18:27:30 +00:00
Dana Jansens
b968a7ac19 indenting 2003-10-08 18:27:10 +00:00
Dana Jansens
fb8a9a6363 indenting 2003-10-08 18:23:48 +00:00
Dana Jansens
8852ee21b0 alt-drag resizing can resize in just vertical and horizontal directions now 2003-10-06 17:47:41 +00:00
Dana Jansens
f55766cc55 save premax values properly, individually for each direction 2003-10-06 17:33:23 +00:00
Dana Jansens
92c8e947c9 resist screen physical edges as well as strut edges 2003-10-06 09:30:20 +00:00
Dana Jansens
c4fcfc07e1 dont resize the window when restoring session state if the sizes are invalid 2003-10-03 07:33:27 +00:00
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
Dana Jansens
bdc10887cb provide a way to remove all bindings 2003-09-17 08:11:59 +00:00
Dana Jansens
ebe3091560 const 2003-09-17 08:01:37 +00:00
Dana Jansens
16f46c296d no tabs 2003-09-17 07:44:49 +00:00
Dana Jansens
c4e4760c41 add copyright headers, adjust --version output to include copyright, and --help output to not include version output. 2003-09-17 07:32:52 +00:00
Dana Jansens
88b8398342 add the MoveResize context, which is used while doing a move/resize on a window. Actions bound in this context can be executed with the mouse during a move/resize on a window. 2003-09-17 06:44:04 +00:00
Dana Jansens
96f9db0d0c api cleanups for render/theme.h 2003-09-17 06:21:35 +00:00
Dana Jansens
ad7fd99f1d use the theme padding for the menu title's size 2003-09-17 06:10:29 +00:00
Dana Jansens
f85a855417 make ob_exit() take an error code. don't exit with 0 for signals other than TERM and INT. 2003-09-17 02:50:20 +00:00
Dana Jansens
275c44c386 move where grabs are init'd since they use the screen_support_win now 2003-09-17 02:41:17 +00:00
Dana Jansens
ec4c9b0c1f remoev unneeded include 2003-09-17 02:39:59 +00:00
Dana Jansens
dbd3e9b6b2 allow the use of keycodes directly in key bindings 2003-09-17 02:37:52 +00:00
Dana Jansens
b288fdee41 dont assert if a moveresize is started while one is in progress. apps could do this with client messages, or the user can easily do it with actions. 2003-09-16 08:02:13 +00:00
Dana Jansens
3ce8f83674 grab the pointer on the screen_support_win, causing all mouse events during a grab to not be acted on as if they were on the root window/context 2003-09-16 07:48:55 +00:00
Dana Jansens
3c38171fde fallback when nothing is focused and we switch desktops! 2003-09-16 06:59:48 +00:00
Dana Jansens
e334f7b199 ifdef DEBUG_FOCUS focus output 2003-09-16 06:52:23 +00:00
Dana Jansens
c1b2fc5324 make openbox base-dir spec compliant, and change the theme dir structure, so that themes go in $XDG_DATA_DIRS/themes/ with gtk/metacity/whateverelse themes 2003-09-15 19:20:05 +00:00
Dana Jansens
3a607fad9d revert my commit of d3th, it fucked up focus badly 2003-09-15 11:29:17 +00:00
Dana Jansens
ebf24d5224 raise all the windows with the transient 2003-09-15 11:27:46 +00:00
Dana Jansens
db50fd3026 raise all parents with a transient 2003-09-15 11:15:00 +00:00
Dana Jansens
4ccc4c5ed7 break focus. or maybe make it better.
these changes make it work when you alt-tab off a fullscreen window, that it doesnt iconify, and that it is immediately restacked instead of waiting for a FocusIn event to arrive. The code now assumes that if the window says it can focus, that if we focus it, it is focused.
add the XDone handler to ObMainLoop, which is fired upon the occurance of there being no more X events to read.
2003-09-15 10:54:07 +00:00
Dana Jansens
1767616825 dont leave non-submenu items selected when the mouse isnt over them 2003-09-15 08:29:50 +00:00
Dana Jansens
92a6b897a0 remove focusLast and focusLastOnDesktop 2003-09-15 07:47:05 +00:00
Dana Jansens
e14a4eeee9 fix directional focus when nothing is focused 2003-09-15 07:21:10 +00:00
Dana Jansens
4ba5ce3ced use the sm_client_id in the client struct 2003-09-15 06:50:41 +00:00
Dana Jansens
3e9d050ffe save the sm_client_id just like saving other properties, dont query each time its needed 2003-09-15 06:50:25 +00:00
Dana Jansens
9e746b6439 propogate property changes on the group leader to the whole group 2003-09-15 06:50:13 +00:00
Dana Jansens
0242bc2ec8 remove debug prints 2003-09-15 06:37:32 +00:00
Dana Jansens
ada2eb8fe5 remove debug print 2003-09-15 06:37:13 +00:00
Dana Jansens
5e27544d07 sloppy focus fixes, ignore a few more enter events 2003-09-15 06:12:07 +00:00
Dana Jansens
0855269035 fix crashing when doing a directional focus with no windows on the desktop 2003-09-15 06:00:00 +00:00
Dana Jansens
52d751ecd6 best fit only one direction 2003-09-15 05:24:05 +00:00
Dana Jansens
eb7229603e no center in the first smart-place 2003-09-15 05:05:58 +00:00
Dana Jansens
52e7547433 sort smallest to largest area 2003-09-15 04:59:23 +00:00
Dana Jansens
e5703910d0 2 passes at smart placement 2003-09-15 04:32:06 +00:00
Dana Jansens
21c29cba10 smart placement only avoids the focused window, and centers in its area 2003-09-15 04:18:08 +00:00
Dana Jansens
617a98d432 whitespace 2003-09-15 03:36:15 +00:00
Dana Jansens
b0a476249a fallback to random when focus follows mouse is off 2003-09-15 03:27:45 +00:00
Dana Jansens
4bb7543de6 fix comment 2003-09-15 03:24:27 +00:00
Dana Jansens
1f451f5de0 oops backwarsd 2003-09-15 03:22:58 +00:00
Dana Jansens
4185168f9d dont use continue 2003-09-15 03:21:50 +00:00
Dana Jansens
e3e850b718 remove blank line 2003-09-15 03:21:00 +00:00
Dana Jansens
0d5d92426f allow more than one timer to work at a time 2003-09-15 03:02:26 +00:00
Dana Jansens
48d0d42685 allow more than one timer to process at a time 2003-09-15 02:56:41 +00:00
Dana Jansens
a9ae2f481a apply gravity to the chosen coords, bound the undermouse placement 2003-09-15 02:34:07 +00:00
Dana Jansens
e8c1967aa2 always use smart placement, add under-mouse placement for the fallback 2003-09-15 02:20:38 +00:00
Dana Jansens
9fe2ce3f85 dont count !normal clients for placement 2003-09-15 02:07:46 +00:00
Dana Jansens
9866570c7e added smart placement 2003-09-15 02:05:40 +00:00
Dana Jansens
ef7c210750 use the new RECT_LEFT/RIGHT/TOP/BOTTOM for clarity 2003-09-15 02:05:10 +00:00
Dana Jansens
d193fc4a3d add some interesection shit, and RECT_LEFT/RIGHT/TOP/BOTTOM 2003-09-15 02:03:58 +00:00
Dana Jansens
9decfe0d76 kill the padding in the menu title 2003-09-14 21:33:08 +00:00
Dana Jansens
1ce84062b4 dont raise parents of transients when the transient is raised 2003-09-14 21:13:50 +00:00
Dana Jansens
0a220fb6a1 adjust the themes for the frames before everything else happens, cuz they store pointers to the freed theme, then redraw them at the end 2003-09-14 21:09:51 +00:00
Dana Jansens
13bbcdd86b dont redraw the frames when changing their theme 2003-09-14 21:08:21 +00:00
Dana Jansens
2877e9a248 remove the x event handler 2003-09-14 21:07:38 +00:00
Dana Jansens
c9ef2f0118 dont bother fucking everythign up when the desktops number hasnt changed 2003-09-14 21:07:06 +00:00
Dana Jansens
9a7db27b46 fix mem leak 2003-09-14 21:06:43 +00:00
Dana Jansens
11e28eaa5c update the menus before putting them in the visible list 2003-09-14 21:06:20 +00:00
Dana Jansens
abd2f914df fix a mem leak, and make suer the menus arent visible when they are modified 2003-09-14 21:04:30 +00:00
Dana Jansens
25e1e32f54 fix mem leak, remove teh ice watch handler 2003-09-14 20:57:14 +00:00
Dana Jansens
673383d047 fix mem leak 2003-09-14 20:56:48 +00:00
Dana Jansens
b317f01403 dont impose staying on-screen for non-normal windows like kicker 2003-09-14 18:35:21 +00:00
Dana Jansens
9054a91da3 move moveresize_startup/shutdown so its between its deps 2003-09-14 07:35:49 +00:00
Dana Jansens
b35682fbd0 only sopt moveresize when shutting down 2003-09-14 07:35:24 +00:00
Dana Jansens
be15e8c01c stop any moveresizes on shutdown 2003-09-14 07:18:41 +00:00
Dana Jansens
d89391ec94 dont waste a strdup which is never freed 2003-09-14 06:40:33 +00:00
Dana Jansens
861cfbdabe fix a memory leak in the mainloop timers correctly 2003-09-14 05:01:54 +00:00
Dana Jansens
70a31e8904 fix a memory leak in the mainloop timers 2003-09-14 04:40:09 +00:00
Dana Jansens
4be58bf137 new popups with subclasses, added an ObIconPopup for popups with icons, and ObPagerPopup, for a popup with a pager on it.
better logic also for the desktop layout code figuring out how many rows and columns there are.
2003-09-12 06:00:17 +00:00
Dana Jansens
5941c924e8 80 cols 2003-09-12 01:39:21 +00:00
Dana Jansens
988c096389 start the session shit, and grab the params before grabbing the rest of the parameters (and erroring on invalid ones) 2003-09-12 01:31:41 +00:00
Dana Jansens
49a73ce15c add support for a default icon, but no icon has been made yet. 2003-09-12 01:11:33 +00:00
Dana Jansens
9caa096ad9 frame context fallbacks when there is no binding on the context 2003-09-10 20:05:06 +00:00
Dana Jansens
0453a1dbed make menu hiding-on-release based on a timer rather than on where it is released (on the frame border) 2003-09-10 19:37:52 +00:00
Dana Jansens
8d68a400d4 s/milli/micro/ 2003-09-10 18:18:42 +00:00
Dana Jansens
36b78531e9 hide menus before showing a new menu root 2003-09-10 18:14:44 +00:00
Dana Jansens
00f6dea058 keep menus taller than the screen from jittering. also keep the half of the menu you're in visible. more precision would be nicer but meh for now (ever) i guess. 2003-09-10 18:00:08 +00:00
Dana Jansens
c6ad57fc73 save the new glist! 2003-09-10 17:39:30 +00:00
Dana Jansens
fe2f637e2b when the client for an interactive action is closed, kill the action 2003-09-10 17:21:27 +00:00
Dana Jansens
3541c60fcb use the current size not the start size for moving 2003-09-10 17:13:57 +00:00
Dana Jansens
7b7bf43fc9 use the focus client when the client is null for keyboard events 2003-09-10 17:12:26 +00:00
Dana Jansens
396eb330ac oops, copypaste 2003-09-10 17:11:46 +00:00
Dana Jansens
d4f192394f dont deref the client before checking for null 2003-09-10 17:10:11 +00:00
Dana Jansens
e1b6c6dd90 use theme.show_handle 2003-09-10 17:03:29 +00:00
Dana Jansens
3fcba81510 save teh client for interactive actions cuz after teh keyboard is grabbed there is no client 2003-09-09 08:05:06 +00:00
Dana Jansens
8fe0cb8989 no more interactive mouse actions, they are evil etc. actions now "feel" much more solid. if move/resizing a window while changing workspaces, it will follow. 2003-09-09 07:16:38 +00:00
Dana Jansens
0f544808b8 no mouse interactive actions. no bugs. 2003-09-09 06:07:00 +00:00
Dana Jansens
5e38ae49ce remove debug prints 2003-09-08 19:32:01 +00:00
Dana Jansens
7f8b8119c4 remove comment that isnt right anymore 2003-09-08 18:42:47 +00:00
Dana Jansens
a72371b41f bigtime theme changes. bigtime. 2003-09-08 18:38:52 +00:00
Dana Jansens
e68e6c6a53 expose focus_cycle_client 2003-09-08 18:20:09 +00:00
Dana Jansens
b8e4eecc9f act on the visibly focused window when that differs from the actual focused window 2003-09-08 18:19:04 +00:00
Dana Jansens
3fa11ec62b round 2 for this shit 2003-09-08 18:05:42 +00:00
Dana Jansens
4c0adb1f2b flush after resizing a client 2003-09-08 18:01:46 +00:00
Dana Jansens
5bebe5fbf8 if the client is growing, resize it before the frame. if its shrinking, then resize the frame first. reduces flicker lots. 2003-09-08 17:58:31 +00:00
Dana Jansens
9f2a844beb watch for windows with titlecounts changing their title and getting an incorrect titlecount 2003-09-08 17:51:54 +00:00
Dana Jansens
e9d878f47d oops 2003-09-08 17:39:21 +00:00
Dana Jansens
7cbcc099ef some simpler code 2003-09-08 17:30:55 +00:00
Dana Jansens
e5f27bd25e grab the pointer befoer shading a window to prevent focus moving in sloppy focus 2003-09-08 17:25:51 +00:00
Dana Jansens
3942d579d8 dont reset all the states to FALSE in client_get_state, this made an initial IconicState get ignored 2003-09-08 17:22:46 +00:00
Dana Jansens
0687790236 flush after drawing each menu item 2003-09-08 09:08:36 +00:00
Dana Jansens
c5b156ef78 timeouts are all in millisecond 2003-09-08 09:08:05 +00:00
Dana Jansens
aafa246e2f if the menu path starts with a /, then just load it, don't try the prefixes 2003-09-08 08:43:49 +00:00
Dana Jansens
c73bd381fe fix autohiding 2003-09-08 03:31:40 +00:00
Dana Jansens
596be5028e dont modify the time from the config parser 2003-09-08 03:18:04 +00:00
Dana Jansens
37e7570954 make both focusDelay and hideTimeout in milliseconds 2003-09-08 03:17:10 +00:00
Dana Jansens
7eddc48043 fix crash when reconfigure changes the stacking layer of the dock 2003-09-08 03:08:32 +00:00
Dana Jansens
50d7028334 move windows around before removing the focus order lists to prevent nasty segfault when it removes a window from an already freed list 2003-09-08 00:58:10 +00:00
Dana Jansens
84a60ebbfb dont use obsolete xmlChildrenNode 2003-09-07 23:34:01 +00:00
Dana Jansens
420cbea6cc xflush after rendering 2003-09-07 19:04:25 +00:00
Dana Jansens
78282959f9 little bit of an actions overhaul, added action_run* so that duplicated code can all be in the same place now woot.
allow actions to specify when they can be used (ShowMenu cant in the OB_USER_ACTION_MENU_SELECTION case)
remove KeyboardMove ad KeyboardResize. Instead, just use Move and Resize and determine if it should be a keyboard move/resize in the code
2003-09-07 19:03:20 +00:00
Dana Jansens
b23594d88d these shoulda been removed long ago 2003-09-06 09:40:27 +00:00
Dana Jansens
09ada49a80 \n's at the end of strings passed to ob_debg 2003-09-06 09:26:32 +00:00
Dana Jansens
4bec1c07db Closes #799. i think im too high to say more. 2003-09-06 09:25:05 +00:00
Dana Jansens
261d3193c5 sync before removing all the enter events. this way it actually catches them 2003-09-06 09:10:43 +00:00
Dana Jansens
2811fd1992 code style fix 2003-09-04 15:37:13 +00:00
Dana Jansens
8617f504a7 optimization. don't need a glist where a simple pointer will suffice. 2003-09-04 15:35:56 +00:00
Dana Jansens
88f83fc927 was adding an extra / in ob_expand_tilde 2003-09-04 15:31:17 +00:00
Dana Jansens
3d1e2ab1b4 when a pipe menu is killed, kill all its submenus as well 2003-09-04 15:30:34 +00:00
Dana Jansens
32b381fbca fix RECT_CONTAINS, name clash 2003-09-04 14:54:29 +00:00
Dana Jansens
cb3aaab102 off by one caused clients to be resized a little during a move 2003-09-04 06:12:19 +00:00
Dana Jansens
d989e3c541 oops missed a ! 2003-09-04 02:58:54 +00:00
Dana Jansens
3682b4ec40 turn off focusDelay by default 2003-09-04 02:36:05 +00:00
Dana Jansens
755ec08aa3 move session code out of openbox.c all into session.c
remove --sm-save-file and --sm-client-id from argv so that they dont get reused when doing a restart.
2003-09-04 01:52:15 +00:00
Dana Jansens
bb44e8d047 match the declarations in the header 2003-09-04 00:42:43 +00:00
Dana Jansens
bd41f6ee1e ungrab only as many times as we grabbed 2003-09-04 00:39:05 +00:00
Dana Jansens
922580e891 remove the reconfigure popup 2003-09-04 00:05:42 +00:00
Dana Jansens
fcdcd0fab4 match the func prototypes in the header 2003-09-04 00:02:53 +00:00
Dana Jansens
1d6e2c1357 fix for not using startup notification 2003-09-03 23:31:20 +00:00
Dana Jansens
d3525ecef0 kill the window mapping.. its not doing anything anyways? whatever.. 2003-09-03 23:21:56 +00:00
Dana Jansens
68e8dea93d dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup. 2003-09-03 23:20:21 +00:00
Dana Jansens
39b2f712aa dont exit when a theme can't be loaded during reconfigure 2003-09-03 23:13:40 +00:00
Dana Jansens
c20a8d986a handle the case where a transient is a child of a dockapp 2003-09-03 22:06:17 +00:00
Dana Jansens
b2a0df8e89 don't let move/resize occur on non-visible clients 2003-09-03 22:02:21 +00:00
Dana Jansens
72a993671f display a popup and perform a smooth transition when reconfiguring 2003-09-03 21:42:43 +00:00
Dana Jansens
506fa94dc7 grab keys on the client windows themselves 2003-09-03 21:33:22 +00:00
Dana Jansens
fafcb6e476 only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed 2003-09-03 21:24:37 +00:00
Dana Jansens
9102d8a64b remove from desktop_menus when freed 2003-09-03 21:23:45 +00:00
Dana Jansens
f78b849af2 use the ob_main_loop_timeout_remove_data to only remove one timer 2003-09-03 21:18:19 +00:00
Dana Jansens
792d3e7a70 dont set a strut when there are no apps in the dock 2003-09-03 21:07:46 +00:00
Dana Jansens
e7b2e52b78 support getting the desktop from the startup notification protocol
pass on to the startup notification code that a window has mapped with a given wmclass
2003-09-03 20:42:49 +00:00
Dana Jansens
038735d627 add the startup_id 2003-09-03 20:39:42 +00:00
Dana Jansens
973507ff28 add the NONE cursor.
remove startup notification code from openbox.c and openbox.h
call the new sn_startup/shutdown for startupnotification.c
2003-09-03 20:39:11 +00:00
Dana Jansens
15450dc799 use NONE cursor when not specifying one 2003-09-03 20:37:10 +00:00
Dana Jansens
889c5aab4f remove the startup notification code from event.c, it all lives in its own file now 2003-09-03 20:36:25 +00:00
Dana Jansens
2cd1644e10 add startup notification in its own .c/.h files 2003-09-03 20:35:22 +00:00
Dana Jansens
ed9dc5dc78 use the NONE cursor when not specifying one 2003-09-03 20:34:43 +00:00
Dana Jansens
1df4e32760 add ob_main_loop_timeout_remove_data.
make the timeout remove functions remove *all* timeouts that match
2003-09-03 20:34:14 +00:00
Dana Jansens
aae074a11a remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore. 2003-09-03 20:33:43 +00:00
Dana Jansens
7416313cad remove all the startup notification code from screen.c 2003-09-03 20:32:21 +00:00
Dana Jansens
18b92777ae add the startup_id atom 2003-09-03 20:32:07 +00:00
Dana Jansens
9d35b8c198 use the NONE cursor when not specifying a cursor 2003-09-03 20:31:50 +00:00
Dana Jansens
f3661db043 add a NONE cursor, to not change the cursor at all 2003-09-03 20:31:31 +00:00
Dana Jansens
806a8c411f add a reconfigure action, also reconfigure on SIGUSR2.
support reconfiguring throughout the entire codebase.
2003-09-03 18:11:39 +00:00
Dana Jansens
3f372aaebf make focusDelay check the destroying window properly before killing the timer 2003-09-03 15:39:27 +00:00
Dana Jansens
3e7b4478ee track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items 2003-09-03 09:12:42 +00:00
Dana Jansens
418095b48e add the focusDelay option 2003-09-03 08:12:07 +00:00
Dana Jansens
91e04979a6 dont grab frame context mouse bindings on desktop windows 2003-09-03 08:11:38 +00:00
Dana Jansens
5e5fdb1666 make the client destructor a GDestroyNotify 2003-09-03 08:10:51 +00:00
Dana Jansens
39b3cc1d12 rm empty line 2003-09-03 07:26:44 +00:00
Dana Jansens
8419fe8a11 limit menus' width to 400px 2003-09-03 07:24:39 +00:00
Dana Jansens
eb603bf118 rename the theme name node from 'theme' to 'name' 2003-09-03 07:17:20 +00:00
Dana Jansens
fbbbd4f9ab only show resize popups for clients with size increments. no move popup at all. waste of screen space. 2003-09-03 06:33:43 +00:00
Dana Jansens
bb73f52a5f use the provided margins to layout the popup better 2003-09-03 06:30:13 +00:00
Dana Jansens
5a44164be9 make the default screen-edge resistance 20 (double what it is for windows) 2003-09-03 05:44:28 +00:00
Dana Jansens
d5f823db68 more fixes to keep the pointer stuff aligned when doing keyboard move/resize 2003-09-02 19:59:33 +00:00
Dana Jansens
a9c02d62e8 fix flashing when using keyboard move against the edge of the screen 2003-09-02 19:50:10 +00:00
Dana Jansens
02b0b1733a use new menu.bullet.selected.imageColor. use the text colors for the menu mask icons instead of teh bullet color, and set it based on selected/disabled/normal like the text. 2003-09-02 18:53:08 +00:00
Dana Jansens
0223fed117 grab the mouse before any move/resizes in actions, preventing focus from moving when followMouse is on and the window moves/resizes out from under the pointer 2003-09-02 17:54:11 +00:00
Dana Jansens
67f9061a7a move the default menu to menu.xml 2003-09-02 17:46:37 +00:00
Dana Jansens
06fb4c7382 remove debug prints 2003-09-02 17:43:49 +00:00
Dana Jansens
2755cf85fc remove debug print 2003-09-02 07:58:27 +00:00
Dana Jansens
87342f85eb make the segfault swearing more clear 2003-09-02 07:57:47 +00:00
Dana Jansens
8420e47848 add comment about the new code in moveresize for size increment windows 2003-09-02 07:56:40 +00:00
Dana Jansens
78dfba0195 stop doing stupid shit for the size increments in client_configure, it belongs in the moveresize code. add it there. 2003-09-02 07:50:52 +00:00
Dana Jansens
5cac2437c2 separate window and screen snapping so only one or the other can be used 2003-09-02 07:50:09 +00:00
Dana Jansens
fa55dc4bb1 grow to edge is a move and a resize, oops 2003-09-02 05:34:04 +00:00
Dana Jansens
06252b3076 rename back the app_selected appearances to app_hilite 2003-09-01 16:37:21 +00:00
Dana Jansens
d20fecf576 this move is not final 2003-09-01 16:14:13 +00:00
Dana Jansens
416ee379ea make ob_expand_tilde expand all tildes in the string 2003-09-01 09:24:26 +00:00
Dana Jansens
ea94909334 couple more xrdb theme format cleanups:
window.focus.font -> window.label.focus.font
window.unfocus.font -> window.label.unfocus.font
window.justify -> window.label.justify
menu.frame.* -> menu.items.*
menu.hilite.* -> menu.selected.*
*.picColor -> *.imageColor
2003-09-01 07:12:58 +00:00
Dana Jansens
7f7378cc2b remove an old plugin call 2003-09-01 07:03:46 +00:00
Dana Jansens
f33bbca9e6 couple more xrdb theme format cleanups:
window.focus.font -> window.label.focus.font
window.unfocus.font -> window.label.unfocus.font
window.justify -> window.label.justify
menu.frame.* -> menu.items.*
menu.hilite.* -> menu.selected.*
*.picColor -> *.imageColor
2003-09-01 07:03:04 +00:00
Dana Jansens
5dafdaf285 dont crash when flashing a window when it goes away, remove the timer when dying 2003-09-01 04:30:59 +00:00
Dana Jansens
3ab0fc4814 flash when urgent 2003-09-01 03:42:44 +00:00
Dana Jansens
ed6f5152eb remove vibrate and flash actions 2003-09-01 03:42:23 +00:00
Dana Jansens
bd70fff6f9 improved frame flashing code, can start and stop it on command 2003-09-01 03:41:53 +00:00
Dana Jansens
169e64da2c remove the urgent actions 2003-09-01 03:41:14 +00:00
Dana Jansens
1b0a66dcff add flash action 2003-09-01 02:57:53 +00:00
Dana Jansens
0621e22932 add code to flash the frame 2003-09-01 02:57:19 +00:00
Dana Jansens
d7b4f1b126 make separators span the width of the entire menu 2003-09-01 02:30:12 +00:00
Dana Jansens
9d42df6ab4 add urgent actions
add some macros for moving/resizing clients
add 'vibrate' action
2003-09-01 02:02:40 +00:00
Dana Jansens
a1fdeedbf2 s/expand_tile/ob_expand_tilde/ 2003-09-01 01:11:15 +00:00
Dana Jansens
955dfabfed missing 'extern' for a bunch of vars 2003-09-01 01:10:07 +00:00
Dana Jansens
b543af60b3 move expand_tilde to ob_expand_tilde in openbox.c to make it global.
use it on the command read in the menu parsing for pipe menus.
use it on the command read for execute/restart actions.
2003-09-01 00:53:55 +00:00
Dana Jansens
43c5c01d33 parse all the menu files specified 2003-08-31 21:29:43 +00:00
Dana Jansens
8de54d2b45 oops, now is in the loop :> 2003-08-31 21:14:21 +00:00
Dana Jansens
5db556c541 get the current time when adding timers 2003-08-31 21:12:54 +00:00
Dana Jansens
854da68d0f add the DesktopLast action, props to marius nita for this one 2003-08-31 20:06:42 +00:00
Dana Jansens
030fabad14 remove debug print 2003-08-31 19:58:39 +00:00
Dana Jansens
ea2f33e9ee add a separator in the client-list-menus above iconic windows 2003-08-31 19:56:19 +00:00
Dana Jansens
7b06426b51 dont lose the menu selection while puttin the mouse over a separator (properly) 2003-08-31 19:54:34 +00:00
Dana Jansens
d298cfb786 compress events properly 2003-08-31 19:50:17 +00:00
Dana Jansens
49d58ec9ba only hide menus if theyre supposed to when executing 2003-08-31 18:58:10 +00:00
Dana Jansens
4ab212d0cd make directional focusing an interactive action 2003-08-31 18:54:26 +00:00
Dana Jansens
75c8bec464 make desktop cycling work properly when non-interactive 2003-08-31 18:53:23 +00:00
Dana Jansens
829a9fafd4 when no modifiers are in a binding, then make it non-interactive 2003-08-31 18:52:56 +00:00
Dana Jansens
0745e2ee0a make focus cycling work when not interactive
add focus_directional_cycle
2003-08-31 18:52:23 +00:00
Dana Jansens
89fb38e18d ungrab keys before grabbnig keys at the next chain level 2003-08-31 17:33:50 +00:00
Dana Jansens
4d9a46bec0 grab the pointer Async for key grabs, lets key bindings like <execute>xkill</execute> work 2003-08-31 17:32:28 +00:00
Dana Jansens
a991c07bc1 draw menu separators 2003-08-31 17:04:23 +00:00
Dana Jansens
02045b14d6 kill a warning 2003-08-31 16:39:53 +00:00
Dana Jansens
3e4495c4c8 move_onscreen was supposed to go away.. :) thanks mikachu 2003-08-31 06:55:14 +00:00
Dana Jansens
e10b4aacc3 add masks from the titlebar buttons to the client menu's options 2003-08-30 19:03:29 +00:00
Dana Jansens
5d4cbbc674 add suppot for showing pixmap masks in menus where the rgba icons go too 2003-08-30 19:03:06 +00:00
Dana Jansens
0185445e3a use the nwe theme's show_handle value 2003-08-30 19:02:48 +00:00
Dana Jansens
6de84db80d compress motion events 2003-08-30 18:59:44 +00:00
Dana Jansens
6486ba2cd5 add padding in the menu title too 2003-08-30 18:16:36 +00:00
Dana Jansens
8e76e32863 add destructor functions for clients that you acn subscribe with, and use these instead of hardcoding special cases in the unmanage code 2003-08-30 17:46:23 +00:00
Dana Jansens
2c6c0757fa make interactive actions a type and not special cases.
add the <interactive> option to them to turn off interactivity
2003-08-30 16:58:30 +00:00
Dana Jansens
009685bc46 remove debug print 2003-08-30 07:20:45 +00:00
Dana Jansens
de4f92ccc6 using the ObMainLoop, which rulz the planet 2003-08-30 07:20:16 +00:00
Dana Jansens
c3b02749d7 add pipe-menus 2003-08-30 05:15:12 +00:00
Dana Jansens
3ff8eb037e fix grabbing and not releasing with menus 2003-08-30 05:04:08 +00:00
Dana Jansens
8a1e9c64d8 dont ungrab twice when hiding menus 2003-08-29 17:17:07 +00:00
Dana Jansens
53134db127 properly select the first menu item in the child menu when using the 'right' keycode 2003-08-29 08:52:12 +00:00
Dana Jansens
09f4a0c51a dont keyboard nav onto disabled menu items 2003-08-29 08:51:05 +00:00
Dana Jansens
7317d17c76 missing break would be bad in future if added more cases 2003-08-29 08:49:41 +00:00
Dana Jansens
dcdc325f5c ultra-keyboard-controlled-menus 2003-08-29 08:44:55 +00:00
Dana Jansens
43fded6a10 fix includes 2003-08-29 08:44:40 +00:00
Dana Jansens
2a79db164c remove the plugin stuffs 2003-08-29 07:58:03 +00:00
Dana Jansens
6f9cea86f5 remove a dispatch.h 2003-08-29 07:57:34 +00:00
Dana Jansens
485fbff15d remove plugins from the menu parsing 2003-08-29 07:57:18 +00:00
Dana Jansens
a9567a8163 move the client and client-list menus into the 'kernel' 2003-08-29 07:56:49 +00:00
Dana Jansens
3c5f6db04c remove the event dispatcher 2003-08-29 06:52:55 +00:00
Dana Jansens
0b4cd7a0cf typo, reading from the wrong member of the actiondata union 2003-08-29 06:48:32 +00:00
Dana Jansens
5e06be6abb add window placement routines to the kernel 2003-08-29 06:40:35 +00:00
Dana Jansens
db4b0e6270 place submenus with their borders over the parent's 2003-08-29 05:49:30 +00:00
Dana Jansens
700e551390 fix a bunch of memleaks from valgrind and stuff 2003-08-28 19:10:36 +00:00
Dana Jansens
d911fbf44c only execute enabled items 2003-08-28 18:34:06 +00:00
Dana Jansens
ec9dd7fdd7 new method for loading menu files etc 2003-08-28 17:32:49 +00:00
Dana Jansens
fb035e4b0f fix crash bug is parsing menu section of the rc3 2003-08-28 17:27:13 +00:00
Dana Jansens
5c63aaa9ae missed one thing, using invalid mem still 2003-08-28 17:22:10 +00:00
Dana Jansens
9e85e930da fix for using freed memory to exec stuff 2003-08-28 17:15:10 +00:00
Dana Jansens
5efc7236a6 free the menu entry frames 2003-08-28 17:05:44 +00:00
Dana Jansens
60fa05f70c rm double ;; 2003-08-28 08:15:45 +00:00
Dana Jansens
15386e86d4 add icons to the client-list-menu 2003-08-28 08:08:18 +00:00
Dana Jansens
c34915ae8d make submenus not require the menu to exist when they are created, not until they are shown.
crash fix in client_menu
2003-08-28 07:49:57 +00:00
Dana Jansens
f7eb47dba4 make client-list-menu work too
more menu cleanups
2003-08-28 07:34:03 +00:00
Dana Jansens
ffba11aeb0 load menu plugins automatically from whats in the menu file
menu fixups
move enabled into the 'normal menu item' specific data stuff
2003-08-28 06:32:27 +00:00
Dana Jansens
615cbd9607 change the menu plugin interface, no need for the create/destroy functions any more.
redo the client-menu plugin to work with the new menu api
2003-08-28 05:44:13 +00:00
Dana Jansens
9290376bbb add follow option back for sendto actions 2003-08-28 05:43:05 +00:00
Dana Jansens
c34ef4028e half way through the changes to new menu code/design. hot shit. static menus work, on to plugins next. 2003-08-28 02:10:23 +00:00
Dana Jansens
cadab91e52 oooops RECT_SET_POINT was broken 2003-08-27 23:16:06 +00:00
Dana Jansens
56cc3dc663 more typo :) 2003-08-27 18:53:25 +00:00
Dana Jansens
d075ca0993 typo :) 2003-08-27 18:52:15 +00:00
Dana Jansens
a32c2c125c dont be rude to non-normal windows with keeping them onscreen 2003-08-27 18:50:12 +00:00
Dana Jansens
9a0c31797a fix border on shaded maximized windows 2003-08-27 18:38:36 +00:00
Dana Jansens
8173509e90 double deref, props to 'mmj' for spotting this 2003-08-27 05:20:27 +00:00
Dana Jansens
fdfaa0c8dd remove the last of the cool stuff thanks to GTK fuck fuck. no more not focusing windows in groups that arent focused on map 2003-08-25 18:40:00 +00:00
Dana Jansens
8251308845 blef 2003-08-25 15:29:40 +00:00
Dana Jansens
507e7ac875 type change 2003-08-25 15:29:18 +00:00
Dana Jansens
1a94524b08 make --disable-session-management work i think 2003-08-25 15:28:32 +00:00
Dana Jansens
dcb5a38fdb dont force fallbacks within groups 2003-08-25 08:57:09 +00:00
Dana Jansens
5186d04c61 better handling of maximizing, wrt changing decorations on the windows, and showing the correct decor for the max state especially for windows which dont change size (Xnest) when maximized cuz they are at their maximum size already 2003-08-25 08:49:48 +00:00
Dana Jansens
584656d96a add STRUT_EQUAL 2003-08-25 08:37:29 +00:00
Dana Jansens
7e7efa5c1a set the client decorations to match the frame's so that there is not thot to be changes later on whene there were actually none 2003-08-25 08:37:23 +00:00
Dana Jansens
0964b804a1 restore the stacking order of a saved session 2003-08-25 07:48:28 +00:00
Dana Jansens
486c189d0b save the stacking order of the windows, and sort the saved session data based on stacking when it is loaded. make the list public. 2003-08-25 07:46:59 +00:00
Dana Jansens
97e0908f16 dont put #define values into the supported atoms list 2003-08-25 07:45:08 +00:00
Dana Jansens
4739cf190b clarify that stacking_below sucks 2003-08-25 07:44:33 +00:00
Dana Jansens
7120face25 add stacking_below which moves a window to immediately below another window. use with care it doesn't enforce transient shit etc.. 2003-08-25 07:43:27 +00:00
Dana Jansens
496fbac21c better handling of multiple niteractive actions 2003-08-23 17:52:48 +00:00
Dana Jansens
ecdf24a5db end the other action when starting a new interactive action while one was in place 2003-08-23 16:21:25 +00:00
Dana Jansens
7b6ca7c20e only use visible windows when calcing for raiselower 2003-08-22 15:57:20 +00:00
Dana Jansens
7755edc39a maybe smarter 2003-08-22 15:44:20 +00:00
Dana Jansens
ca8a3ac7bf make the raiselower action smarter 2003-08-22 15:36:44 +00:00
Dana Jansens
d8d1eb53cd better handling of starting a new interactive grab while one is in progress 2003-08-20 23:25:59 +00:00
Dana Jansens
a098c2437e rename the 'root' context to 'desktop' 2003-08-20 23:13:40 +00:00
Dana Jansens
df79dc5767 add the 'raiselower' action for raising obscured windows and lowering fully visible ones 2003-08-20 23:02:26 +00:00
Dana Jansens
a09984bbc0 add an obscured flag that tracks if the frame is at all obscured 2003-08-20 23:01:56 +00:00
Dana Jansens
d59508ae91 use the result from XGetGeometry correctly 2003-08-20 22:50:04 +00:00
Dana Jansens
533992f5aa handle the XGetGeomtry failing for button releases 2003-08-20 17:06:08 +00:00
Dana Jansens
9e3d680cf7 dont grab client context stuff on desktop windows. check that clint is non-null 2003-08-20 15:50:12 +00:00
Dana Jansens
6375df675f grab root mouse bindings on desktop windows also, since they are conceptually the desktop. 2003-08-20 06:17:43 +00:00
Dana Jansens
0844866bbd reset first to TRUE properly when the desktop popup is off 2003-08-20 04:47:01 +00:00