Dana Jansens
f6b19a1dc4
return true when ungrabbing so that it can ungrab them all on shutdown
2003-06-26 23:33:29 +00:00
Dana Jansens
81cf4699df
set ret to true when grabbing and we alerady have it grabbed
2003-06-26 23:31:20 +00:00
Dana Jansens
22112d2b4e
check that extensions_vidmode is set before trying to use the vidmode functions
2003-06-26 16:32:40 +00:00
Dana Jansens
d3dd25a55c
return FALSE if a grab fails
2003-06-26 07:58:25 +00:00
Dana Jansens
da24f9156b
set the desktop hint when the window already has a hint but its out of range
2003-06-26 07:30:19 +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
9c8ee186d9
add NUM_STACKLAYER, fix some comments that dont apply
2003-06-26 07:08:16 +00:00
Dana Jansens
0443796e40
remove unused variable
2003-06-26 07:07:59 +00:00
Dana Jansens
ba76ffaa2b
remove/add instead of raising to put a window into a new layer
2003-06-26 07:07:42 +00:00
Dana Jansens
794ce0e083
new stacking code that doesnt suck ass to look at, woot
2003-06-26 07:05:27 +00:00
Dana Jansens
e39762b05b
use the minsize to keep the stuff ni the dock off of the bevel edges etc
2003-06-26 05:46:06 +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
4b90b241ce
grab all motion events for pointer grabs
2003-06-25 18:34:28 +00:00
Dana Jansens
a385702349
position submenus correctly horizontally
2003-06-24 19:33:24 +00:00
Dana Jansens
b61a41c6b1
menus were too short by a border width
2003-06-24 19:22:41 +00:00
Dana Jansens
6dd3ee7271
check to make sure the window is on screen *after* positioning it
2003-06-24 19:19:06 +00:00
Dana Jansens
76aeb9b231
add a simple menu parser.
...
while menu parsing, the theme does not exist so we can't do any theme stuff while creating menu stuff, so put that off for later, i.e when the menu is shown.
2003-06-22 08:32:35 +00:00
Dana Jansens
197988af67
reorder startup so menu goes before config parsing
2003-06-22 08:29:40 +00:00
Dana Jansens
069e9607fa
add decoration state to the frame struct. make client_configure adjust the frame if the decorations do not match between the client and the frame, so that when they change it can send a configurenotify to the client.
2003-06-21 18:59:35 +00:00
Dana Jansens
d085756572
make client_reconfigure a non-user-type client_configure
2003-06-21 18:29:42 +00:00
Dana Jansens
75b23047d6
strdup the exec path cuz it gets freed by the time we restart otherwise
2003-06-21 18:14:42 +00:00
Dana Jansens
77062863f3
moveresize messages are not user-requests
2003-06-21 18:10:04 +00:00
Dana Jansens
7e83fa0866
remove debug print
2003-06-21 18:08:26 +00:00
Dana Jansens
716477fc40
send teh configure event to client on user-requested final configures even if not moved, cuz usualy the final isnt sent with a change, but just to end the move process.
2003-06-21 17:28:36 +00:00
Dana Jansens
bab8b41f5c
always use the session id from the session manager when setting the restart property
2003-06-21 16:37:39 +00:00
Dana Jansens
4cf23f53e7
add -sm-disable option
2003-06-21 09:51:15 +00:00
Dana Jansens
7f2550e0ce
only show -sm-client-id in the help when session management is build in
2003-06-21 09:40:15 +00:00
Dana Jansens
e6739af282
session management works, and it can resume with its old ID, so it works with gnome-session
2003-06-21 09:38:51 +00:00
Dana Jansens
373a4584d6
make session management optional
2003-06-21 08:45:25 +00:00
Dana Jansens
9befe65a65
set the required properties so that session managers see openbox
2003-06-21 08:03:56 +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
c100b72c5d
more namespacing with Rr*
2003-06-21 02:26:50 +00:00
Dana Jansens
4541959b8c
kill a warning
2003-06-21 02:24:18 +00:00
Dana Jansens
dbe2851b91
more namespacing to Rr*
2003-06-21 02:15:13 +00:00
Dana Jansens
10232a436a
fix a warning
2003-06-21 02:14:53 +00:00
Dana Jansens
092616de9a
rename pixel32/16 to RrPixel32/16
2003-06-21 02:00:42 +00:00
Dana Jansens
b1f5555218
put the render theme into a struct
2003-06-21 01:53:26 +00:00
Dana Jansens
a4a0cb7829
fixed to accomodate the changes to the render/ API.
2003-06-21 00:42:47 +00:00
Dana Jansens
cd12a2eae5
simply the render interface by not requiring the setting of all the areas. only take a w and h in paint(). best font layout ever.
2003-06-20 02:17:23 +00:00
Dana Jansens
6e93be1d2e
remove non-planar surfaces
2003-06-20 00:05:51 +00:00
Dana Jansens
36231e5cb3
fix for how base-size is used to comply with the icccm
2003-06-19 17:14:16 +00:00
Dana Jansens
8a8f2c831f
remove an extra useless call to focus_set_client(NULL)
2003-06-08 23:25:21 +00:00
Dana Jansens
7cbac3c4d5
describe the complicated if a bit :)
2003-06-08 22:38:31 +00:00
Dana Jansens
07539c38c8
more checks for when to do an XResizeWindow
2003-06-08 22:37:31 +00:00
Dana Jansens
43d109dd06
send the configure notify for resizes too, just to be a little more safe
2003-06-08 22:30:55 +00:00
Dana Jansens
ddeb066ed4
onlt send configurenotify if the client actually moved, to work around emacs, hopefully :)
2003-06-08 22:28:32 +00:00
Dana Jansens
05e52e3c8e
some more fixes for resizing clients. aspect ratio is not the last thing checked and so rules all, that might need to change.. however, it now uses base-size only for aspect ratios and base-size/min-size for other sizing shit, as per the ICCCM.
2003-06-08 21:38:06 +00:00
Dana Jansens
bda9e6aaf9
from icccm:
...
If a base size is not provided, the minimum size is to be used in its place and vice versa.
Added support for this.
2003-06-08 21:21:23 +00:00
Dana Jansens
ac4e6784dd
i was backwards
2003-06-08 01:20:13 +00:00
Dana Jansens
7c13920066
this cnofigure is FINAL!
2003-06-08 01:18:51 +00:00
Dana Jansens
5b3d5bda24
don't resize the client itself while doing a resize if its not final when config_opaque_resize is not on
2003-06-08 01:01:13 +00:00
Dana Jansens
f7de8e5a59
better VIDMODE support, handle the cases where the functions fail
2003-06-04 23:21:51 +00:00
Dana Jansens
abd8ec3c2e
size fullscreen applications to the resolution with the VIDMODE extension
2003-06-04 23:19:06 +00:00
Dana Jansens
68cc6e30b8
remove the client_remaximize function, and replace it with the client_reconfigure function, which just calls client_configure with the window's current location and dimensions, user=TRUE and final=TRUE.
...
add support for the VIDMODE extension in client_configure, namely, fullscreen windows are positioned at the point of the viewport rather than at 0,0.
call client_reconfigure when uniconifying a window, so that fullscreen windows are put at the point of the view port.
2003-06-04 23:11:26 +00:00
Dana Jansens
795d90c3bc
make key grabbing per window instead of always root
2003-06-04 22:45:54 +00:00
Dana Jansens
8a1fa6d3ac
allow cycling to iconic windows
2003-06-04 19:30:35 +00:00
Dana Jansens
c6fd3aa890
use client_can_focus from client_focus to always get the same result
2003-06-04 19:24:37 +00:00
Dana Jansens
4cb48bebb5
reverting the transient focus cycle change, its just not.. right. add the parent's title to the transient's for the popup instead of just relpacing it
2003-06-04 18:22:19 +00:00
Dana Jansens
1139d96e7f
better focus cycling for transients. use the parent instead of the transients in the list in case it has more than one, then after choosing it try focus a transient instead
2003-06-04 17:33:20 +00:00
Dana Jansens
0ce054c2b5
dont try change focus while looping thru the focus list
2003-06-04 17:17:55 +00:00
Dana Jansens
e0fa57d21c
allow focus_fallback to query if a client can be focused without changing the focus order on it
2003-06-04 17:16:50 +00:00
Dana Jansens
f827fbcaee
remove debug print
2003-06-03 05:17:32 +00:00
Dana Jansens
70a34967d6
ignore xerrors while using the pixmaps specified by the client, since they can certainly be invalid and there's nothing i can do about it.
2003-06-03 04:52:54 +00:00
Dana Jansens
f7b687487c
rm g_messages.. ones that segfault.. :>
2003-06-03 01:54:31 +00:00
Dana Jansens
5a8c164412
also dont increment the nicons if the w*h is 0
2003-06-02 23:16:50 +00:00
Dana Jansens
754391ea4d
watch out for 0x0 icons, and skip them
2003-06-02 23:10:27 +00:00
Dana Jansens
365a9fbb69
adjust what gets raised on map a bit, a little less selective.
2003-05-30 18:16:33 +00:00
Dana Jansens
3424de66b2
only add non-nonintrusively when both windows share a stacking layer
2003-05-29 15:24:56 +00:00
Dana Jansens
2e824eece1
rm the 'focusraise' action, it is redundant.
2003-05-28 23:50:43 +00:00
Dana Jansens
b7780b749f
proper centering of the text in popups without icons
2003-05-28 01:40:21 +00:00
Dana Jansens
4b2ec0d03c
use frame->visible, not the desktop number, other states exist too, like show_desktop
2003-05-26 18:39:48 +00:00
Dana Jansens
d1e355de2c
this is a big one! im putting stats in here just cuz!
...
59 files changed, 1691 insertions(+), 607 deletions(-)
Adding the beginings of ObConf. Adding a resistance-config plugin for ObConf.
Creating an obparser library that obrender can use, the kernel can use, plugins can use, and ObConf and its plugins can use. (its just code for using libXml2)
2003-05-24 21:47:06 +00:00
Dana Jansens
3753a0ed3e
convert shit from utf8 to filename before execing it
2003-05-24 16:15:29 +00:00
Dana Jansens
d2857b1194
ECKS EM ELL
2003-05-24 15:35:26 +00:00
Dana Jansens
75e691a2a5
add actions for showing the desktop
2003-05-24 09:22:19 +00:00
Dana Jansens
e483257007
soem changes to desktop actions.
...
instead of having *wrap actions, just default to having wrap on, and let it be optionally placed into the rc to disable it.
instead of next/prev desktop, just have actions for desktop to the right/left/up/down. this applies to sendtodesktop actions too.
2003-05-24 09:11:42 +00:00
Dana Jansens
26ebe251a9
add a DEBUG_FOCUS print
2003-05-24 08:39:14 +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
a373b1582e
use the user friendly desktop number
2003-05-24 08:37:21 +00:00
Dana Jansens
cd54e31a59
clarify comment
2003-05-24 08:10:28 +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
f68eb1fc25
validate utf8 strings before using them
2003-05-23 18:56:33 +00:00
Dana Jansens
f54e8c9ba0
add --enable-gl support, and put the flags/libs in the appropriate makefiles
2003-05-23 05:30:00 +00:00
Dana Jansens
a83b590ff6
remove a todo item that seems to be.. done!
2003-05-23 02:03:40 +00:00
Dana Jansens
b69473054b
missed a case of using the stacking list and assuming that its all clients still. fixed that assumption now.
2003-05-23 02:00:54 +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
04a85677e5
layers submenu on client
2003-05-22 02:49:08 +00:00
Dana Jansens
4d814a383b
add actions for changing client layers to abov/below/normal
2003-05-22 02:22:43 +00:00
Dana Jansens
d6cb5adbea
typo
2003-05-22 02:05:38 +00:00
Dana Jansens
68eba18b76
load the client_menu by default for nowc
2003-05-22 01:46:49 +00:00
Scott Moynes
71d2605e1c
Client menus
...
Add "client_menu" to pluginrc to use.
2003-05-21 23:58:40 +00:00
Dana Jansens
7da6e2271e
add 'movetoedge' actions
2003-05-21 03:58:32 +00:00
Dana Jansens
9f501638b5
add xerror.h
2003-05-21 03:56:56 +00:00
Dana Jansens
539f061b30
Openbox3 in the WM name, FUCK OFF XINE, YA YOU HEARD ME.
2003-05-21 03:27:10 +00:00
Dana Jansens
32390c6b6d
ignore errors when playing with application defined colormaps
2003-05-20 05:02:24 +00:00
Dana Jansens
ea6d0e0d4d
get the size for all the apps before positioning them
2003-05-19 20:27:11 +00:00
Dana Jansens
40f2e19ef4
set teh dock sizes before the app uses it for positioning
2003-05-19 20:18:46 +00:00
Dana Jansens
135d6d7bdc
center dock apps
2003-05-19 20:17:17 +00:00
Dana Jansens
81417dd344
use the resize increment when resizing relative
2003-05-19 04:13:06 +00:00
Dana Jansens
5a7953b36a
2 in 1 again..
...
a) directional focus actions
b) action system changes i.e. use structs/arrays for convertings strings to actions instead of gross if-else chains
2003-05-19 03:52:25 +00:00
Scott Moynes
00960995a2
Added a fifo_menu plugin
2003-05-18 23:36:13 +00:00
Dana Jansens
a18c1697b1
make icons use pixel32 data, and image_draw takes pixel32 data.
...
client.c gets pixmap icons as a backup to netwm ones, and they are converted into pixel32 data.
2003-05-18 23:06:11 +00:00
Dana Jansens
f41d06f583
include grab.h
2003-05-18 23:05:06 +00:00
Scott Moynes
d8921eb3d2
this is actually xor :) - fixing the focus search function to not return NULL if no valid group members exist to be a transient for
2003-05-18 17:49:17 +00:00
Dana Jansens
cea19c78c1
proper check to see if something was raised, the it==NULL would cause it to always return, incorrectly.
2003-05-18 17:37:03 +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
ac779e65ac
grab the mouse during focus cycling. this removes the bug of focusing following the mouse when the popup disappears and fuck up your cycling.
2003-05-18 03:32:34 +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
0b5f6589ba
print the class not the name
2003-05-16 21:34:00 +00:00
Dana Jansens
f8bbe46bce
get all the strings!
2003-05-16 21:32:42 +00:00
Dana Jansens
f17b225daa
save the dock's class/name for future evil purposes!
...
also print names of windows being managed/unmanaged
2003-05-16 20:20:33 +00:00
Dana Jansens
d9e1eb0cbe
FUCK dock is not an array anymore!
2003-05-16 19:32:22 +00:00
Dana Jansens
7a166a3838
give the dock a strut and use it
2003-05-16 19:15:56 +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
6e42b65bda
add anotehr stacking_add function.
...
make stacking_add take care of raising also.
make new windows that dont get focus also not raise above the focused window.
2003-05-16 15:16:33 +00:00
Dana Jansens
8367ab14e8
movnig shit around
2003-05-16 15:15:30 +00:00
Dana Jansens
7b65469aea
watch out for not loading the timed_menu plugin
2003-05-14 18:40:33 +00:00
Dana Jansens
c5b8ec744c
pass teh correct values for config notify events
2003-05-14 18:25:51 +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
9938de3693
add opaque move/resize to the rc3
2003-05-11 23:57:56 +00:00
Dana Jansens
ea6b9cafe9
was using the frame window in the stacking list hint
2003-05-11 23:34:27 +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
fed4a9e70b
rm comment for shit i fixed
2003-05-11 21:39:25 +00:00
Dana Jansens
7e9ad37587
not everything in the stacking_list is a client anymore
2003-05-11 20:19:00 +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
506122a110
garb press events so they dont break bindings... X sucks
2003-05-11 17:49:12 +00:00
Dana Jansens
3689fa4b7a
grab button events on the slit so they dont go through to root
2003-05-11 17:45:21 +00:00
Dana Jansens
ffb76025fa
use the size of the icon window for slit apps, not the client window
2003-05-11 17:31:23 +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
2508089df5
make the client menu not have a title
2003-05-10 16:03:06 +00:00
Dana Jansens
bd6d80f168
be more careful about ignoring focusin/out event pairs
2003-05-10 15:51:44 +00:00
Scott Moynes
24eb9f85df
Turn off timed_menu by default
2003-05-10 15:12:27 +00:00
Scott Moynes
03d42b5d82
Timed menu that reads output from a process while the window is hidden
2003-05-10 14:51:27 +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
380ddd2b9c
unshade windows when you cycle focus to them
2003-05-09 22:37:19 +00:00
Dana Jansens
bccb90b01d
add shit that i made in the last week!
2003-05-09 19:58:08 +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
1594828ec5
move windows before calcing struts. watch for windows on DESKTOP_ALL when removeing a desktop
2003-04-28 19:36:59 +00:00