Dana Jansens
fb0cd13254
dont persist the linear state, not sure why i did it and it breaks stuff. hope changing this doesnt break other stuff!!! closes #1025
2003-12-22 18:54:14 +00:00
Dana Jansens
745e851faa
dont have glib reap children, we shall reap them instead to avoid zombies from processes tranferred to us
2003-12-22 18:37:12 +00:00
Dana Jansens
7ae62cc7ef
dont make our frame windows override-redirect, so that configure requests are generated if apps try to configure our frame (eg. import -frame)
2003-12-22 18:16:47 +00:00
Dana Jansens
57ddb2751e
whitespace
2003-12-22 18:16:02 +00:00
Dana Jansens
eb22848aeb
s/guint/gboolean/ oops
2003-12-22 17:43:38 +00:00
Dana Jansens
b11a948442
don't use action_run_string in action.c, pass along the data so that the second action gets all the same flags
2003-12-22 17:38:05 +00:00
Dana Jansens
a6e4aba806
make all dialog typed windows transient for their group if they dont specify a WM_TRANSIENT_FOR hint.
2003-12-22 17:24:51 +00:00
Dana Jansens
b338e27b32
use g_snprintf instead of sprintf
2003-11-11 11:59:50 +00:00
Dana Jansens
064901801e
dont go changing the session file all the time, and so then dont need to unlink so we dont end up stalling when the same session is asked for more than once.
2003-11-11 11:54:29 +00:00
Dana Jansens
def76092b5
disable the "Go there" menu entry when its the current desktop
2003-10-27 19:59:11 +00:00
Dana Jansens
7c80db2552
was setting NULL incorrectly to cancel actions and then not checking for NULL before using it
2003-10-27 19:52:49 +00:00
Dana Jansens
671a30187f
g_strerror
2003-10-25 19:40:54 +00:00
Dana Jansens
5a1ad84c05
use gpointer for void*
2003-10-25 19:39:19 +00:00
Dana Jansens
16dc1c48c8
oops typo of doom
2003-10-25 19:30:48 +00:00
Dana Jansens
174de91c34
use g_[s]list_next/previous consistantly, and check for "it" instead of "it != NULL" consistantly. props to Logan again :)
2003-10-25 19:27:09 +00:00
Dana Jansens
4cb183401c
show a message if chdir() fails
2003-10-25 19:16:57 +00:00
Dana Jansens
eaa3b3aaa7
capitalization consistency
2003-10-25 19:16:38 +00:00
Dana Jansens
938915b8e5
free the GErrror
2003-10-25 19:14:30 +00:00
Dana Jansens
91de569e69
free the GError
2003-10-25 19:14:10 +00:00
Dana Jansens
5cadc1bff5
much improved functions for maknig directories, props to Logan
2003-10-25 19:13:09 +00:00
Dana Jansens
de98f8153b
skip taskbar windows dont appear in the client menu
2003-10-23 07:28:14 +00:00
Dana Jansens
9fae7e8b1e
dont use the parent's title in the focus cycling dialog
2003-10-18 22:15:32 +00:00
Dana Jansens
7c827e16ba
assert that add_new is not making a duplicate entry
2003-10-18 22:11:18 +00:00
Dana Jansens
5cac540f56
add to teh focus order before the call to change_state, since this can remove/add to the focus order, and then we're in there twice
2003-10-18 22:09:29 +00:00
Dana Jansens
2aa5cd3574
allow parents of transients to be focus cycled to
2003-10-18 22:08:37 +00:00
Dana Jansens
8226cd7026
make the all desktops thinger get disabled too
2003-10-17 06:27:14 +00:00
Dana Jansens
18ac56b9db
add comment
2003-10-15 17:04:27 +00:00
Dana Jansens
4cd6194f75
add DOCK_NORMAL stacking layer
2003-10-15 16:17:33 +00:00
Dana Jansens
5749f109f9
both must be normal to inherit above/below
2003-10-15 16:14:29 +00:00
Dana Jansens
2e90dfbfec
UGLY HACK
...
makes move/resize events not get queued, so to avoid a race
UGLY HACK
2003-10-15 07:31:24 +00:00
Dana Jansens
53a259f60d
focus fallback when focus is on PointerRoot
2003-10-15 07:29:17 +00:00
Dana Jansens
c30df2e750
dont let clients be above and below
2003-10-15 05:50:56 +00:00
Dana Jansens
ae04366751
missing ;
2003-10-15 05:06:16 +00:00
Dana Jansens
415f2cce27
only inherit layer when both windows are the same normal status
2003-10-15 04:56:32 +00:00
Dana Jansens
9b0f5fcde7
delete old save file when changing the session save file
2003-10-15 04:02:38 +00:00
Dana Jansens
740c5b2a20
consistant glib type usage
2003-10-15 03:59:35 +00:00
Dana Jansens
e7e51c3ef7
print the signal handler messages only when debugging
2003-10-15 03:08:47 +00:00
Dana Jansens
fb1627ba90
va_start needs va_end
2003-10-15 03:08:20 +00:00
Dana Jansens
c9233ddb23
unmap and map the client window when the frame is hidden/shown
2003-10-15 03:01:34 +00:00
Dana Jansens
37c9f2d961
fix _NET_WM_STRUT oldschool support
2003-10-14 07:23:42 +00:00
Dana Jansens
e6c9efa71d
unhilite windows correctly, forget how to break it without this :) what can i say? im high!
2003-10-14 07:21:54 +00:00
Dana Jansens
94901fab5a
remove debug print
2003-10-13 08:04:48 +00:00
Dana Jansens
b051b3499d
smarting picking for cycling to windows woth transients
2003-10-13 07:57:43 +00:00
Dana Jansens
f85c50bb4a
indenting
2003-10-13 05:53:03 +00:00
Dana Jansens
1d2aa812c6
ignore fullscreen windows in placing
2003-10-13 04:55:00 +00:00
Dana Jansens
dc9c39d042
handle multiple focusin/out in one batch
2003-10-13 04:01:11 +00:00
Dana Jansens
7582194997
indenting
2003-10-13 03:48:52 +00:00
Dana Jansens
2bf58d8fb3
dont put windows below by default
2003-10-13 03:47:52 +00:00
Dana Jansens
420e6f87a6
inherit above/below more carefully
2003-10-13 02:52:59 +00:00
Dana Jansens
90abec9c30
avoid putting dialog windows under higher layered windows
2003-10-13 01:41:03 +00:00
Dana Jansens
b9b3123305
when getting the state, grab the above/below from the max amongst other members of the client's group
2003-10-13 01:10:03 +00:00
Dana Jansens
ef414287e5
fire the destroy fnuction for timers when they are removed
2003-10-13 00:28:25 +00:00
Dana Jansens
ba38a0c856
make em saveunder
2003-10-12 23:44:21 +00:00
Dana Jansens
a2543824e8
when not wrapping, still show the dialog when you reach an edge
2003-10-12 20:46:27 +00:00
Dana Jansens
568744d572
allow focus to be moved off top level managed windows, as long as its not None or the root.
2003-10-12 20:28:35 +00:00
Dana Jansens
ba46126706
indenting
2003-10-12 19:12:39 +00:00
Dana Jansens
380af80a13
woot sexy
2003-10-12 19:06:46 +00:00
Dana Jansens
a38b954a9d
the menu's labels are allocated
2003-10-11 17:57:50 +00:00
Dana Jansens
055aa5cd74
gracefully handle grabs failing when doing interactive actions
2003-10-11 16:19:17 +00:00
Dana Jansens
7ca410e663
fix a crasher hopefully
2003-10-11 14:38:45 +00:00
Dana Jansens
cf397b0e60
smarter picking of heads for client windows
2003-10-11 08:24:49 +00:00
Dana Jansens
f5f59cea71
raise windows when they change modality
2003-10-11 08:21:51 +00:00
Dana Jansens
7fe92962cb
remove XXX
2003-10-11 08:19:27 +00:00
Dana Jansens
f8f3b3ed13
screw that
2003-10-11 07:43:20 +00:00
Dana Jansens
c1d065243a
make _NET_WM_ACTIVATE messages bring the client to the current desktop
2003-10-11 07:40:27 +00:00
Dana Jansens
5592351585
give clients being restored from a session a little more flexibility in lpacement so they will go back where they were when saved
2003-10-11 07:35:05 +00:00
Dana Jansens
c2b0272fde
color_black was unused
2003-10-11 06:48:13 +00:00
Dana Jansens
377d20e7bf
use RrColorPixel
2003-10-11 06:47:29 +00:00
Dana Jansens
b49b7c415c
free menuframes when they fail to show themselves
2003-10-11 06:47:11 +00:00
Dana Jansens
7833271d14
switch to the desktop after activating the client. this means that for omnipresent windows, you still move to the desktop on which you selected it.
2003-10-11 04:11:29 +00:00
Dana Jansens
469b0c1ca9
handle case where session saves a 0 width/height (for maximized windows!)
2003-10-11 03:44:05 +00:00
Dana Jansens
34446063fa
if the current SN_WM owner is our window (can this happen?) then ignore it
2003-10-11 03:43:18 +00:00
Dana Jansens
da9bda5e9b
remove the --sm-disable from argv
2003-10-10 16:20:48 +00:00
Dana Jansens
c8678108eb
indenting
2003-10-10 08:28:18 +00:00
Dana Jansens
1be38a0418
set the defaults for typed windows in client_get_all:
...
desktop types get put on all desktops
dock types get put in the ABOVE layer
2003-10-10 08:22:14 +00:00
Dana Jansens
e1eff99176
do client_raise after client_focus for new windows
2003-10-10 06:00:27 +00:00
Dana Jansens
423d70b418
dont leave the focus indicator hanging around when dialogs are disabled
2003-10-10 05:56:12 +00:00
Dana Jansens
6212a5ff9c
same shit different pile
2003-10-10 05:39:59 +00:00
Dana Jansens
6a00a44b99
indenting
2003-10-10 05:36:02 +00:00
Dana Jansens
97ffa9e3e2
make a copy of the color
2003-10-10 05:33:31 +00:00
Dana Jansens
364bb1550a
dont set ret unless you will be returning TRUE
2003-10-10 04:33:12 +00:00
Dana Jansens
6dddd86975
indenting
2003-10-10 04:18:19 +00:00
Dana Jansens
322fc41e49
only restack group windows on the same desktop
2003-10-10 03:45:01 +00:00
Dana Jansens
9eed0756a4
add the focus cycle indicator to directional focus cycling
2003-10-09 19:58:09 +00:00
Dana Jansens
e2389fab78
change the min width of the indicator to 3 and use the actual height of the handle
2003-10-09 19:44:02 +00:00
Dana Jansens
a95a364b9a
for very small windows make sure you can resize them larger
2003-10-09 19:40:37 +00:00
Dana Jansens
da226cdeff
raise grouped util windows with main windows
2003-10-09 19:29:51 +00:00
Dana Jansens
e5f8c683da
smarter avoidance of windows in the focus cycling stuff, doesnt cycle to util windows
2003-10-09 19:29:42 +00:00
Dana Jansens
b84a934ab7
provide function to tell if a client has any group siblings
2003-10-09 19:29:10 +00:00
Dana Jansens
d38c835cef
when the frame is adjusted while the focus_cycle_target is that frame's client, then redraw the indicator
2003-10-09 19:18:20 +00:00
Dana Jansens
ff08e38027
supply focus_cycle_draw_indicator which draws/moves/resizes the focus cycling indicator
2003-10-09 19:17:51 +00:00
Dana Jansens
e69da364cc
make keyboard events work on the focus_cycle_target again
2003-10-09 19:08:07 +00:00
Dana Jansens
0ba8c17565
use focus_hilite to pick which window gets keyboard events
2003-10-09 18:54:08 +00:00
Dana Jansens
04ab35aa14
show an indicator similar to metacity's for focus cycling windows
2003-10-09 18:49:41 +00:00
Dana Jansens
bb52941999
cancel focus delays when the user runs a focus (or focus cycle) action, and when focusing new windows
2003-10-09 18:49:14 +00:00
Dana Jansens
8e34732b3a
let stuff cancel any focus delays going on
2003-10-09 18:48:44 +00:00
Dana Jansens
df436132bd
remove windows from the focus delay timer when the pointer leaves them
2003-10-09 17:32:37 +00:00
Dana Jansens
0843ff29b8
disable the decorate option for non-normal (undecorated) windows
2003-10-09 16:51:22 +00:00
Dana Jansens
5c390b9344
indenting
2003-10-09 16:46:54 +00:00
Dana Jansens
133ce865f7
change the labels in the client menu depending on the window's state
2003-10-09 16:45:14 +00:00
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