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
Dana Jansens
ed4f84ac33
can drag slit-apps around in the slit
2003-05-11 05:15:43 +00:00
Dana Jansens
20ba24b741
add autohiding to the slit
2003-05-10 22:33:24 +00:00
Dana Jansens
4e88712158
some slit fixes, support resizing slitapps
2003-05-10 22:20:08 +00:00
Dana Jansens
c4a5149016
add a slit to the kernel
2003-05-10 20:52:32 +00:00
Dana Jansens
bd6d80f168
be more careful about ignoring focusin/out event pairs
2003-05-10 15:51:44 +00:00
Scott Moynes
3fab044f34
whitespace
2003-05-10 14:50:39 +00:00
Scott Moynes
a8a4a2cca3
Menu uber patch
...
Since we have no menu parser see menu_startup() to customize
2003-05-09 23:15:28 +00:00
Dana Jansens
d5eacc5642
add a client_activate function, use it for net_wm_active mesgs and for focus cycling.
2003-05-09 22:53:11 +00:00
Dana Jansens
f26f23de50
all my changes while i was offline.
...
better alt-tabbing. better transient handling. i dont even know. lots of fucking cool shit so WATCH the FUCK OUT.
2003-05-09 16:57:17 +00:00
Dana Jansens
16a9ac018e
let the frame hold a focus state so that it can lie.
...
dont focus windows while cycling, just highlight them as if they are focused
2003-04-25 19:55:41 +00:00
Dana Jansens
9c55fd5a57
rm invalid comment
2003-04-19 18:31:14 +00:00
Dana Jansens
540f547bab
only look for FocusOut events on the same window
2003-04-19 18:30:58 +00:00
Dana Jansens
6b7737acc3
the mouse grab screws that up
2003-04-18 22:31:00 +00:00
Dana Jansens
2829849b71
dispatch presses and releases during a move/resize
2003-04-18 22:27:24 +00:00
Dana Jansens
31fac363fb
kill the debug prints for now
2003-04-18 22:12:34 +00:00
Dana Jansens
142c14fcc8
nm cant do it.. damn
2003-04-18 22:05:39 +00:00
Dana Jansens
6a9e7dea8e
ignore another type of crossing event, caused when leaving gtk popup menus
2003-04-18 21:56:53 +00:00
Dana Jansens
01debc76b9
yet MORE changes to how focusin/out's are handled. more edge case fixing, this time with focus fallback when unmapping a window in sloppy focus mode.
2003-04-18 08:45:49 +00:00
Dana Jansens
0a3d3245a6
remove debug print
2003-04-17 17:31:22 +00:00
Dana Jansens
793099ce57
dont ignore all Virtual pointer events
2003-04-17 08:04:45 +00:00
Dana Jansens
c4af950903
fix up support for moveresize. make keyboard grabs Async so that i can hit escape to cancel a moveresize process.
2003-04-17 07:00:13 +00:00
Dana Jansens
12d4c8666c
add support for net_moveresize_window and net_wm_moveresize
2003-04-17 05:43:41 +00:00
Dana Jansens
7886b797a3
move the move/resize functionality into moveresize.c, for use with the netwm atoms. use it from teh plugins. combine the two actions.
2003-04-17 05:28:35 +00:00
Dana Jansens
450c21d0ca
ignore virtual crossing events..
2003-04-17 01:48:26 +00:00
Dana Jansens
cb71c993e5
dont send menu events to plugins
2003-04-16 19:41:22 +00:00
Dana Jansens
185d1337e5
menus works on some level. add a built-in root menu
2003-04-16 18:09:11 +00:00
Dana Jansens
79a352a40b
raise menus above clients.
...
hilight menu entries as the cursor passes over them.
2003-04-16 05:36:51 +00:00
Dana Jansens
677bc6ed2d
clean up this mess of crap a lot
2003-04-14 17:07:04 +00:00
Dana Jansens
bb8b9ddbc5
pass the Client for frame_context cuz the client might be NULL
2003-04-13 08:36:38 +00:00
Dana Jansens
5cf61ee023
move the openbox engine into librender and the kernel. the theme is loaded and stored inside librender. the frame is decorated and managed inside the kernel.
2003-04-13 07:18:28 +00:00
Dana Jansens
a6ce30cba9
add MapRequest print
2003-04-10 06:46:44 +00:00
Dana Jansens
9bae1e3128
rm debug print
2003-04-08 20:07:20 +00:00
Dana Jansens
71badb0790
move config option loading for the kernel into config.c/h
...
add options for the number of desktops and the names of the desktops
2003-04-08 07:31:26 +00:00
Dana Jansens
c99bb4a049
add more options for focus fallback, use an enum for all the types of fallbacks.
2003-04-08 06:14:53 +00:00
Dana Jansens
2dac2cc01b
ignore inferior enternotifies
...
add anotehr focusdebug print
2003-04-07 22:27:02 +00:00
Dana Jansens
3cbf5bfa7c
missed one
2003-04-07 07:29:49 +00:00
Dana Jansens
2eb4d79326
put focus messages in ifdefs
2003-04-07 07:29:00 +00:00
Dana Jansens
d43a109ba2
nm that, pointless...
2003-04-06 18:38:51 +00:00
Dana Jansens
d1913d1d01
disable keyboard and mouse input while ob is starting or exiting
2003-04-06 18:18:55 +00:00
Dana Jansens
cbbf90a718
change how rc parsing will work. a=b will be parsed in any [section] and given to a separate parsing callback. no more general config infrastructure needed/
2003-04-05 20:27:03 +00:00
Dana Jansens
e6818c741c
yet more haxes to make focus events work the way i want. this is rough shit.
2003-03-31 06:36:59 +00:00
Dana Jansens
a6d9be4f66
yet more focus fixings. RevertToPointerRoot could mess things up focusing a client and us ignoring the FocusIn of Pointer type. this is all handled now.
2003-03-30 22:58:04 +00:00
Dana Jansens
69177d8760
FocusOut's are NOT ignored. thats bullshit. fixing comment.
2003-03-28 11:14:20 +00:00
Dana Jansens
76943cdfe0
focus... works...? i have all cases of mozilla working, with RevertToPointerRoot sucking ass but.. working now.
2003-03-28 11:05:38 +00:00
Dana Jansens
4d65fe35ff
comment why NotifyAncestor is not ignored
2003-03-28 10:46:25 +00:00
Dana Jansens
5895fa84ac
yet MORE focus events reworkings. mozilla behaves now too. woot
2003-03-28 10:44:22 +00:00
Dana Jansens
32808b53a5
more focus cleanups. ignored focusin's were not working right recursively.
...
also, when the focusin coming later is not for a valid window the fallback would not be called. both fixed.
2003-03-28 09:57:48 +00:00
Dana Jansens
92bea590c0
let a window be 'moved' to a new desktop without actually show/hiding it. useful for sending a window when following it, so theres no flash/flicker
2003-03-28 08:11:02 +00:00
Dana Jansens
c7e818abd7
dont focus !normal windows on enter events
2003-03-28 01:13:56 +00:00
Dana Jansens
52d4433a00
fallback focus in superior fashion
2003-03-28 00:25:10 +00:00
Dana Jansens
c3a2684e02
watch for FocusIn's for unknown clients
2003-03-27 23:39:20 +00:00
Dana Jansens
3139c3c713
missed the end of a comment
2003-03-27 23:12:42 +00:00
Dana Jansens
bf32b376b5
handle focus in the kernel, no more plugin
2003-03-27 23:10:22 +00:00
Dana Jansens
2fc662aa62
set the last time to CurrentTime for events that don't have time stamps
2003-03-27 20:28:06 +00:00
Dana Jansens
f29dd7e0cd
not using CurrentTime anywhere
2003-03-26 15:02:08 +00:00
Dana Jansens
0c69d23c24
dont let you got to numdesktops+1
2003-03-26 08:29:34 +00:00
Dana Jansens
a1e450ee69
kill debug prints
2003-03-26 08:18:50 +00:00
Dana Jansens
059fa15ae1
use ungrab enter events
2003-03-26 07:07:55 +00:00
Dana Jansens
9be1d64d36
dont change desktop when its out of range
2003-03-25 23:59:50 +00:00
Dana Jansens
c9a35f0b81
typo
2003-03-25 02:20:16 +00:00
Dana Jansens
5722e9e98d
dont accept MapRequest's for !iconic windows
2003-03-25 02:18:19 +00:00
Dana Jansens
d56e90fac8
use g_hash_table properly
2003-03-24 22:03:38 +00:00
Dana Jansens
436c85576e
only perform the actions necessary when performing an engine_adjust_area. pass whether the client has moved or resized
2003-03-24 19:52:09 +00:00
Dana Jansens
2bdc37e920
double ptrs suck! yay shape!
2003-03-24 19:10:33 +00:00
Dana Jansens
7567e3d781
handle shape events
2003-03-24 19:07:28 +00:00
Dana Jansens
44c5552427
kill debug prints
2003-03-24 05:38:46 +00:00
Dana Jansens
3b14b587ef
more focus improvements. everything seems to work!
2003-03-24 04:56:46 +00:00
Dana Jansens
137efd1367
more focus fixes. i wish this could end.
2003-03-24 00:46:21 +00:00
Dana Jansens
687559cb2d
yet more improvements to focus handling
2003-03-23 23:47:47 +00:00
Dana Jansens
fdf4265a13
kill debug print
2003-03-23 19:40:23 +00:00
Dana Jansens
e7e2a69fd0
handle multiple maprequests graciously
2003-03-23 19:39:20 +00:00
Dana Jansens
0a69cfc6d2
add strict ansi compliance
2003-03-21 20:25:34 +00:00
Dana Jansens
5034073da7
use the client_set_focused function when getting FocusIn/Out events
2003-03-21 10:24:24 +00:00
Dana Jansens
b23c65362d
rm debug print
2003-03-21 08:19:18 +00:00
Dana Jansens
ca45916f77
update engine last for focus events
2003-03-21 08:17:43 +00:00
Dana Jansens
44889c3c69
MapRequest needs to activate the window
2003-03-19 19:56:53 +00:00
Dana Jansens
89142ea6b4
dont need a mask_list here
2003-03-19 18:55:21 +00:00
Dana Jansens
90e654131d
break, dont return
2003-03-19 17:24:47 +00:00
Dana Jansens
0c16988daa
add code to make net_active_window events work
2003-03-19 17:24:24 +00:00
Dana Jansens
4732930eec
ignore !normal crossing events
2003-03-19 08:19:27 +00:00