Dana Jansens
2876f22088
use CurrentTime when time gets moved backwards
2007-03-28 19:41:41 +00:00
Mikael Magnusson
fc5b9a5612
fix compile without startup notification after r5711
2007-03-28 17:05:23 +00:00
Dana Jansens
f746a4975b
use setenv to set up the DESKTOP_STARTUP_ID when launching programs.
...
before, if DESKTOP_STARTUP_ID was set in openbox, it would mess up adding it to the child's environment because it would appear twice. so now it will only appear once for the child always.
2007-03-28 06:00:19 +00:00
Dana Jansens
3ad050f7d8
proper logic for event_time_after, and wraparounds and such
2007-03-28 04:07:27 +00:00
Dana Jansens
5fb30e4488
add toggled-pressed and toggled-hover button states to themes. also rename toggled to be toggled-unpressed
2007-03-28 03:32:46 +00:00
Dana Jansens
33cc572402
drop some wasted client_validates.
2007-03-28 02:00:10 +00:00
Dana Jansens
d20f84f5de
more handling time wraparounds
2007-03-28 01:53:37 +00:00
Dana Jansens
339d767044
handle time wrapping around.
2007-03-28 01:52:06 +00:00
Dana Jansens
0ec2282e2c
make sure the ungrab happens after the grab. fracking X server doesn't have a monatomic clock..
2007-03-28 01:11:40 +00:00
Dana Jansens
3278fdae73
open the menu with the mouse cursor just outside the top item
2007-03-25 17:32:58 +00:00
Dana Jansens
cbbda7a363
proper logic for using the menu overlap with middle centered submenus.
...
always center top level menus horizontally under the cursor. why is this not normal behavior..?
2007-03-25 17:26:22 +00:00
Dana Jansens
ee58f96a84
better placement for top level menus under the mouse cursor. middle placement is not used for this now. it was behaving differently than submenus so i'd like to have some consistency
2007-03-25 17:19:41 +00:00
Dana Jansens
afc015158a
better vertical centering for when "middle" placement is enabled for menus
2007-03-25 17:16:32 +00:00
Dana Jansens
ede50bed27
return the old cursor. oops
2007-03-25 17:11:50 +00:00
Dana Jansens
c567f5937b
add support for the X Cursor library. this means a nicer cursor for startup notification.
2007-03-25 16:56:47 +00:00
Dana Jansens
59c5d1cc4e
set up the menu's parent and children stuff before rendering it
2007-03-25 16:38:04 +00:00
Dana Jansens
e6c82786ff
don't menu menus jump around at all anymore. open them on screen in the first place
2007-03-25 16:34:26 +00:00
Dana Jansens
d6c45db8da
bad idea.. more thought is needed..
2007-03-25 15:16:00 +00:00
Dana Jansens
20f4d7fd44
when opening the client menu with a key, open it at the window's top left corner. is this clever or dumb?
2007-03-25 15:05:10 +00:00
Dana Jansens
eb2a0feb01
watch for reverttoparent reverting to the root window, which will create a DetailInferior focusin event on root.
...
adding some debug messages also which I am using..
2007-03-24 23:19:45 +00:00
Dana Jansens
4aa8d64f76
set the event_curtime when running an action to the time in the event used to run the action
2007-03-24 17:22:31 +00:00
Dana Jansens
c4732aeed2
2007-03-24 17:17:02 +00:00
Dana Jansens
e77353f0cd
clean up the title getting function
2007-03-24 17:06:19 +00:00
Dana Jansens
4c2b16e72d
kill window title numbering...
...
probably it was a dumb idea all along. you're not picking the numbers yourself and you're probably not remembering which window they apply to and the focus indicator thinger is much more clever than numbers
2007-03-24 17:01:40 +00:00
Dana Jansens
ba161e967b
launch things on the desktop where you ran it.
...
also: kde apps move themselves to the current desktop when they open. what the heck?
2007-03-21 16:19:06 +00:00
Dana Jansens
c4446bebff
ignore focus events on root that we don't care about
2007-03-21 16:12:21 +00:00
Dana Jansens
fd382fcc36
allow focus to disappear to black holes. (that is, windows not managed by openbox). the black hole may just be a window on another monitor. keyboard events aren't going to work in this scenario, though.
2007-03-21 15:54:30 +00:00
Dana Jansens
e227ac841e
we're only getting one unmap notify now, with the new event mask on the root window. we're not getting one for the frame window anymore.
2007-03-20 04:42:25 +00:00
Dana Jansens
fb3d2033ba
not passing timestamps sometimes and not others. set event_curtime when client messages provide a timestamp.
2007-03-19 17:59:16 +00:00
Dana Jansens
0ed1b678d1
memory leak in xinerama setup code
2007-03-18 15:16:03 +00:00
Dana Jansens
3678f8df8a
use const char*'s when we should be
2007-03-18 15:07:30 +00:00
Dana Jansens
5fa443efc8
oops, logic error
2007-03-17 20:06:16 +00:00
Dana Jansens
50f631b9a7
mention when the logicalx/y is actually returned
2007-03-16 19:16:07 +00:00
Dana Jansens
73dac2b9b9
fix for bug introduced in revision 5643. logical size is supposed to be updated only when the window is resized.
2007-03-16 19:14:53 +00:00
Dana Jansens
f658ec961e
animate presses on toggled titlebar buttons
2007-03-16 01:33:47 +00:00
Dana Jansens
6772ec19fc
only refocus the omnipresent window if its allowed
2007-03-15 01:11:52 +00:00
Dana Jansens
34f5bbe4f6
clearer engrish
2007-03-15 01:09:10 +00:00
Dana Jansens
091e296a3d
when an omnipresent window has focus and you switch desktops, keep it focused
2007-03-15 01:02:48 +00:00
Dana Jansens
83d987d9ab
don't fall back focus to omnipresent windows
2007-03-14 21:15:58 +00:00
Dana Jansens
c80b496bf4
make focus_order into one long list instead of having one per desktop. this actually fixes bugs with omnipresent windows and adding desktops. it is just overall a little nicer i think.
...
also this is not tested. sorry if it breaks everything.
2007-03-14 21:07:30 +00:00
Dana Jansens
a9175a8a32
save the focus_client when falling back, so we don't actually refocus it when we don't want to.
2007-03-14 15:56:59 +00:00
Dana Jansens
adc5675823
oh, 2 things in this commit..
...
1) THIS ONE IS IMPORTANT: don't set client->iconfied if the window is not actually going to be allowed to iconify. heh!
2) changes to focus fallback to avoid crashing and to avoid losing focus all at the same time.
2007-03-14 15:51:21 +00:00
Mikael Magnusson
768ce7b456
move stuff around in client_unmanage to maybe make closing windows a bit nicer
2007-03-14 14:17:31 +00:00
Dana Jansens
5f7ffb00ba
refix for managing iconic windows, without having the frame map which caused flashing.
...
instead, keep track of if the frame has been mapped yet. if it hasn't and it is getting hidden, then make sure to unmap the child.
2007-03-14 13:58:36 +00:00
Dana Jansens
e2521f5c64
a) fix resizerelative moving windows when they reach their minimum size do this by...
...
b) adding a function to let you see what size/position a window will be given when you actually try move/resize it to some given values. (client_try_configure)
2007-03-14 03:45:56 +00:00
Dana Jansens
2d03d09577
make frame and client window in a consistant mapped state when the window is grabbed
2007-03-14 02:23:50 +00:00
Dana Jansens
594648729f
less wasted updates of wm_state
2007-03-14 02:07:30 +00:00
Mikael Magnusson
ebbcacae15
focus fallback
2007-03-14 01:17:39 +00:00
Mikael Magnusson
53109b7592
comparing strings to random locations in memory is probably not what we wanted to do
2007-03-13 12:34:58 +00:00
Dana Jansens
a9910e520b
always unfocus the window when it disappears, no special cases.. (except unmanage)
2007-03-13 04:15:25 +00:00
Dana Jansens
270a5b25df
set IconicState on windows that are not visible always. this means windows on other desktops too.
...
as well, this turned out to be a nice cleanup of the wmstate code.
regards to the random dude in #openbox complaining about the ICCCM to make me think to look this up and see if openbox was compliant.
2007-03-13 04:04:13 +00:00
Dana Jansens
7f58bd9eaa
save and restore pre-maximized/fullscreen sizes properly
...
much cleanup on how per-app settings are applied to new mapping windows. maybe i broke it? but it'll be much quicker now, and it's consistant with the rest of the code, so hooray for that. pls let me know if i broke any of it :( hee..
2007-03-13 02:29:08 +00:00
Dana Jansens
b2e08c0ad5
remove event_lastttime. use CurrentTime when handling events without a timestamp in them
2007-03-12 23:23:39 +00:00
Dana Jansens
d47c6a0979
fallback is still getting x errors. instead, fallback when the client iconifies, and don't fallback when nothing has focus, send it to where we can control things though.
2007-03-12 17:31:11 +00:00
Dana Jansens
dc41c78a90
focusins can occur on windows that aren't clients when there's latency involved. wm_torture proved this point. fallback in that situation. also fallback when nothing is focused.
2007-03-12 06:09:02 +00:00
Dana Jansens
85a1a0cfb3
don't validate inside client_focus. instead, validate before you call it!
2007-03-12 06:04:00 +00:00
Dana Jansens
6b7cc88c9d
validate clients before trying to focus them in fallback
...
also validate before trying to set the focus on a window
this should fix those crashes, and should just be better over all
2007-03-12 05:57:30 +00:00
Dana Jansens
3a33642be4
update focus_hilite appropriately for when changing desktops
2007-03-12 05:44:16 +00:00
Dana Jansens
c018e21220
i rewrote handling of focus events. this is pretty much based on blackbox's current form, as well as reading the xlib programming manual at:
...
http://tronche.com/gui/x/xlib/events/input-focus/normal-and-grabbed.html
this may break for people. that'd be nice to hear about, so it can be fixed. but hopefully this is more robust. it sure is a lot more simple.
2007-03-12 05:25:34 +00:00
Dana Jansens
310ea89e0e
another silly bug. i rule the school.
2007-03-12 03:09:09 +00:00
Dana Jansens
9ca0554507
that was a silly mistake. fullscreen windows amongst others will not crash now :D
2007-03-12 03:07:00 +00:00
Dana Jansens
52176d1485
roll back focus fallback change, so it behaves well with new stacking
2007-03-12 02:41:34 +00:00
Dana Jansens
d113b9f33f
ok this is from prevous changes but has a bunch of debug stuff in it
2007-03-12 02:34:34 +00:00
Dana Jansens
2244bc036a
remove the group option for the restacking commands in rc.xml, cuz groups are clever now
2007-03-12 02:27:58 +00:00
Dana Jansens
d33f44cd86
Rewrite the stacking code. It's a lot faster now, I should think. It's def a more clever algorithm. It deals with group transients much better.
...
On that note, utility and menu and toolbar window types are now treated as group transients in terms of stacking and focus and such.
2007-03-12 02:24:40 +00:00
Mikael Magnusson
bf247215bb
no separator at the start of the menu
2007-03-12 02:12:51 +00:00
Mikael Magnusson
baa4a878cd
make the combined client list menu not suck quite as bad
2007-03-12 01:59:49 +00:00
Mikael Magnusson
fa122a3092
update copyright notice in --version output
2007-03-12 01:12:31 +00:00
Dana Jansens
e2b3a32aed
We were grabbing SubstructureNotifyMask on the root window. I don't know why.. It meant that we got unmap notifies for windows we weren't even managing and stuff. It ended up breaking VLC when it mapped-unmapped-mapped a window. We grab StructureNotify for all the clients, so I am not sure why this was ever there.
2007-03-11 22:16:42 +00:00
Dana Jansens
cbfa27759d
extra braces.. why does the world hate me so?
2007-03-11 19:27:44 +00:00
Dana Jansens
d9601bc196
.. i am pretending to be mika :D :D ok this time for real
2007-03-11 19:27:16 +00:00
Dana Jansens
d98a6183a3
oh.. wasted verbosity.. *strums guitar*
2007-03-11 19:26:28 +00:00
Dana Jansens
e714fa7351
rewrite the focus steal prevention code to clean it up hopefully a bit. also don't steal focus from globally active focus model clients
2007-03-11 19:25:57 +00:00
Dana Jansens
6714a0e2ca
Honor transient_for=Root, even thought this is crap and breaks some KDE stuff. Also include a big comment as to why this is suck.
2007-03-11 19:15:28 +00:00
Dana Jansens
895554765d
make smart placement more smart with multiple monitors. hopefully?
2007-03-11 18:39:34 +00:00
Dana Jansens
7229bea3c6
client_configure_full is trying to move a window, it shouldn't determine the window's monitor from its current position, but from the new position instead. move client_monitor()'s logic into screen, more generically, and let client_configure_full use that
2007-03-11 17:34:07 +00:00
Dana Jansens
fe31716486
fallback to transient parents properly
2007-03-11 17:05:07 +00:00
Dana Jansens
62a39c4c70
stacking has been made more reliable with groups and group transients.
...
this was a pretty invasive change in client.c though, so it may break things?
it did expose some bugginess in client_calc_layer, which is now better than ever, hopefully there isn't more to be found.
2007-03-11 16:58:19 +00:00
Mikael Magnusson
c5d2a9bc98
allow setting startupnotify per execute action, default to disabled. use like this: <action name="execute"><execute>program</execute><startupnotify><enabled>true</enabled><name>something descriptive</name><icon>name of an icon in the icon theme to show</icon></startupnotify</action>
2007-03-11 15:41:47 +00:00
Dana Jansens
923e0edfa8
look for more things to cancel startup notification on, from the wmclass. if the wmclass is related to the name or the binary name, then it will cancel it also. this is so that oldschool stuff doesn't thing its opening forever.
2007-03-11 14:31:11 +00:00
Dana Jansens
2c98204dfe
make _NET_ACTIVE_WINDOW requests look at the timestamp when the user didn't
...
request it
2007-03-11 14:17:14 +00:00
Dana Jansens
6a61f0c433
fix non instrusive stacking adds, they didnt account for layers at all
2007-03-11 14:16:24 +00:00
Dana Jansens
aaabb13c0a
add _NET_WM_FULL_PLACEMENT, cuz openbox does do placement, even tho it can be sucky right now, lol. but it's good for dialogs and stuff, which is what this is talking about.
...
also add _NET_WM_MOVERESIZE_CANCEL.
2007-03-11 05:00:56 +00:00
Dana Jansens
19b480058e
wow... this is a big commit...
...
all related to _NET_WM_USER_TIME and focus stealing prevention
a) add launcher startup notification. this means when you run something from
the openbox menu or a key/mouse binding, that startup notification will go
on in openbox and other applications like your panel or something
b) add the _NET_WM_USER_TIME property for windows
c) use the _NET_WM_USER_TIME data and startup notification to prevent focus
stealing.
d) cookie party !! ! all are invited.
e) oh yeah, and pass around timestamps for a lot more things. like, when you
run an action, send the timestamp for the event that is running the action.
this is important for startup notification. this also affects menus.
f) yes.. cookies..
would it be a good idea to disable focus stealing prevention if a window takes
too long to load? i mean.. maybe after a certain length of time, a user can't be
expected to not do anything in any other windows, but would they still want the
new application to focus then? HMM. open question i guess..
2007-03-11 04:44:15 +00:00
Dana Jansens
9d6e390765
add the _NET_WM_USER_TIME property support. When focus_new is enabled, don't focus new windows if the user is doing something in another window since it launched. If we can tell when it launched, either from the _NET_WM_USER_TIME or from startup notification.
2007-03-11 02:06:34 +00:00
Dana Jansens
bd19fd06db
remove the kde icon hint, they use the EWMH icon now
2007-03-11 00:59:13 +00:00
Dana Jansens
35ab1264ee
remove the kde frame extents property, add the _NET_FRAME_EXTENTS property in its stead
2007-03-11 00:12:37 +00:00
Dana Jansens
8c9b2e8f17
>:| I put old code back somehow.. thanks mika. hooray peer review :)
2007-03-11 00:00:05 +00:00
Dana Jansens
f6265e82e6
1) Remove support for the Urgent hint. This will no longer do anything within Openbox
...
2) Add support for _NET_WM_STATE_DEMANDS_ATTENTION. Yay!
2007-03-10 23:57:33 +00:00
Dana Jansens
ccebe3c441
skip windows in alt-tab that have SKIP_PAGER set. perhaps this is a better metric.. also this is for mikachu <3
2007-03-10 23:09:27 +00:00
Dana Jansens
42c6cdd0c8
people have started using SKIP_TASKBAR, and it's not for stuff you don't want to be able to alt-tab to. so don't put that in here anymore.
2007-03-10 23:03:08 +00:00
Dana Jansens
ec67e96583
make startup notification a little more robust. obconf is just broken, between
...
the application and it's .desktop.
2007-03-10 22:52:50 +00:00
Dana Jansens
3f7ad89510
let windows move themselves off the screen somewhat, but don't let them resize themselves off the screen (unless they're moving too)
2007-03-10 22:24:47 +00:00
Dana Jansens
49dd40d99f
no longer honor transient_for = None or Root. it violates the ICCCM and is causing problems. there are proper ways to make group transient windows with the EWMH.
2007-03-10 20:52:04 +00:00
Dana Jansens
4fa19b5985
more cleverness for window placing.
...
make sure its 10% on the screen in some direction always..
but if the application is placing itself, make sure its on the screen entirely,
and also put it entirely on one monitor if you have xinerama.
if it's bigger than the monitor's space though, it won't do anything with it..
2007-03-10 01:08:19 +00:00
Dana Jansens
ae246097a5
let you put windows with the titlebar off screen.. for mikachu.
...
but also don't let applications put themselves under the struts!
2007-03-10 00:44:43 +00:00
Dana Jansens
96abc207f2
one more fix.. oops :)
2007-03-08 03:32:29 +00:00
Dana Jansens
976eb4c511
fix rendering of the new top corner resize handles
2007-03-08 03:31:42 +00:00
Dana Jansens
56307d6077
a) remove the top_grip_height business from the theme
...
b) make the focus indicator based on border width and padding, not the handle height
c) add 2 more windows for the top corners for resizing, much easier to find them now. also base their width on padding, not the handle height or other weird things
2007-03-08 01:26:03 +00:00
Dana Jansens
b5af5ad3e8
was using paddingx for y-things, oops
2007-03-08 01:08:44 +00:00
Dana Jansens
88204502a8
don't use handle_height for focus indicators, use top_grip_height. is this better?
2007-03-05 16:10:32 +00:00
Dana Jansens
ec304c9e43
scary commit..but here goes.
...
YOUR THEMES ARE NOW OFFICIALLY BROKEN.
Openbox has just moved it's theme format to an XML based one. The details of
this format can be found in data/themerc.xsd (and http://openbox.org/themerc.xsd
ALSO! This is very good and important and stuff! In the tools directory you
will find THEMETOXML ! This tool takes a themerc on stdin, and spits out
the same theme in theme.xml format. So this is all you need to do to update
your themes.
PLEASE NOTE: This themetoxml does _not_ install itself anywhere. It simply
builds and then lives out in its tools/themetoxml directory, and that's it. So
if you want to use it, that is where to find it.
In moving to the new XML format, a number of additions/changes to the theme
engine have been made. Themetoxml takes these into account and will set all
the new things appropriately to make your theme look the same as it always has.
New additions include..
* padding now has an horizontal and vertical component, instead of being one number
* menus can have different borders than windows (color and size)
* menu offset can now be negative. it's a little weird, but someone will want it no doubt
* fonts are no longer controled by the theme at all, however font shadowing is, and on that note..
* font shadows are now any color you want, not just black and white
* you can now set the shadow anywhere you can set the text's color, so you have more control, i.e. you can set shadow on active menu items but not inactive, or disabled, etc.
* every color now has an alpha channel. at the moment they don't do anything, besides the font shadow one, but it leaves room for future explorations. it is REALLY HIGHLY RECOMMENDED that you set the alpha to 255 all the time, until such time as it could be useful. otherwise one day your theme may turn awful for people.
* font colors are in the range 0-255, in case you were wondering, and they have to be specified in decimal
* if you'd like to change you font's you can do so in your configuration file. this is how it is going to stay. changing the font in the theme assumes too much about peoples eye sight and locality and stuff. it doesn't belong there, sorry. the system-wide default rc.xml includes the new font settings for your viewing pleasure, and ill drop an example of it below.
* shadows can now be positioned in any direction, they have both an x and a y offset which can be negative and positive. and offset of 0,0 will disable the shadow
This isn't a release or anything. If someone had some good ideas about the xml theme format, I'd like to hear them. But I don't think it will be changing much right now beyond where it is. I don't even know how the new functionality will play out for themers, so we'll see.
Whew.. I guess that's it. I'm not sure if I mentioned every little change or not, but oh well. Mileage may vary.. Please send any feedback.
Here's the font configuration example. Hopefully ObConf will let you set this real soon.
<theme>
...
<font place="ActiveWindow">
<name>arial,sans</name>
<size>7</size>
<weight>bold</weight>
<slant>normal</slant>
</font>
<font place="InactiveWindow">
<name>arial,sans</name>
<size>7</size>
<weight>bold</weight>
<slant>normal</slant>
</font>
<font place="MenuTitle">
<name>arial,sans</name>
<size>8</size>
<weight>bold</weight>
<slant>normal</slant>
</font>
<font place="MenuItem">
<name>arial,sans</name>
<size>8</size>
<weight>bold</weight>
<slant>normal</slant>
</font>
</theme>
2007-03-05 15:44:17 +00:00
Mikael Magnusson
092ef0e6dd
mention that it is in fact openbox that crashes
2007-03-04 21:46:13 +00:00
Dana Jansens
ca9fe26a6b
use EXIT_SUCCESS. it's the same thing, but more correct.
2007-03-04 20:42:22 +00:00
Mikael Magnusson
7fdfb9dbf6
use ob_reconfigure/restart directly instead of actions and save a variable
2007-03-04 20:32:47 +00:00
Mikael Magnusson
2f87655790
remove said Atoms
2007-03-04 20:18:09 +00:00
Mikael Magnusson
e06e69b904
use integers instead of atoms for the actual control action
2007-03-04 20:16:41 +00:00
Mikael Magnusson
e979b388d8
use the X protocol to reconfigure instead of signals, works over the network too
2007-03-04 20:05:00 +00:00
Dana Jansens
191a0bc075
i moved the font shadow stuff back into the theme, so move them out of the font configuration stuff
2007-03-04 18:49:16 +00:00
Dana Jansens
25917a3498
change the rc config format for font shadows, now:
...
<font...
<shadow enabled="yes/no">
<offset>1</offset>
<tint>25</tint>
</shadow>
</font>
2007-03-04 17:04:50 +00:00
Mikael Magnusson
b7964c3bae
fix compiling without session manager support
2007-03-04 12:00:21 +00:00
Dana Jansens
86b809df8a
oops... I'm combining two different things in this commit... so I'll try be clear
...
1. when another wm requests to replace openbox, openbox exits. but the SM will just restart openbox unless we tell it not to. so now ob_exit_replace() will change the session manager's view of openbox to not restart it. that way the new WM will be able to run.
2. allow windows to move themselves off of the screen 90% of the way, if they really want to. but only 90% to the left, right, and bottom of the screen. it won't let the app move off the top of the screen on its own at all now, since hiding the titlebar on you without you being a part of the process is pretty darn evil!
this is really to address bug # 2982 - for the tilda application. but i guess if windows really want to move off the screen, who's to say no? also, every other window manager will let them - except metacity won't let them on the left/top side of the screen.
2007-03-04 09:01:52 +00:00
Dana Jansens
c07095acb7
better string matching for duplicate title numbering. this will check against the whole window's title. it used to check less than the full length sometimes. thanks to logan for patches and ideas!
2007-03-04 07:54:21 +00:00
Dana Jansens
17b2d57717
Fonts are now going to be configured in the rc.xml file. The format is such as
...
<theme>
...
<font place="ActiveWindow">
<name>arial,sans</name>
<size>8</size>
<weight>bold</weight>
<slant>italic</slant>
<shadow>yes</shadow>
<shadowOffset>1</shadowOffset>
<shadowTint>64</shadowTint>
</font>
</theme>
Valid place="" are ActiveWindow, InactiveWindow, MenuTitle, and MenuItem.
Only valid weight is "bold"
Valid slants are "italic" and "oblique"
shadowTint is a value between -100 and 100
size is the font size in points. pixelsize could possibly be added in the form of 8px, but it's not right now.
the name can contain multiple families and they will all be used to match characters
You can omit any fields and get the default for it. You can omit naming a font for a place="" and get the default font for it.
This is completely replacing theme-specified fonts, for better or for worse. Font shadowing may go back into the theme at some point, instead of in the rc.xml.
2007-03-04 07:18:04 +00:00
Dana Jansens
aa852556c0
let the configuration file changes affect windows' decroations and functionality on reconfigure (fix keepBorder bug 2841
2007-03-03 21:10:15 +00:00
Dana Jansens
73671503fa
don't change the restart type with the session manager when openbox exits. it's not like something else will magically run instead. if we exit, we should get started again, that's why --replace exists.
2007-03-03 06:04:00 +00:00
Dana Jansens
65f0c70851
pretty brackets
2007-03-03 03:53:10 +00:00
Dana Jansens
9d1949f0b1
if sm is disabled, there is nothing to shutdown, so don't go trying to free things and stuff. that can only be a bug
2007-03-03 03:47:50 +00:00
Dana Jansens
831deb72c6
ok this time for real...
...
add --reconfigure option to openbox.
this option will open the display, find the current openbox's PID from the root window, and send a SIGUSR2 to it, telling it to reconfigure. then it exits.
also no longer printing help if you pass an invalid argument to openbox (because i want to parse arguments for --reconfigure before i start up the session management stuff)
2007-03-03 03:43:45 +00:00
Dana Jansens
48a7c32512
make a copy of the argc and argv instead of modifying the real ones
...
this means that when openbox is restared it doesn't lose it's SM related command line args, they get passed to the new openbox same as they were passed to the one exiting.
2007-03-03 03:42:28 +00:00
Dana Jansens
b8bcc45143
commited things i wasn't supposed to. wow i suck.
2007-03-03 03:29:49 +00:00
Dana Jansens
81743b0529
reverse that last commit.. that was by accident..
2007-03-03 03:29:24 +00:00
Dana Jansens
f189b02f85
add --reconfigure option to openbox.
...
this option will open the display, find the current openbox's PID from the root window, and send a SIGUSR2 to it, telling it to reconfigure. then it exits.
no longer printing help if you pass an invalid argument to openbox
since that is the case, session_startup doesnt need to be modifying the args anymore
2007-03-03 03:27:35 +00:00
Dana Jansens
56c5c7d15f
why aren't these variables getting initialized. how exactly is openbox not being super strange without that..?
2007-03-03 03:00:05 +00:00
Dana Jansens
4084f5d82d
fix for per-application focus settings. properly use all the possible values (1, 0, and -1)
2007-03-02 22:44:38 +00:00
Dana Jansens
07fe0980be
declare variables at the beginning of blocks, because it is nice to do so. and polite?
2007-03-02 22:11:46 +00:00
Dana Jansens
de383f35f7
no more using SaveUnder for our openbox-specific windows. it makes things actually slow down, believe it or not!
2007-03-02 22:06:13 +00:00
Dana Jansens
140c5313cf
only update the screen areas when a window actually has a strut (or when the strut changes), don't waste extra calls to screen areas, because it makes people redraw when they don't need to
2007-03-02 15:19:39 +00:00
Dana Jansens
80a6f06c0a
support clients which use true transparency 32-bit visuals.
...
this requires that when a client is using a 32-bit visual, we have to
make the frame windows that sit underneath it to use the same visual (and a
colormap which matches it)
2007-03-02 06:01:16 +00:00
Dana Jansens
78af5d15e9
this includes a number of things since my magnificent return....
...
1. some random compiling/style cleanups
2. some bigfixes
- mislogic in per-window-settings and focusing new windows
- use client_can_focus rather than checking variables for directional focus
- MAYBE fix all those lock-ups forever. using event_curtime (a new variable) now instead of event_lasttime. event_lasttime is still used however when the event being processed did not have a time associated with it. this may or may not be a problem, and will be seen.
3. um.. i forget
4. oh yeah, 3rd party docks are now treated like the internal ob dock irt focus. that is, clicking on them won't pass them focus. this is going to be ratified as expected behavior in the wm-spec just now. if docks/panels want focus they can request it with _net_active_window, and then they can have all the focus they want! one day alt-tabbing around dock windows might be nice. but not until the ob dock is moved out into a separate application. going to have to add a wmapp selection and stuff for that though... ugly. who uses wmdockapps anymore !? someone must.. *sigh*
2007-03-02 02:23:00 +00:00
Mikael Magnusson
1aa9c7e95e
always place windows on the screen with the mouse cursor in xinerama, throw some code around (try3)
2007-02-05 21:19:35 +00:00
Mikael Magnusson
d04b68f8bc
always place windows on the screen with the mouse cursor in xinerama, throw some code around (try2)
2007-02-05 21:19:04 +00:00
Mikael Magnusson
29da19bd85
always place windows on the screen with the mouse cursor in xinerama, throw some code around
2007-02-05 21:16:18 +00:00
Mikael Magnusson
74c7f786eb
SIGH
2007-02-03 15:03:46 +00:00
Mikael Magnusson
9180659154
maybe we should actually run the actions on the menu items when activated, maybe i am crazy but it seems like a good idea
2007-02-03 14:57:34 +00:00
Mikael Magnusson
f43067b772
a combined client_list_menu, use as client-list-combined-menu in your rc.xml. needs some layout tuneups
2007-01-30 09:32:17 +00:00
Mikael Magnusson
d3d4aa2987
80 cols
2006-11-15 21:12:06 +00:00
Mikael Magnusson
59d35252dd
dont use nonexisting functions
2006-10-31 14:40:32 +00:00
Mikael Magnusson
b18846db69
Add MoveFromEdge* actions, shorten client_directional_edge_search with some handy #defines
2006-10-31 03:33:21 +00:00
Mikael Magnusson
efa508a2a2
show clients with the skip_taskbar property set in the client_list_menu if they're iconic
2006-09-18 22:03:27 +00:00
Mikael Magnusson
b9532883a2
dont use the keepBorder option for mwm hinted windows after all, but do honor the mwm_decor_border hint instead
2006-09-12 20:26:00 +00:00
Mikael Magnusson
b276ff81a1
stray ; killed if
2006-09-09 22:05:31 +00:00
Mikael Magnusson
d84f1aac10
remove .cvsignore files
2006-08-31 13:49:36 +00:00
Mikael Magnusson
96eab1423f
oops, added borders to windows when keepborder was on and they didnt have one to start with, ie docks etc
2006-08-31 13:43:19 +00:00
Mikael Magnusson
d9f14c1d01
update copyright step 2
2006-08-22 16:44:18 +00:00
Mikael Magnusson
4d50b21835
update copyright step 1
2006-08-22 16:37:35 +00:00
Mikael Magnusson
b528c68121
spurious ;
2006-08-21 20:41:49 +00:00
Mikael Magnusson
c234ed9ecd
maybe fix transients placed offscreen under certain conditions
2006-08-21 20:39:42 +00:00
Mikael Magnusson
d77c8f62f2
a more proper fix for the client list menu trying to activate a closed client, no difference on end result
2006-08-19 20:34:27 +00:00
Mikael Magnusson
3b56988069
dont flicker when setting desktop by per app settings
2006-08-19 17:55:31 +00:00
Mikael Magnusson
39f6b8ca71
forgot to check if perapp settings said to put window on all desktops
2006-08-19 17:50:12 +00:00
Mikael Magnusson
34269a34e1
lets not change the stacking before we add the window to the stacking stack
2006-08-19 15:35:23 +00:00
Mikael Magnusson
fa6497060a
stacking_list contains ObWindows that may or may not be ObClients
2006-08-19 15:22:55 +00:00
Mikael Magnusson
8d034c6f4d
remove some useless code
2006-08-19 15:01:25 +00:00
Mikael Magnusson
005eb35ee8
fix some warnings from -Wall
2006-08-19 05:05:36 +00:00
Mikael Magnusson
13215aaaab
fix subsequent silly typo, should now compile as well as work
2006-08-18 21:24:23 +00:00
Mikael Magnusson
1de9c1901c
fix a silly copy paste bug, titlenumber should now be disableable
2006-08-18 21:23:02 +00:00
Mikael Magnusson
653358c18d
make the dock copy appearance from active window titles instead of inactive ones, this won't matter because nobody uses the dock
2006-08-18 19:57:14 +00:00
Mikael Magnusson
7b7f158088
add a means to tell the timer destroy function not to fire when for example freeing its client frame
2006-08-17 20:16:02 +00:00
Mikael Magnusson
1b4ff4e93f
close but not quite
2006-08-17 19:26:55 +00:00
Mikael Magnusson
a2f2fefeff
add a client destructor to frame.c so it doesn't try to keep flashing a free'd frame
2006-08-17 16:16:37 +00:00
Mikael Magnusson
83a0303dd7
add option titleNumber in theme section to disable the little [x] that you get after identical window titles
2006-08-16 19:32:13 +00:00
Mikael Magnusson
8eea64ca08
adjust logic to be... logical
2006-08-16 18:11:47 +00:00
Mikael Magnusson
1ffd89672f
don't allow inventive users to open the menu while in an interactive grab (ie changing focus or desktop)
2006-08-16 17:38:41 +00:00
Mikael Magnusson
5b288939ab
try utf8 for WM_NAME if locale fails, really the _locale functions in prop.c are busted and should be fixed but i have no idea how.
2006-08-16 16:51:00 +00:00
Mikael Magnusson
dce6247e69
really fix focus_last?
2006-08-04 19:56:42 +00:00
Mikael Magnusson
cbe5069870
after some contemplating and complaints, not enabling vertically centered menus by default
2006-08-02 21:16:47 +00:00
Mikael Magnusson
41a1d2ea7b
hopefully fix keyboard move and resize refusing to go outside the screen
2006-08-02 21:03:14 +00:00
Mikael Magnusson
629585d990
forgot to add prototypes to action.h
2006-08-02 20:54:16 +00:00
Mikael Magnusson
97719044b1
s/_/./
2006-08-02 17:40:23 +00:00
Mikael Magnusson
6a7c0b893a
s/self/settings/
2006-08-02 17:37:05 +00:00
Mikael Magnusson
56c548b203
make menus optionally vertically centered, and enable by default, see bug #2746
2006-08-02 17:25:32 +00:00
Mikael Magnusson
8cb6e95eb6
add moverelative and resizerelative
2006-08-02 16:36:40 +00:00
Mikael Magnusson
05c0dbfedf
be paranoid about programs setting 0 resize increments, which results in a divide by zero, which is in turn bad
2006-08-02 16:36:29 +00:00
Mikael Magnusson
d2fb93e8af
remove bogus check for handle width in client_setup_decor_and_functions resulting in handles not being drawn if a theme with handle width = 0 is used when that function is called for a window and a theme with handle with > 0 is then loaded.
2006-08-02 06:07:12 +00:00
Mikael Magnusson
be8bc711b2
make the Unfocus action do something when config_focus_follow is set
2006-08-02 04:45:52 +00:00
Mikael Magnusson
9fe211a1ca
remove an old comment
2006-08-01 23:59:27 +00:00
Mikael Magnusson
2922f6ef95
dont make popup windows saveunder after all, they move around
2006-06-23 22:58:04 +00:00
Mikael Magnusson
666a466b7e
make menus also saveunder
2006-06-16 12:41:39 +00:00
Mikael Magnusson
ca16567253
make popup windows saveunder
2006-06-16 11:00:44 +00:00
Mikael Magnusson
48e3f64bc0
must assign return of g_list_insert_before to list, the start address may have changed
2006-06-11 10:36:31 +00:00
Mikael Magnusson
e0aa54a891
rip out the VIDMODE extension stuff. this was only used to size fullscreen windows to the viewport, i doubt anyone is actually using it and it interacts very badly with xinerama.
2006-06-11 09:47:53 +00:00
Mikael Magnusson
f07b18cf3a
mad propz to jonaskoelker finding a memleak
2006-06-09 22:35:55 +00:00
Mikael Magnusson
4137779722
lollerskates
2006-06-09 14:54:18 +00:00
Mikael Magnusson
0f80c6ab40
not surprisingly, there was a typo
2006-06-09 14:53:36 +00:00
Mikael Magnusson
e72a1232fa
if this works i will be a bit amazed, add class matching, and allow to match either name or class or both
2006-06-09 14:52:06 +00:00
Mikael Magnusson
d4b7340454
changing props need client_change_state
2006-06-09 14:29:54 +00:00
Mikael Magnusson
d471ffb92a
fix4
2006-06-09 14:22:16 +00:00
Mikael Magnusson
19611e3bc1
haha
2006-06-09 14:21:30 +00:00
Mikael Magnusson
94a0ea2150
fix2
2006-06-09 14:19:59 +00:00
Mikael Magnusson
2658610ae2
fix
2006-06-09 14:17:15 +00:00
Mikael Magnusson
ff04e2c9a9
add the rest of the possible states to per app settings, and fix some mem leaks in the code that _set_ the per app list
2006-06-09 14:14:17 +00:00
Mikael Magnusson
8af51d8a1b
add role matching to per app settings and fix a small memleak in the code that frees the per app list
2006-06-09 12:47:48 +00:00
Mikael Magnusson
4a42260849
setting variables helps
2006-06-08 11:49:52 +00:00
Mikael Magnusson
014969a959
fix7
2006-06-08 11:45:39 +00:00
Mikael Magnusson
85340eab40
fix6
2006-06-08 11:45:12 +00:00
Mikael Magnusson
611e8a5324
fix5
2006-06-08 11:43:43 +00:00
Mikael Magnusson
f819e3b850
fix4
2006-06-08 11:42:16 +00:00
Mikael Magnusson
76f514cf52
fix3
2006-06-08 11:40:40 +00:00
Mikael Magnusson
f3801affc6
fix2
2006-06-08 11:39:45 +00:00
Mikael Magnusson
c63938f765
fix
2006-06-08 11:37:51 +00:00
Mikael Magnusson
de1559a094
move stuff around some more
2006-06-08 11:36:43 +00:00
Mikael Magnusson
f80ab241f3
some notes to self
2006-06-08 11:05:29 +00:00
Mikael Magnusson
74695334c6
*coughs uncontrollably*
2006-06-08 10:57:17 +00:00
Mikael Magnusson
df1ef6b8ad
"oops"
2006-06-08 10:36:36 +00:00
Mikael Magnusson
9aeb9d9fb5
define vars in proper places and don't leak the entire list of settings
2006-06-08 10:34:15 +00:00
Mikael Magnusson
3c3415d87b
cvs add is good
2006-06-08 10:24:47 +00:00
Mikael Magnusson
ed61a94ca5
per app settings
2006-06-08 10:18:31 +00:00
Mikael Magnusson
5648f0d75c
maybe this makes everyone happy, only select first entry in menus if it's not a submenu entry
2006-04-23 00:37:23 +00:00
Mikael Magnusson
310d268bf0
patch from syscrash2k, adds submenuShowDelay option, bug #2682
2006-04-22 19:21:06 +00:00
Mikael Magnusson
ad215303e7
fix #2670 (hilight first entry in menus) and respect keepBorder setting when removing borders from mwm hints
2006-04-20 18:36:23 +00:00
Mikael Magnusson
0efe52a12b
fix the minipager for exotic orientations
2006-03-17 22:18:54 +00:00
Mikael Magnusson
bc1f845ada
resize label after background pixmap has updated to avoid display problems
2006-03-13 11:51:40 +00:00
Mikael Magnusson
6452fef939
final fixes?
2005-10-08 09:29:27 +00:00
Mikael Magnusson
1fad2da07f
more 64 bit fixes
2005-10-07 17:00:35 +00:00
Mikael Magnusson
148ef741e1
fix using wrong type for _NET_WORKAREA for 64 bits, may exist other bugs like this
2005-10-03 19:30:15 +00:00
Mikael Magnusson
e1665d70b5
add showDelay to dock
2005-09-25 14:45:24 +00:00
Mikael Magnusson
c7a75a5ca8
never code on an empty stomach
2005-09-14 18:01:58 +00:00
Mikael Magnusson
9609c7f5ec
maybe i should have tried opening a submenu too
2005-09-14 17:40:47 +00:00
Mikael Magnusson
fa32adf16c
fix menus to show on the screen the mouse cursor spawned them from
2005-09-14 17:05:53 +00:00
Mikael Magnusson
9df57ff1b5
I meant to check for windows placed by programs, not windows not placed by the user. Now checks for windows placed by programs and not placed by user. This excludes placement schemes which the former check didn't, resulting in some brokenness, particularly with xinerama.
2005-09-13 12:13:13 +00:00
Mikael Magnusson
829e746b4d
fix programs showing their child windows outside the screen, but retain the possibility to put windows slightly offscreen with the -geometry argument (which is why i broke it in the first place)
2005-08-11 13:23:59 +00:00
Mikael Magnusson
03cad5d97c
add a (temporary?) check to client_activate to make client_list_menu not crash openbox when selecting a window that has closed since the menu opened
2005-07-25 14:15:16 +00:00
Mikael Magnusson
69a4abe1d0
make the framerender_frame() code a bit less crazy
2005-07-14 20:46:31 +00:00
Mikael Magnusson
b10b0000db
revert the pressed toggled thing for a while
2005-07-14 20:41:24 +00:00
Mikael Magnusson
1cfb65bc40
add a config option hideDisabled in the theme section that hides disabled buttons instead of showing them as disabled, based on patch in bug #2310
2005-07-14 13:44:33 +00:00
Mikael Magnusson
6ec1881579
c++ comments
2005-07-14 13:23:05 +00:00
Mikael Magnusson
5c95d2ffea
correctly show pressed state when pressing toggled buttons, bug #2311
2005-07-14 13:02:39 +00:00
Mikael Magnusson
465dd3fb53
nullterminate arguments to execlp
2005-04-01 13:04:55 +00:00
Mikael Magnusson
4690af7f72
noStrut actually works now
2005-03-26 06:34:58 +00:00
Mikael Magnusson
cab723fac9
fix transparent terminals not updating when toggledecoring them
2005-03-25 23:00:20 +00:00
Mikael Magnusson
498ae4cc20
add noStrut option to dock and fix up rc.xsd, some options were in the wrong section due to hideDelay being in both dock and menu
2005-03-25 20:17:45 +00:00
Mikael Magnusson
916e24d9c4
Add a FocusToBottom action which moves the client to the bottom of the focus order stack
2005-03-11 21:49:54 +00:00
Mikael Magnusson
abe258be1d
<group> option for raise/lower related actions. hi floam.
2005-02-08 04:33:54 +00:00
Mikael Magnusson
e74fbdaa0e
revert a commit xor made in 2003 that always annoyed me, now docks (panels) go in the same layers as normal windows again. docks that dont specify layer go in the ABOVE layer and those that specify BELOW get put in the NORMAL layer.
2005-02-06 16:00:24 +00:00
Mikael Magnusson
ac416fd27e
testing failed, hopefully this is reverting to the right place
2005-02-06 02:18:06 +00:00
Mikael Magnusson
3f40d6e762
more testing
2005-02-06 02:06:57 +00:00
Mikael Magnusson
64772cc6d8
test + not wrong
2005-02-06 01:54:21 +00:00
Mikael Magnusson
bdf5d409e5
test
2005-02-06 01:52:15 +00:00
Mikael Magnusson
52c345c300
try moving the move_onscreen with the rude into the place routine so it only gets called if a window doesn't specify a position
2005-02-06 01:43:37 +00:00
Mikael Magnusson
60565bcba8
okay so that's why it didn't use move_onscreen
2005-02-06 01:16:00 +00:00
Mikael Magnusson
ef042d220b
test some stuff
2005-02-06 00:50:43 +00:00
Mikael Magnusson
943dd68152
the xinerama patch from john russell, modified a bit and merged the move_onmonitor with the already existing move_onscreen stuff, not sure if it actually works on xinerama since i dont have it.
2005-02-05 23:26:16 +00:00
Mikael Magnusson
2ce7572e46
commit the movetocenter action since it appears someone else than me wanted it after all
2005-01-31 19:04:18 +00:00
Mikael Magnusson
99b2fed8f5
fix iconify action to fallback focus correctly
2005-01-16 00:14:03 +00:00
Mikael Magnusson
9f607e2545
hopefully fix the 'sticky keys' issue, patch from debian maintainer tore who got it from somewhere
2005-01-06 18:50:01 +00:00
Mikael Magnusson
4f9ec4cbdb
grab the mouse buttons and keyboards keys on clients before showing them to avoid the situation where a grabbed key goes to a client without being seen by openbox, hopefully has no side effects but probably does
2004-12-30 15:37:30 +00:00
Mikael Magnusson
ff39f02c38
add an option to resize with 4 corners as it was long ago and make the default 9 "corners" with the middle corner being move. that way you only need one mod+button to move and resize windows
2004-11-04 12:13:25 +00:00
Mikael Magnusson
d0adfb4d8a
okay here we go
2004-10-31 10:17:41 +00:00
Mikael Magnusson
90de822319
i always forget this bit
2004-10-31 10:15:19 +00:00
Mikael Magnusson
10805a4764
config option for icons in desktop menus
2004-10-31 10:10:33 +00:00
Mikael Magnusson
b27343a314
None instead of TRUE/FALSE to XGrabPointer (?)
2004-10-30 19:36:40 +00:00
Mikael Magnusson
349990a3b5
eek, a patch had a tab in it
2004-10-21 20:54:59 +00:00
Mikael Magnusson
f825b13b85
patch to let wmctrl and others set _NET_WM_STATE_HIDDEN to minimize windows, by Timo Hirvonen
2004-10-08 13:56:39 +00:00
Mikael Magnusson
492a26844c
remove the hilightFirst option since it wasnt actually used in the code
2004-10-06 12:42:46 +00:00
Mikael Magnusson
c02f68499f
option to make dragging and findedge ignore windows on lower layers
2004-09-04 19:45:38 +00:00
Mikael Magnusson
1ed2670b89
revert patch, doesnt work
2004-08-22 00:23:44 +00:00
Mikael Magnusson
6ec5ccdf63
fix the unfocus action when focuslast is set, patch by faugn
2004-08-22 00:01:45 +00:00
Mikael Magnusson
aa88bc9918
togglefullscreen action from Joaquin Aguirrezabalaga
2004-08-17 21:33:55 +00:00
Mikael Magnusson
ebc21270f1
dock: leftclick = raise, middleclick = lower. make this bindable later, but better than all buttons (incl scroll) raising it for now
2004-07-22 22:50:48 +00:00
Mikael Magnusson
cd6a851483
disable growtoedge for shaded windows for now
2004-07-07 01:00:57 +00:00
Mikael Magnusson
3afbf3d597
forgot these
2004-06-23 14:06:08 +00:00
Mikael Magnusson
0993012776
try to fix focus switching with mouse actions up a bit
2004-06-23 13:50:26 +00:00
Mikael Magnusson
8ba619d5f1
finding edges and switching directional focus was broken from omnipresent windows. changed c->desktop to screen_desktop seems to work fine so far.
2004-06-14 12:26:35 +00:00
Mikael Magnusson
b182f1483a
on second thought, don't change the default behaviour in stable series
2004-04-17 12:14:06 +00:00
Mikael Magnusson
8ec716f692
this goes away by popular request (focus_order_to_bottom in action_lower)
2004-04-10 22:45:32 +00:00
Mikael Magnusson
d30ea87bb1
blef
2004-04-06 17:58:54 +00:00
Mikael Magnusson
6beb20b3f4
'Unnamed Desktop' is the most useless text to put on an unnamed desktop pls
2004-04-05 21:02:09 +00:00
Mikael Magnusson
269fbc0fe0
show parents title in alt-tab popup for titleless transients
2004-03-31 09:56:01 +00:00
Mikael Magnusson
cabcea2002
okay, so maybe i should try compiling things. lets see if i can get away with not testing it
2004-03-31 07:40:06 +00:00
Mikael Magnusson
89f223e253
this is not so nice
2004-03-30 22:32:12 +00:00
Mikael Magnusson
a70e22c557
nothing to see here, move along
2004-03-30 22:24:15 +00:00
Mikael Magnusson
b850133d21
allow the coordspopup to move to all xinerama screens
2004-03-28 17:13:22 +00:00
Mikael Magnusson
04c77b7234
action toggledockautohide to toggle if the dock autohides
2004-03-27 15:25:39 +00:00
Mikael Magnusson
134974e8e2
forgot
2004-03-21 20:06:40 +00:00
Mikael Magnusson
f870d32397
two hands raised, keepBorder added to <theme> section
2004-03-21 20:02:47 +00:00
Mikael Magnusson
39748e4180
take numbers as args for the popup options too
2004-03-21 12:20:52 +00:00
Mikael Magnusson
e9cdaf2749
that looked a bit silly
2004-03-21 12:16:10 +00:00
Mikael Magnusson
faf325c3fe
include config.h
2004-03-21 12:10:10 +00:00
Mikael Magnusson
3dce6cbf86
sometimes you have to declare variables too
2004-03-21 11:59:12 +00:00
Mikael Magnusson
b2b8ad92bf
update copyright notices
2004-03-21 11:57:31 +00:00
Mikael Magnusson
3fadb639fa
pasted that a bit too far down yesterday
2004-03-21 11:38:21 +00:00
Mikael Magnusson
61af086dc3
default menus to sane style
2004-03-21 11:06:57 +00:00
Mikael Magnusson
e480937e27
Mod3 = M
2004-03-21 01:27:15 +00:00
Mikael Magnusson
acc6124682
limit the size popup to the screen, maybe this doesnt work with xinerama though?
2004-03-21 01:15:18 +00:00
Mikael Magnusson
335e8acbfc
yay no tabs in the source
2004-03-21 01:03:00 +00:00
Mikael Magnusson
64c65f3b67
adds option to have the popup centered above the window instead of centered, and fix the last occurance of that reversed variable
2004-03-21 00:48:48 +00:00
Mikael Magnusson
e8339970d8
comments for life
2004-03-21 00:24:51 +00:00
Mikael Magnusson
7d1382a984
if this works, i will be amazed. <resize><popupShow>nbr<//> nbr = 0 never show size popup, 1 as it is now ie only show when resize terminals etc, 2 always show
2004-03-21 00:10:14 +00:00
Mikael Magnusson
e3786e64fb
typo fix a comment
2004-03-20 23:52:38 +00:00
Mikael Magnusson
07dd2c6442
fix reversed variable name and add a little comment to the magic menu code
2004-03-20 23:40:29 +00:00
Mikael Magnusson
bc04408517
some nice options for the menus, warpPointer, xorStyle (better name wanted for this :), hilightFirst and hideDelay (this was hardcoded to .25 secs earlier)
2004-03-20 22:53:16 +00:00
Mikael Magnusson
cd0204d626
fullscreen overrides aspect hints (because i say so)
2004-03-20 21:38:04 +00:00
Mikael Magnusson
77c744f285
raise your hand if you liked the onepixel border and i'll add an option for it somewhere
2004-03-20 21:35:44 +00:00
Mikael Magnusson
2a8ede0004
alert windows can be titleless, maybe all titleless windows should be empty, i dunno
2004-03-20 21:34:29 +00:00
Mikael Magnusson
134063d850
did anyone use this?
2004-03-20 16:01:22 +00:00
Mikael Magnusson
8a3bfe527c
whitespace changes
2004-03-20 15:48:38 +00:00
Mikael Magnusson
0e6161b0d4
the old event code
2004-03-18 11:54:15 +00:00
Mikael Magnusson
d50f491716
this might fix focusLast which was previously borken when closing a window and the pointer was on it and then going onto another from the close. er, yeah.
2004-02-25 19:07:40 +00:00
Mikael Magnusson
dd7c6ad734
add back the focusLast option for the "i lost count"th time
2004-02-24 20:26:08 +00:00
Mikael Magnusson
a5451fa6fa
hopefully fix some stuff with kde tray icons
2004-02-24 20:11:36 +00:00
Mikael Magnusson
77af27b8b2
add setting <desktops><firstdesk>num<//> to set which desktop to start on, also fix a guint that should be gint. (used to let you say you want negative number of desktops)
2004-02-19 14:33:59 +00:00
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