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
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
e334f7b199
ifdef DEBUG_FOCUS focus output
2003-09-16 06:52:23 +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
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
9e746b6439
propogate property changes on the group leader to the whole group
2003-09-15 06:50: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
25e1e32f54
fix mem leak, remove teh ice watch handler
2003-09-14 20:57:14 +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
7b7bf43fc9
use the focus client when the client is null for keyboard events
2003-09-10 17:12:26 +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
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
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
09ada49a80
\n's at the end of strings passed to ob_debg
2003-09-06 09:26:32 +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
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
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
418095b48e
add the focusDelay option
2003-09-03 08:12:07 +00:00
Dana Jansens
030fabad14
remove debug print
2003-08-31 19:58:39 +00:00
Dana Jansens
d298cfb786
compress events properly
2003-08-31 19:50:17 +00:00
Dana Jansens
6de84db80d
compress motion events
2003-08-30 18:59:44 +00:00
Dana Jansens
de4f92ccc6
using the ObMainLoop, which rulz the planet
2003-08-30 07:20:16 +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
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
3c5f6db04c
remove the event dispatcher
2003-08-29 06:52:55 +00:00
Dana Jansens
ec9dd7fdd7
new method for loading menu files etc
2003-08-28 17:32:49 +00:00
Dana Jansens
f7eb47dba4
make client-list-menu work too
...
more menu cleanups
2003-08-28 07:34:03 +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
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
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
8173509e90
double deref, props to 'mmj' for spotting this
2003-08-27 05:20:27 +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
888c3d1f6a
make activate take a here parameter
2003-08-14 05:57:45 +00:00
Dana Jansens
c90da6da78
move the keyboard and mouse plugins into the kernel for mucho sexiness.
...
make workspace changing a grabbed/interactive process like focus cycling is, with the popup and all.
this is some hot shit.
2003-08-12 07:26:16 +00:00
Dana Jansens
cb49f853c9
keep event_lasttime at the last time an event has come in so far, don't regress when events come out of order. props to shrimpx for this patch.
2003-08-12 04:06:30 +00:00
Scott Moynes
164a095375
Fix lock up when not using a session manager and doing fd management.
2003-08-07 17:06:12 +00:00
Dana Jansens
be7c0d426a
use the frame size not the client size when figuring out if stuff fits on the screen
2003-08-02 18:09:46 +00:00
Dana Jansens
1aa0bc66eb
improved ICCCM compliance!
...
a) send ConfigureNotify back to the client as required by the ICCCM in all sitatuations.
b) send the corrent coords in the ConfigureNotify, including the border width
c) remove the WM_STATE property when unmanaging a window
2003-07-30 06:19:15 +00:00
Dana Jansens
64884e4390
i am the king of copy/paste errors
2003-07-29 11:19:57 +00:00
Scott Moynes
df0f00848a
more menu fixes.
...
I hate menus.
2003-07-29 01:29:12 +00:00
Scott Moynes
dd33644de4
Close menu properly on unbound keys.
2003-07-29 01:04:22 +00:00
Dana Jansens
b799cfd9a3
base rudeness on if they have a strut even smarter!
2003-07-28 19:59:37 +00:00
Dana Jansens
067776e783
base rudeness on if they have a strut or not
2003-07-28 19:56:52 +00:00
Dana Jansens
4d82dd3017
make the new placement restrictions not affect !normal windows like panels
2003-07-28 19:53:54 +00:00
Dana Jansens
742106511f
hover theme elements for window titlebar buttons
2003-07-28 19:21:45 +00:00
Dana Jansens
950516124f
make those apps stay/map on screen!! fuck stupid apps. thats right im talking to you mozilla and you too java.
2003-07-28 18:06:55 +00:00
Dana Jansens
d8d2fd7148
make things compile again. hover does not work yet.
2003-07-28 16:24:20 +00:00
Dana Jansens
eb1fb5580e
keep apps from moving/maping their titlebar underneath left/top panels
2003-07-28 07:19:47 +00:00
Scott Moynes
f37a919095
Menu stuff.
...
Testing may begin.
2003-07-28 02:52:56 +00:00
Scott Moynes
b8715ba309
Close menu on click if outside the menu.
...
I think, haven't tested.
2003-07-26 19:58:22 +00:00
Scott Moynes
3c92311b3c
Some menu updates.
...
Don't talk to me about menus.
2003-07-26 06:02:58 +00:00
Scott Moynes
d51702affa
I had a commit message but my commit got stepped on so fuck it.
...
No one cares what I think anyway.
If the menu navigation isn't EXACTLY FUCKING RIGHT I WILL REMOVE IT
AND SOME OTHER POOR FUCK CAN PUT UP WITH ALL THE FUCKING BULLSHIT.
2003-07-24 06:10:55 +00:00
Dana Jansens
5be0a82a35
use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
2003-07-24 06:02:38 +00:00
Dana Jansens
845833226b
add the --replace command line option, and support for the WM_Sn selection
2003-07-22 18:09:41 +00:00
Scott Moynes
ea53850762
Keyboard navigatable menus
2003-07-21 23:19:03 +00:00
Dana Jansens
a95dc346fe
prefix and capitalize ObMenu ObMenuEntry and ObMenuEntryRenderType
...
make the ObMenuEntryRenderType a standard enum instead bitflags
2003-07-10 19:27:12 +00:00
Dana Jansens
bddbe94328
make ob_state a function so it cant be changed outside of openbox.c
2003-07-10 19:06:00 +00:00
Dana Jansens
35418ca0fc
remove the ob_root var, its redundant of what Xlib already provides
2003-07-10 19:01:41 +00:00
Dana Jansens
eea43e6488
make the ob_restart/shutdown stuff static vars and expose them only through functions ob_restart_other(), ob_restart() and ob_exit()
2003-07-10 18:50:47 +00:00
Dana Jansens
122d55fbad
prefixing and capitalizing the StackLayer -> ObStackingLayer enum.
...
less includes in headers for less rebuilding on changes
2003-07-10 17:03:05 +00:00
Dana Jansens
59f318e897
prefix and capitalize the ObFocusFallbackType enum
2003-07-10 16:42:42 +00:00
Dana Jansens
d206303a9f
prefixing for the dock. use ObDirection instead of dupliacting it in another enum for the dock's placement
2003-07-10 16:29:40 +00:00
Dana Jansens
7d943a950e
prefixing and capitalization for the Frame->ObFrame struct and the Context->ObFrameContext enum and its constants.
2003-07-10 07:16:19 +00:00
Dana Jansens
2477a38d2f
rename the Client struct to ObClient
2003-07-10 06:38:42 +00:00
Dana Jansens
276b2be581
add misc.h with some standard enumerations with proper prefixing and capitalizations.
...
use the new enums throughout.
provide keycodes and cursors through ob_cursor and ob_keycode functions, which use the new misc.h enums for picking the cursor and keycode.
2003-07-10 06:18:47 +00:00
Dana Jansens
6357583c39
rename 'xinerama' stuff to 'monitors' to be more generic and descriptive.
2003-07-10 05:44:23 +00:00
Scott Moynes
19df0324a6
Makes a simple click not so accidently annoying by making it not
...
execute a menu action if nothing is highlighted.
2003-06-30 23:06:50 +00:00
Dana Jansens
e846063fa8
4 space indents
2003-06-27 00:03:43 +00:00
Dana Jansens
0423b057ed
clear the over item in the menu when executing shit
2003-06-26 07:22:29 +00:00
Dana Jansens
549627402c
only render if there was an over existing
2003-06-25 18:46:51 +00:00
Dana Jansens
7af1c6a9c3
menus grab the keyboard and pointer, thus making only one menu visible at a time, and making them act like gtk menus and * menus do, where you can click and drag and release to select something as well as click-release to elave it open while you search around the menu
2003-06-25 18:43:42 +00:00
Dana Jansens
77062863f3
moveresize messages are not user-requests
2003-06-21 18:10:04 +00:00
Dana Jansens
373a4584d6
make session management optional
2003-06-21 08:45:25 +00:00
Dana Jansens
b3e9fea103
add libSM *client* support, so we should work with gnome-session now!
2003-06-21 05:31:54 +00:00
Dana Jansens
7c13920066
this cnofigure is FINAL!
2003-06-08 01:18:51 +00:00
Dana Jansens
dc7a267af0
there's this case where we DONT want to ignore both events or we end up without anything we know of being focused, even tho something is. this case is now covered. ps i hate focus so much.
2003-05-24 08:38:37 +00:00
Dana Jansens
b1fe0dbbc2
dont refocus the focused window, that just causes so many problems (with alt-tab :)
2003-05-23 20:17:22 +00:00
Dana Jansens
493e7d4a6e
ignore ancestor FocusIn events. i get them sometimes when hitting alt-tab and that totally fucks it up cuz it cancels teh alt-tab process.
2003-05-23 01:27:46 +00:00
Dana Jansens
d3980aa459
only button 1 can use menu items
2003-05-22 21:33:44 +00:00
Dana Jansens
3669da9cdd
a missing break!
2003-05-22 05:23:41 +00:00
Scott Moynes
71d2605e1c
Client menus
...
Add "client_menu" to pluginrc to use.
2003-05-21 23:58:40 +00:00
Dana Jansens
993fc6226d
2 in 1 deal :\
...
client.c stacking.c: fixing looping transient case for group transient windows. now a window which is transient for a group is *not* transient for any other transient windows in the group (perviously the other window had to be transient for the group to be excluded, now it can be transient for anything).
client.c/h event.c render.c/h: adjustnig icon handling a bit. will be converting the legacy pixmap icons into rgba data so they can be handled the same as netwm icons.
2003-05-18 17:09:55 +00:00
Dana Jansens
2b2beddc74
add (optional) support for showing a busy cursor via startup notification
2003-05-18 02:10:26 +00:00
Dana Jansens
f6b61bb60e
disallow drag events on title buttons.
...
dont redraw title button when the wheel buttons are used on them.
2003-05-17 15:16:45 +00:00
Dana Jansens
2d6c9a7ba6
remove debug prints
2003-05-16 18:34:51 +00:00
Dana Jansens
a0691941e8
dockapps are ObWindows now.
...
set the type when creating new dockapps.
2003-05-16 18:34:29 +00:00
Dana Jansens
b77e40e1c7
rename "Slit" to "Dock".
...
add config options to the rc3 for the dock.
create a window_map, add DockApps to the ObWindow types, use the window_map for translating windows into objects for event handling (only one lookup now) and remove the old maps (client_map, menu_map).
2003-05-16 18:10:10 +00:00
Dana Jansens
8367ab14e8
movnig shit around
2003-05-16 15:15:30 +00:00
Scott Moynes
78a8680cd7
Added a menu to read from a pipe.
...
File descriptors added to the event loop.
2003-05-14 03:34:29 +00:00
Dana Jansens
7c7868f47d
add internal popups n shit to the stacking list.
...
some cleanups for the stacking order hint.
add non-opaque move/resize. cant toggle it yet.
2003-05-11 23:31:43 +00:00
Dana Jansens
81cc0749f8
Menus put themselves into the stacking list.
...
Clicking on the menu (but not on an entry) will raise it.
2003-05-11 19:50:30 +00:00
Dana Jansens
58cfbb7f84
Clients Menus and Slits are all 'ObWindow's now.
...
Stacking is done with ObWindows.
Slits add themselves to the stacking order, as do clients of course.
Added some macros for adding/removing to the stacking order.
2003-05-11 19:44:33 +00:00