Commit graph

2359 commits

Author SHA1 Message Date
Dana Jansens
4546925b58 get the mouse pointer position if it is on another screen too.
let you move/resize from the client menu if the mouse is on another screen
2007-05-09 04:04:53 +00:00
Dana Jansens
65eb46bd1f unused variable 2007-05-09 03:59:57 +00:00
Dana Jansens
a76e91eb2a update to previous changes 2007-05-09 03:56:39 +00:00
Dana Jansens
24f258e646 size the frame properly on mapping 2007-05-09 03:52:53 +00:00
Dana Jansens
23d4eb5f4f kill the hideDisabled option 2007-05-09 03:42:41 +00:00
Dana Jansens
193ca2197a further work to r6205. make the disabled titlebar buttons hide if they won't move other buttons around by doing so. 2007-05-09 03:41:48 +00:00
Dana Jansens
5aea44adc9 punctuation 2007-05-09 03:41:05 +00:00
Dana Jansens
a430d7d3c8 hide titlebar buttons if that won't move other buttons 2007-05-09 00:57:37 +00:00
Dana Jansens
f806e7f24e typo 2007-05-09 00:57:20 +00:00
Dana Jansens
c254f76022 fix move and resize up 2007-05-09 00:29:30 +00:00
Dana Jansens
b190fb6bb6 compile fix 2007-05-09 00:22:10 +00:00
Dana Jansens
7869b81d46 more crash fix 2007-05-09 00:21:52 +00:00
Dana Jansens
f0fdba8ad3 fix no more crashing in the client menu. 2007-05-09 00:11:06 +00:00
Dana Jansens
1361a87bdf hide after iconifying 2007-05-09 00:05:11 +00:00
Dana Jansens
48d7045208 update the client menu when you do stuff without closing it.
but this means we can't use actions in it. oh well?
can kill the desktop notifiers now too. yay for more obvious code paths.
2007-05-08 23:50:13 +00:00
Dana Jansens
c54cb4a83c typo... 2007-05-08 23:46:07 +00:00
Dana Jansens
636a676c56 dont ungrab/regrab when the position in the chain didnt move 2007-05-08 23:42:20 +00:00
Dana Jansens
0064695d59 xhtml.. 2007-05-08 23:24:17 +00:00
Dana Jansens
e0409cd794 make maximize work when its not-fullmax 2007-05-08 22:59:16 +00:00
Dana Jansens
f017556fed maximize in the client menu is enabled when it's not full-maxed 2007-05-08 22:57:27 +00:00
Dana Jansens
709ebbb6a2 let you move splash screens if you are so inclined 2007-05-08 22:56:29 +00:00
Dana Jansens
d074b11bf9 let windows that cant iconify still iconify with their parents, but not non-normal windows.
let you focus windows that wouldnt normally by clicking on their decor (if they have any)
2007-05-08 22:53:09 +00:00
Dana Jansens
f0e5332b4a but deiconify 2007-05-08 22:36:52 +00:00
Dana Jansens
370b5ba27d dont iconify if you can't 2007-05-08 22:36:26 +00:00
Dana Jansens
b82ccb2c78 only place dialogs above other windows 2007-05-08 22:34:02 +00:00
Dana Jansens
b0f43a1159 don't focus splash screens and toolbars and menus when you click on them. or enter them. 2007-05-08 22:29:39 +00:00
Dana Jansens
9782122339 try again. merge r6177-6182 from 3.4-working 2007-05-08 22:03:56 +00:00
Dana Jansens
1e4215c5c6 merge r6176-6182 from 3.4-working 2007-05-08 21:57:36 +00:00
Dana Jansens
aae4f66f68 recalc the layer when above/below changes 2007-05-08 12:22:28 +00:00
Dana Jansens
cc9ef6f22d dont check if relatives have focus. gtk apps all set application even when its from a user event 2007-05-08 02:33:20 +00:00
Dana Jansens
f2e88d2491 only show the debug message when relevent 2007-05-08 02:31:46 +00:00
Mikael Magnusson
cc2ad0a823 double space in debug output 2007-05-08 02:22:07 +00:00
Dana Jansens
e4cffb6459 redo how a window checks if it can activate.
added the bahavior that.. if an application is the source of the request, it will only move focus if something related to it has focus already (and user time checks out)
2007-05-08 01:59:23 +00:00
Dana Jansens
de82c4a5df i dont like this "application window" concept. swap it with "helper" windows instead which are the inverse. helper windows are utility/menu/toolbar windows. 2007-05-08 01:31:51 +00:00
Dana Jansens
ebabf3943c make helper windows share desktops with all their application top level windows 2007-05-08 01:25:30 +00:00
Dana Jansens
5945d2e9c8 ok, so, back out the last commit. owner events are passed thru so we get enter/leave notify events.
dont change frame decor from button presses during an interactive grab or
while a menu is open
2007-05-08 00:40:01 +00:00
Dana Jansens
26fc54c9a3 why did we pass thru owner events ?? its working without that.. hum..
and now the frame buttons dont get press hilights while the menu is open
2007-05-08 00:28:05 +00:00
Dana Jansens
38b12c6cba ! 2007-05-08 00:18:15 +00:00
Dana Jansens
1fa08abd9c um... hide the client menu when the window changes desktops. its not visible anymore (probably..) and no send to menu wont be wrong too. 2007-05-07 23:48:05 +00:00
Dana Jansens
fa332cc314 try reselect the same line. its not perfect though.. 2007-05-07 23:38:10 +00:00
Dana Jansens
280529221e add a notifier for clients changing desktops. use it to update the send-to menu if it changes. it does this by closing/opening the menu.. thats about the best we can do tho with this menu code without huge changes 2007-05-07 23:26:22 +00:00
Mikael Magnusson
31d7680274 update some strings and the swedish translation 2007-05-07 23:18:12 +00:00
Dana Jansens
e180bb036d translate "More..." 2007-05-07 22:40:12 +00:00
Dana Jansens
d915480371 oops hehe. a render call in the loop for debugging was what made it slow. anyhow make it even faster by only calling render once too. yay snappiness. 2007-05-07 22:15:40 +00:00
Dana Jansens
3905872982 merge in r6153-6154 from the 3.4 branch 2007-05-07 22:07:13 +00:00
Dana Jansens
edf29cfe73 when a window becomes transient for its group, it needs to have group transients removed from itself 2007-05-07 17:07:35 +00:00
Dana Jansens
e1081644c1 show the right icon 2007-05-07 16:57:02 +00:00
Dana Jansens
37e2be2a57 fix a crash after reconfigure, the desktop names were not being re-set. so now they aren't deleted since we don't want to change them over a reconfigure anyways. 2007-05-07 16:49:27 +00:00
Dana Jansens
82b2f0aa7a popups fixes. if the text for the popup is empty now, there wont be extra padding for it. desktop name fixes. 2007-05-07 06:33:43 +00:00
Dana Jansens
15007a62c2 remove a debugging print 2007-05-07 06:32:58 +00:00
Dana Jansens
5e8dfcfe54 we werent dropping it in screen, we were dropping it in prop 2007-05-07 05:58:02 +00:00
Dana Jansens
8d81088eb9 we were always overwriting the last desktop name 2007-05-07 05:43:31 +00:00
Dana Jansens
5e0fa1b5c1 a variable sized alt-tab box. is this nice or slower to read? we'll see. 2007-05-07 03:54:39 +00:00
Dana Jansens
0f018ecea0 fix a comment 2007-05-07 03:21:44 +00:00
Dana Jansens
13df16a681 windows on other desktops are iconic state too 2007-05-07 03:16:45 +00:00
Dana Jansens
f138bd8007 this had changed for the animation stuff but it is no longer needed i think. also in show desktop mode, windows aren't iconic state they are just "behind" the desktop. 2007-05-07 03:10:05 +00:00
Dana Jansens
974391d345 switch to using a command line variable instead, for the restart binary, just remove it so its not given to the session manager and confuses things.
drop the reconfigure notify pid for now
2007-05-07 01:57:10 +00:00
Dana Jansens
740c8af41e add .desktops for running Openbox, KDE/Openbox and GNOME/Openbox
add more .desktops for gnome and update it
add scripts to run an KDE/Openbox and GNOME/Openbox session
also add scripts for openbox-gnome and openbox-kde which are placeholders and will be replaced by real programs.
also set the name on the wm_support_win to be how we were called (which is passed in the environment) rather than just "Openbox"
add an envionment variable for wanting to be notified (SIGUSR2) when openbox reconfigures. this would be used by openbox-shell to update the root window.. if i make such a thing.. i dunno.
2007-05-07 01:41:48 +00:00
Dana Jansens
f506cbceae the session properties are not set on the group leader, they are set on the "client leader" which is in the WM_CLIENT_LEADER property. also they are all set when the window maps, and not to be changed thereafter. 2007-05-07 00:10:15 +00:00
Dana Jansens
b02947c09f client machine and wm_command can be set on the group leader 2007-05-06 23:37:30 +00:00
Dana Jansens
de98881368 memory leak 2007-05-06 23:29:29 +00:00
Dana Jansens
f289adf653 a focus fix? konquerer would end up losign focus on close sometimes. this is the only thing i can think of tht would cause it. we will see.. 2007-05-06 23:22:54 +00:00
Dana Jansens
2c507a7207 missed some stuff? 2007-05-06 22:58:51 +00:00
Dana Jansens
7ffa091d5b change the perapp settings "head" option to "monitor" i think its easier to understand.
some cleanup for perapp settings.
make monitor and desktop be specified starting at 1, like elsewhere in the config file.
2007-05-06 22:57:49 +00:00
Dana Jansens
6cd5f7ea38 document the per app settings in rc.xml.in. some xsd fixes. add the "default" option to all the per-app settings which is the same as not putting it in there at all. 2007-05-06 22:04:55 +00:00
Mikael Magnusson
58b79ed35f don't translate message saying we can't translate messages 2007-05-06 11:52:27 +00:00
Dana Jansens
8286b441be fix the popup text width, cuz the way its calculated changed 2007-05-06 11:23:41 +00:00
Dana Jansens
a25c5b855c lower the screen support win at startup. this way we don't map everything over top of the kde splash screen. and other windows wont get burried under the desktop window this way too, like amarok's osd. 2007-05-06 11:16:56 +00:00
Dana Jansens
3c4d73c484 save session state for old clients that dont use XSMP. more session improvements. with ksmserver we can save a few things before the clients go messing with stuff during the interactive phase. 2007-05-06 11:14:20 +00:00
Dana Jansens
0fc06816aa don't make the desktop fullscreen 2007-05-06 09:10:09 +00:00
Dana Jansens
277db2822d a bunch of thigns got squashed into this commit.. sorry..
1. soem bug fixes for window stacking
2. clarify some functions behavior with their names
3. add (untested) support for legacy fullscreen apps. i have no idea what they do on a multihead xinerama setup though and if this would help there or need some changes.
2007-05-06 08:32:03 +00:00
Dana Jansens
007e62fa77 fix popup sizes 2007-05-06 08:02:05 +00:00
Dana Jansens
2ad26c7e70 resize the desktop switch popup to as big as it needs to be for all the desktop names.
don't overrite desktop names on startup, only set them if they aren't already set. that property isn't even for us.
2007-05-06 06:43:17 +00:00
Dana Jansens
d4fec1d336 fixes for resizing to strings. 2007-05-06 06:42:06 +00:00
Dana Jansens
2b658f3d9b show the desktop in the focus popup if its not on the current desktop 2007-05-06 06:01:52 +00:00
Dana Jansens
a7f65a818c add an allDesktops option to Next/PreviousWindow to alt-tab across all desktops. 2007-05-06 05:51:08 +00:00
Dana Jansens
857245960e give the focus indicator a fixed width 2007-05-06 05:37:45 +00:00
Dana Jansens
affc84cc96 more animation frames for iconifying, if your computer can do it 2007-05-06 05:32:07 +00:00
Dana Jansens
eac3a64917 more restrictive to keep clients on screen in more cases 2007-05-06 05:30:12 +00:00
Dana Jansens
1bf9de3809 refactor all the session stuff. yay, it works properly now.
make sessions save the desktop being displayed. can we get rid of config_firstdesk now?
refactor startup a bit. focus the window that was focused when we were restarted.
have clients properly restore their session state.
add undecorated to the saved session state for clients.
2007-05-06 05:19:19 +00:00
Dana Jansens
a6aaabe62c change the --config-file to --config, which works differently..
change the _OPENBOX_RC root property to _OPENBOX_CONFIG which is also different.
2007-05-05 23:54:04 +00:00
Dana Jansens
37875f091d extranous ) 2007-05-05 23:45:49 +00:00
Dana Jansens
c1a5ad45a8 fix stupid apps focusing. yah. 2007-05-05 23:34:48 +00:00
Dana Jansens
526560b8a0 changes to the client menu, which entries are there, and reorganizing, and renaming.
let you highlight disabled menu entries, they just aren't runable of course, and add the activedisabled theme element for these entries.
add the all desktops button picture to "All desktops" in the client menu
update the themes for the new element, and some changes to make things more readable-better contrast.

CLEARLOOKS-OLIVE is now DIFFERENT FROM THE 3.4 BRANCH SO DON'T RE-RUN THEMETOXML ON IT :( :(
yeah.. i think that is everything?
2007-05-05 22:26:59 +00:00
Dana Jansens
8a99fedecd prepend is faster 2007-05-05 19:27:31 +00:00
Dana Jansens
68a9a4c4fc some changes to ConfigureRequest, based on what I found in FVWM.
fix those stupid applications from moving accross the screen by the size of their decorations.
2007-05-05 19:17:46 +00:00
Dana Jansens
97ffe20f7e make focus fallback when it is given to the frame (this happens if you unmap the client but not the frame for eg in iconify animation) 2007-05-05 18:28:40 +00:00
Dana Jansens
3409148047 fixes to the properties and net_supported. a bunch weren't supported. better checking at runtime to make sure everything is in the atom. 2007-05-05 18:19:26 +00:00
Dana Jansens
b114ec7181 dont let you do mouse events on any animating window. also fix root window mouse events.. 2007-05-05 17:04:22 +00:00
Dana Jansens
378adaa94f yay. way way cleaner code for iconify animations. let people show/hide the frame logically and it will do everything except during animations the frame will show what it needs to for visual display. 2007-05-05 16:53:48 +00:00
Dana Jansens
ac56fe1602 make animation default on again. :/ 2007-05-05 16:20:04 +00:00
Dana Jansens
3e90c85df0 oops, i left in the really long animate time heh 2007-05-05 16:17:29 +00:00
Dana Jansens
b5e597f1b3 lots of fixes for the iconify animation. i think it should all work perfectly now ?
one change in action.c may affect bindings... THIS COULD BREAK CURRENT CONFIG FILES. ya.
so, if you used a press binding and it moved the window, no enter event will be generated for that anymore because you are holding down the button when the window moves. if you don't like that then use a click binding instead.

1
2007-05-05 16:16:26 +00:00
Dana Jansens
3db93a6ab5 watch for currenttime 2007-05-05 16:12:36 +00:00
Dana Jansens
48a4eafb42 better iconify animation code. now it is time limited even under heavy load or whatever. yay 2007-05-05 14:36:41 +00:00
Dana Jansens
cf67851d6d dont retrurn a context while incoify animating 2007-05-05 13:29:01 +00:00
Dana Jansens
9ee9b70757 dont make two animations conflict 2007-05-05 13:12:04 +00:00
Mikael Magnusson
492b66ea14 don't animate iconify/restore by default 2007-05-05 09:58:56 +00:00
Dana Jansens
90fefcb78d maybe 1/5 of a second is better? 2007-05-05 06:03:50 +00:00
Dana Jansens
08e42acaad animate iconify/reestore. yeah. 2007-05-05 05:58:35 +00:00
Dana Jansens
fde5ca09e9 when restoring from show-desktop mode because a window is going to be focused, then don't restore focus how it was before showing the desktop. 2007-05-05 02:48:39 +00:00
Dana Jansens
9389c7e6c8 more hacks to avoid races 2007-05-05 02:44:03 +00:00
Dana Jansens
6d3b17488f this is so bogus.. im going to break people's config files just now. 2007-05-05 02:38:46 +00:00
Dana Jansens
a56d3a12ab missing parentheses 2007-05-05 02:12:39 +00:00
Dana Jansens
03f861b0ac let you alt-tab to utility windows when focus is already in the group 2007-05-05 01:37:51 +00:00
Dana Jansens
fce7d9b21e and some more transient fixes 2007-05-05 01:17:05 +00:00
Dana Jansens
1046c19fda more fixes for the transient tree 2007-05-05 01:12:59 +00:00
Dana Jansens
288e37b031 lied about using some events it wasnt using 2007-05-05 01:01:58 +00:00
Dana Jansens
9a9e3f6bf6 woa.. let you do mouse actions while in an interactive keyboard action, and let you do keyboard actions while move/resizing. yay. also you can click in windows at the same time.. 2007-05-05 00:50:53 +00:00
Dana Jansens
0c15af505f unused variable 2007-05-05 00:48:51 +00:00
Dana Jansens
071b5ee301 fix 2 actions.
make activate on the root window work like focus.
dont allow growtoedge in vertical directions for shaded windows. mika can you please test this? :)
2007-05-04 23:32:11 +00:00
Dana Jansens
2713831371 missing paranthesis 2007-05-04 23:30:13 +00:00
Dana Jansens
431035df66 continuation of r6039 in all respects 2007-05-04 23:15:08 +00:00
Dana Jansens
7ff21ad74f add the maginificent client_update_transient_tree.
add a whole lot of comments ! i think like half of this commit is comments
speed up mapping windows a little! less re-updating of the transient info by far.
and... yeah fix the crash created from r6035.
2007-05-04 22:50:53 +00:00
Dana Jansens
32630da2bf make clicks end inetractive actions but not cancel them ! so annoying ! 2007-05-04 17:57:14 +00:00
Dana Jansens
15ec358151 group transients werent getting added to their parents 2007-05-04 16:14:16 +00:00
Mikael Magnusson
d0bbfb66d3 ignore maximized windows in smart placement 2007-05-04 14:30:58 +00:00
Dana Jansens
b5161f8032 revert r6029, as it didnt fix anything.
however this patch does fix the aforementioned problem.
actions need some reworking... yeah... later...
2007-05-04 07:21:22 +00:00
Dana Jansens
a823e4786e dont move windows away from omnpresentness when deiconifying them 2007-05-04 07:19:21 +00:00
Dana Jansens
e84fb1b052 drop the DoNotPropogate thing. metacity doesn't set it at all, and i cant tell any difference in the events generated without it.
grab mouse buttons on the client window itself for client bindings. this fixes the weird "click and drag doesnt work when the window is focused" behavior ive been seeing with kdesktop. hooray !
2007-05-04 04:47:43 +00:00
Dana Jansens
07af4a6184 some improvements on how group transients get their transient pointers, needed after r6022. 2007-05-04 04:25:44 +00:00
Dana Jansens
147f83fe3c this is gross... i think it can go away from other changes... if openbox goes into infinite loops.. then it needs to come back ! 2007-05-04 04:08:31 +00:00
Dana Jansens
cdcba19cf9 better stacking_add_nonintrusive. 2007-05-04 04:06:53 +00:00
Dana Jansens
02dda1ef65 set the usertime on windows if they dont provide one, to something reasonable. 2007-05-04 04:06:43 +00:00
Dana Jansens
b71f1cd6a5 from r6017, we no longer need to fallback in client_unmanage. yay 2007-05-04 02:48:23 +00:00
Dana Jansens
00bf97aecd not much.. some debugs and a nicer if statement 2007-05-04 02:47:10 +00:00
Dana Jansens
7c17296a20 handle more focus events. keep track when focus goes to another screen and don't handle focus fallbacks in that case until we know focus came back to our screen. 2007-05-04 02:46:47 +00:00
Dana Jansens
88d00a0120 fix the new modifier key code.. 2007-05-04 01:35:39 +00:00
Dana Jansens
7e946f68d9 make the modifier key code a lot better...
1) it can handle more user cases.
2) it can handle binding more modifier keys with their keysym names like Hyper and Super. W is a shortcut for Super, cuz the windows key is generally bound to it.
3) if you change your keymap bindings and reconfigure openbox it will learn your changes.
and i dunno.. its just nice and stuff now.. you can actually read it I think..
2007-05-04 01:10:03 +00:00
Dana Jansens
5784f11132 add the notion of "application windows" meaning normal or dialog type windows.
let you alt-tab to non-application windows when they dont have an application window in their group
2007-05-03 20:57:40 +00:00
Dana Jansens
e0e1d4ba7e don't show the client menu when its for an invalid window 2007-05-03 20:39:26 +00:00
Dana Jansens
53975abf12 merge r6004 from trunk 2007-05-03 04:32:44 +00:00
Dana Jansens
75c63eece5 end interactive grabs durign reconfigure instead of leaving everything in a hung state. yay! 2007-05-03 04:28:50 +00:00
Dana Jansens
d389e67d22 yeah.. so much for lucky 6000 2007-05-03 04:23:55 +00:00
Dana Jansens
34b89d8f71 don't run 100 actions when doing interactive actions. keep only one interactive action at a time, no need to queue them up. when an action with a different function comes along, end the previous one. if its the same function though, you know it will clean up after itself so no need to save them both and call it twice identically. 2007-05-03 04:21:16 +00:00
Dana Jansens
9c19d7f677 find_on_screen takes client width/height, not frame 2007-05-03 03:18:56 +00:00
Dana Jansens
88ac9ee76f debug messages 2007-05-03 03:18:34 +00:00
Dana Jansens
d7108df02b when deiconifying, deiconify all transients, not just direct ones 2007-05-03 00:50:40 +00:00
Dana Jansens
f2890f35b7 remove delay for focus/desktop popups. its fast anyway any not showing it is annoying 2007-05-02 23:43:36 +00:00
Dana Jansens
ec850570ef typos 2007-05-02 23:16:11 +00:00
Dana Jansens
80117db6c4 turn on demands_attention when urgent gets set, and turn it off when urgent is removed, for those apps that think it is 1917 or something 2007-05-02 23:03:43 +00:00
Dana Jansens
1d9c0e8b87 skip windows which skip the taskbar.
don't skip them for cycling dock windows.
2007-05-02 21:53:27 +00:00
Mikael Magnusson
1019e34012 only ignore vertical scrolls 2007-05-02 20:19:18 +00:00
Mikael Magnusson
0fee4e91a8 only ignore horizontal and vertical scroll events when outside a menu frame, not all buttons above 3 2007-05-02 20:10:37 +00:00
Dana Jansens
a6f52b9055 better menu keyboard handling.
also, when you hit a keybinding while menus are open, it will close the menus and run the binding.
2007-05-02 03:10:25 +00:00
Dana Jansens
cb030c6f3a make submenus open in the same direction as the top level menu 2007-05-02 02:18:37 +00:00
Dana Jansens
10df03b957 only show the coords popup when both directions have a size increment 2007-05-02 02:15:48 +00:00
Dana Jansens
97cbacd9e4 make keeping windows on screen much more clever 2007-05-02 02:03:06 +00:00
Dana Jansens
0da9aa2660 add a slight delay to the focus/desktop switch dialogs. so if you hit the key really fast there is no flicker. of course if you hit it fast but not fast enough there is still flicker. is this cool or does this make it feel bad? i dunno. we'll see..
make the keychain popup use the new delay popup facilities
2007-05-02 00:59:07 +00:00
Dana Jansens
66d6e1120e small change to the render API. RrMinsize became RrMinSize. added RrMinWidth and RrMinHeight.
make focus/desktop popups wider based on the screen size with the old size as a minimum.
left-align the desktop dialog.. i think better dialogs would be nice. and to make them hide or something when you switch desktops while switching windows etc.
2007-05-02 00:35:22 +00:00
Dana Jansens
a223fa2057 don't accept non-letter keys for shortcuts, they can't be shortcuts anyways and it was mis-matching 2007-05-02 00:02:02 +00:00
Dana Jansens
e9d815173f big oops 2007-05-01 23:57:57 +00:00
Dana Jansens
564b727966 fix drawcontent=no resizing 2007-05-01 12:17:37 +00:00
Dana Jansens
cad10d8b6d some old changes to grav.c test, it wasn't a valid test before.
when a window gets reconfigured, try keep it on the monitor if it was before.
2007-05-01 05:02:26 +00:00
Dana Jansens
55d2916c1e a whole lot of changes to the moving/resizing code. it was broken for non-northwest gravities. now it is not. at least, that is the idea. 2007-05-01 04:46:29 +00:00
Dana Jansens
c991482154 fix this client message. 2007-05-01 00:55:56 +00:00
Dana Jansens
71cbd4d821 there is 5 longs, not 4 2007-05-01 00:51:30 +00:00
Mikael Magnusson
e5d6a552a4 also add the go there entry to client list menus if the only windows on a desktop are iconified. hopefully this separator will be okay? 2007-04-27 12:55:59 +00:00
Dana Jansens
4e590eba23 add a separate font config for onscreendisplays
change menutitle in the rc to menuheader
fix up the xsd for fonts
2007-04-26 13:10:36 +00:00
Dana Jansens
1c4c2b92a0 focus_client is already nulled from the fallback, and use client_focused for niceness in the future 2007-04-26 06:14:09 +00:00
Dana Jansens
b673823d0b have to fallback in client_unmanage, until we figure out a way to hear those focusin events without conflicting screens 2007-04-26 06:10:13 +00:00
Dana Jansens
bdf287572c fix placement of top menus 2007-04-26 05:59:37 +00:00
Dana Jansens
004c0d3ccf almost everyone prefers the brackets. so make both menus use them now. maybe [] would be better than ()? i dont know 2007-04-26 05:39:23 +00:00
Dana Jansens
26879183e9 place the client menu at the top left of the window when opening it with a key binding.
change how the first menus are placed. place them like other people place menus. maybe this is good, maybe it is bad, we will see..
2007-04-26 05:08:33 +00:00
Dana Jansens
baa9ad1480 dont parse both keybindings and actions in the same block 2007-04-26 03:12:47 +00:00
Dana Jansens
1a300ab372 add the delay for killing keychains back (but it won't kill chroots) 2007-04-26 02:43:43 +00:00
Dana Jansens
d9b25d4884 add group transients to other transients who arent group transients. is that english? YEP 2007-04-26 02:32:50 +00:00
Dana Jansens
e896709c90 when windows disappear dont move focus from enter event, ever. 2007-04-26 02:21:27 +00:00
Dana Jansens
a65b1d202f allow actions and chains at the same level 2007-04-26 02:12:40 +00:00
Dana Jansens
8c68c9ab0f fixes for new keybindings stuff/chroot/parsing 2007-04-26 02:10:15 +00:00
Dana Jansens
b6d2529acb add chrooting. use chroot="true" on the chroot location 2007-04-26 01:25:52 +00:00
Dana Jansens
1ee98f4a47 give the chain popup a 1 second delay before it shows 2007-04-25 20:17:29 +00:00
Dana Jansens
df9b2294db add a popup dialog that shows where you are in a keychain 2007-04-25 20:04:25 +00:00
Dana Jansens
b5dbe857db dont go to disabled menu entries with keyboard shortcuts
fix some rendering of shortcuts
2007-04-25 18:26:02 +00:00
Dana Jansens
0c41ab3c20 make rendering the shortcuts much faster 2007-04-25 18:04:15 +00:00
Mikael Magnusson
a744deeee3 consistency for dock layer naming 2007-04-25 15:44:49 +00:00
Dana Jansens
c8983c42a7 playing a bit with grabs
make mouse clicks cancel alt-tab and stuff if you arent dragging during the alt-tab
2007-04-25 14:13:32 +00:00
Dana Jansens
d9204860c3 some more border fixups 2007-04-25 04:07:52 +00:00
Dana Jansens
89658cf648 the inner stuff was being placed wrong all this time.
also give the inner window a border. clicking to the left/right of the client now will be the client context rather than the frame. frame is just for grabbed buttons after all.
2007-04-25 03:52:33 +00:00
Dana Jansens
9aa42c2ae7 cleanups for keyboard menu shotcuts. dont let & set a shortcut from stuff like menu titles and what not, they are only for strigns oenbox provides. 2007-04-25 02:50:59 +00:00
Dana Jansens
4717b9870c change resize binding 2007-04-25 01:36:20 +00:00
Dana Jansens
5d5be2ba2a add keyboard shortcuts to the menus. you can specify the shortcut key with & even in root menu and stuff 2007-04-25 01:33:20 +00:00
Dana Jansens
d91c67bf93 g_locale_to_utf8 seems to work here and its a simpler function all, and i dont have to specify iso-8891whatever in it, so maybe its actually more portable. or maybe it breaks things. we'll see, won't we. 2007-04-25 01:31:55 +00:00
Dana Jansens
f6b049cd38 pointer type changed a long time ago 2007-04-25 00:50:20 +00:00
Mikael Magnusson
fb2493115f only grab keybinds on the root window, not every client window 2007-04-24 21:45:43 +00:00
Dana Jansens
7b6f90af52 consistency 2007-04-24 21:11:04 +00:00
Dana Jansens
04010ff0fe don't split strings inside _() across lines. change some of the text messages 2007-04-24 21:09:12 +00:00
Dana Jansens
1582b36187 proper handling of the plate though, too 2007-04-24 20:48:28 +00:00
Dana Jansens
d3ca984e93 make the inner window work like the plate used to for actions 2007-04-24 20:42:34 +00:00
Dana Jansens
79cd7b4b2c dont cause focus change with enter events when youre already in the window 2007-04-24 20:39:59 +00:00
Dana Jansens
d19c184b2d set the client's user_time when it gets activated 2007-04-24 19:55:48 +00:00
Dana Jansens
0116d82463 don't activate and change desktops if the client's not on the current desktop and its user_time is older than the last time you changed desktops 2007-04-24 19:53:50 +00:00
Dana Jansens
ca8665e309 fix a comment 2007-04-24 19:26:48 +00:00
Dana Jansens
8446e50b7a use client_activate to activate newly mapping windows. this means that if a window maps on another desktop and is going to be activated, you will end up on that desktop 2007-04-24 19:20:10 +00:00
Dana Jansens
9e6aa531d0 remove the four corners option
document what these serious macros are with art!
2007-04-24 18:36:13 +00:00
Mikael Magnusson
59a33c03b0 working tapered corners resize 2007-04-24 18:05:37 +00:00
Dana Jansens
5606209b8d print the corner out that was chosen 2007-04-24 18:00:45 +00:00
Mikael Magnusson
045ba2e001 what I have so far 2007-04-24 17:42:53 +00:00
Mikael Magnusson
f201828046 this doesn't work yet but i don't want to screw it up accidentally 2007-04-24 16:37:01 +00:00
Dana Jansens
ac241a8235 set the default icon onto windows which don't provide one 2007-04-24 15:56:37 +00:00
Dana Jansens
d2f7ad9a24 place randomly inside the area available. if its too big, put the top left corner inside still 2007-04-24 15:29:42 +00:00
Dana Jansens
0771964c0f set the max settings properly, was setting max_vert for both.
make sure the desktop property is set when per-app settings change it
2007-04-24 14:58:29 +00:00
Dana Jansens
c1a124fcf2 preliminary change to the 9 corners thing, to add a recursive 9 corners inside the middle one 2007-04-24 14:37:46 +00:00
Dana Jansens
8740c30588 the check for if the window is being resized is only needed for syncing 2007-04-24 14:27:31 +00:00
Mikael Magnusson
e86900bd53 fix resizing when drawContents is off, and I think an ifdef was a bit too high up 2007-04-24 12:18:53 +00:00
Dana Jansens
7854818a82 add debug messages saying if an extension is missing on the server 2007-04-24 07:26:37 +00:00
Dana Jansens
fefbf38726 remove the stick atom, since openbox does not use stickiness 2007-04-24 07:12:19 +00:00
Dana Jansens
6e83a82e5b the focus_client = NULL got moved by mistake. 2007-04-24 06:41:59 +00:00
Dana Jansens
c6fe4f8d8f focus_order_remove is called in a few places. move the check for unsetting focus_client into client_unmanage. 2007-04-24 06:41:04 +00:00
Dana Jansens
ad852b6b56 add support for _NET_WM_SYNC_REQUEST 2007-04-24 06:30:16 +00:00
Dana Jansens
7ae95e4660 save windows' colormaps rather than querying them from the server every time you focus it 2007-04-24 01:29:53 +00:00
Dana Jansens
3595da62ca never mind on the hint idea, it was fun while it lasted. at least i know it is there now. 2007-04-24 01:16:33 +00:00
Dana Jansens
3a91527fdf hm, that was a silly error. the propogate mask shouldnt get the Hint thing in it. 2007-04-24 01:08:09 +00:00
Dana Jansens
a806f05214 missing a thinger 2007-04-24 01:02:35 +00:00
Dana Jansens
a488360f48 add the PointerMotionHintMask everywhere, we dont need every mouse event 2007-04-24 01:00:27 +00:00
Dana Jansens
3993847dd4 set the eventmask on frame windows again.. 2007-04-24 00:07:28 +00:00
Dana Jansens
268c87ed9e in shrinking resize the frame before the client 2007-04-24 00:02:51 +00:00
Dana Jansens
5316bc6c3e 1. remove some old event handling that was not used at all. yay less bandwidth.
2. make the client padding color show during resizes with drawContents off
2007-04-24 00:00:11 +00:00
Dana Jansens
1a005d7291 place transients without a parent in the middle of the screen
dont use non-normal windows as parents
2007-04-23 23:46:13 +00:00
Dana Jansens
d0013c0861 add a window between the frame and the plate for drawing the client border. this way when the client window disappears, nothing gets rendered underneath it. 2007-04-23 23:21:47 +00:00
Dana Jansens
b4eecc51b5 focus_client was becoming invalid if the focused client was unmanaged. 2007-04-23 23:11:33 +00:00
Dana Jansens
9f11e2af6b cycling between dock windows now possible with the <panels>yes</panels> option 2007-04-23 22:40:33 +00:00
Dana Jansens
f999797f01 leavenotify events messing up delayed focus 2007-04-23 22:05:03 +00:00
Dana Jansens
865ef738ec fix warning 2007-04-23 20:36:32 +00:00
Dana Jansens
5a68cdadf3 extra comma 2007-04-23 20:36:13 +00:00
Dana Jansens
b22cdc9f70 line up the top coords box nicer 2007-04-23 20:20:04 +00:00
Mikael Magnusson
9e7a240dfd include the header that has gethostname 2007-04-23 19:02:33 +00:00
Mikael Magnusson
141c249b8c show the hostname of forwarded clients in the titlebar 2007-04-23 18:46:19 +00:00
Dana Jansens
2442cdfd85 1) translate all of openbox's output
2) update copyrights.
3) make release. ok that part not quite yet.
2007-04-23 17:56:35 +00:00
Dana Jansens
ea088eb88d remove an unused variable 2007-04-23 17:55:26 +00:00
Dana Jansens
a8535d49a9 only show debug messages if you enable it on command line and remove extra newline 2007-04-23 02:43:56 +00:00
Dana Jansens
eb18f502b5 fallback to desktops properly 2007-04-23 02:43:14 +00:00
Dana Jansens
a8a93d7d39 put the separator back in the spit up client list menu 2007-04-23 02:22:18 +00:00
Dana Jansens
06943a10ff back out r5812. you do want that there 2007-04-23 02:02:34 +00:00
Dana Jansens
a82c1efeed wasteful syncing 2007-04-23 02:00:33 +00:00
Dana Jansens
58dc86971a remove windows from the hash on hide, dont readd them again! 2007-04-23 01:54:35 +00:00
Mikael Magnusson
66c350763f unused variable "icons" 2007-04-23 01:36:36 +00:00
Dana Jansens
7e0d660b8b stop listening to events on clients that are being unmanaged before generating new events 2007-04-22 22:56:53 +00:00
Dana Jansens
806655e78a you cant grab substructureredirect on the plate. why was this even here? 2007-04-22 22:55:06 +00:00
Dana Jansens
86b7f4e543 use event_ignore_queued_enters 2007-04-22 22:21:32 +00:00
Dana Jansens
4543c1761a when windows reverttoparent, we will get a notifynonlinear when the frame closes 2007-04-22 21:29:02 +00:00
Dana Jansens
56d42ce66a use focusouts from unmanaged windows (windows which have just closed) 2007-04-22 21:14:04 +00:00
Dana Jansens
6d666b0aa5 add a debug message 2007-04-22 20:41:26 +00:00
Dana Jansens
f37382b66d focus properly on desktop change 2007-04-22 20:40:22 +00:00
Dana Jansens
5f428bdeb2 missing a header 2007-04-22 20:37:33 +00:00
Dana Jansens
3265ea9ac1 when focusing nothing, make sure focus_client knows that nothing is focused 2007-04-22 20:33:12 +00:00
Dana Jansens
afd88015b5 focusin to the root window happens on both monitors when a focused window unmaps... boo... 2007-04-22 20:27:13 +00:00
Dana Jansens
eb1cd9cc49 ignore some focus events that shouldnt be reacted to 2007-04-22 20:10:17 +00:00
Dana Jansens
dc43b74abd 2007-04-22 19:52:37 +00:00
Dana Jansens
911ad76372 a) set the focus client before calculating its layer
b) cleanup in focus.c
2007-04-22 19:35:50 +00:00
Dana Jansens
55b5b828e9 FocusOut events come after UnmapNotify, so we don't need to worry about focusing an invalid window 2007-04-22 19:24:51 +00:00
Dana Jansens
bfb800c032 a) remove focus_hilite, it is not needed and complicated things
b) set focus_client to null when nothing is actually focused, but still allow
   focus to go to black holes
c) allow the focus action to be performed without a client, this will focus
   the openbox instance (i.e. the screen in multihead setups)

big thanks to syscrash for the ideas on how to go about this
2007-04-22 19:13:38 +00:00
Dana Jansens
7d1226c57c xflush after changing the focus decorations so it gets shown faster 2007-04-22 19:08:38 +00:00
Mikael Magnusson
7c1fb96bd3 don't compare client pointers with random numbers 2007-04-22 18:26:05 +00:00
Dana Jansens
1685e6528d remove debug message 2007-04-22 17:33:37 +00:00
Dana Jansens
65f29b245d hilite the focus target before xsyncing in the ignore enter stuff, so less flicker 2007-04-22 16:49:13 +00:00
Dana Jansens
037654f3f8 use ignore enters instead of removing them from the queue 2007-04-22 16:48:35 +00:00
Dana Jansens
d6e49acf0f dont need to ignore mouse events during a keyboard grab, they go to the grab-window anyways
use our built in grab_keyboard
2007-04-22 15:58:09 +00:00
Dana Jansens
27773e1cb7 don't grab the pointer during interactive events. this allows you to alt-tab during a dnd. 2007-04-22 15:22:25 +00:00
Dana Jansens
4c672be2e1 remove grab_pointer_window, nothing used it 2007-04-22 14:37:14 +00:00
Dana Jansens
48f237203b start on the current desktop when a wm was already running 2007-04-22 14:16:33 +00:00
Dana Jansens
ff43372da7 only pass thru events when the menu is open, don't for other stuff 2007-04-22 14:07:29 +00:00
Dana Jansens
a70633d42a eat enter events after unmanaging a window
change how focus falls back for windows being unmanaged, don't fall back immediately, instead wait for the focus out event and use it (break stuff maybe! yay)
2007-04-22 13:53:28 +00:00
Dana Jansens
63f1b1230c don't fallback to the desktop again when leaving show-desktop-mode 2007-04-22 04:42:33 +00:00
Dana Jansens
6e7abeb860 engrish 2007-04-22 04:35:23 +00:00
Dana Jansens
939fbcfd31 add a comparitor to timers. use this in event.c to let you remove timers from the queue selectively for delayed focus 2007-04-22 04:16:00 +00:00
Dana Jansens
8612fcfb99 better matching of the menu titles/separators to the theme 2007-04-22 03:54:43 +00:00
Dana Jansens
5a3a7668d9 highlight for motion events in the menu too, this is useful when the enter gets ignored cuz the mouse was already inside it 2007-04-22 03:18:55 +00:00
Dana Jansens
51c3c8c34a give labeled separators borders 2007-04-22 03:13:41 +00:00
Dana Jansens
73b490f614 stop delayed focusing when falling back 2007-04-22 03:02:13 +00:00
Dana Jansens
57ffea1123 fix segfaults 2007-04-22 02:49:52 +00:00
Dana Jansens
98b021ff0c properly handle clients disappearing during delayed focus on them 2007-04-22 02:35:22 +00:00
Dana Jansens
5009498d59 use the timestamp from the original enter when delay-focusing a window 2007-04-22 02:34:05 +00:00
Dana Jansens
a5caab959c ignore crossing events while an interactive grab is going on.
when a menu is open, use the crossing events for the menu only.
2007-04-22 02:12:32 +00:00
Dana Jansens
05d1a86eff fix a segfault 2007-04-22 01:09:20 +00:00
Dana Jansens
b6897feb40 better event handling for menus 2007-04-22 00:53:21 +00:00
Dana Jansens
957963e272 1) get rid of menu titles
2) let separators have labels, when they have a label, then they will appear like a menu title used to

so if you want a menu title, you use a separator in the menu itself at the top

more style work may be needed
2007-04-22 00:36:54 +00:00
Dana Jansens
854b2ae684 grab enter/leave events during mouse grabs and pass events along still during the grab. this is needed to catch enter/leave events in the menus. it seems to not be weird with apps. 2007-04-22 00:35:36 +00:00
Dana Jansens
8644a47cb7 handle enter/leave events in the menu 2007-04-22 00:31:03 +00:00
Dana Jansens
78d7250098 add --debug-focus
add --config-file: to specify a config file to use.

set OPENBOX_RC property on the root window containing the path of the RC file being the full path to the RC file being used by openbox
2007-04-21 22:06:47 +00:00
Dana Jansens
8a972b3879 ignore BadMatch errors that can't be avoided 2007-04-21 21:36:02 +00:00
Dana Jansens
0e9bd66b75 fixes for transients
1) don't count non-normal windows as parents when placing/stacking transients
2) in stacking.c, when a window is transient for the group but has no parents, then don't loop forever looking for its parents
2007-04-21 21:32:21 +00:00
Dana Jansens
3f2d342de8 hide focus debugging messages 2007-04-21 21:04:35 +00:00
Dana Jansens
d713bdf462 remove the client_time_heap thing. actually its better to just use the user_time on the currently focused window I think. that will handle panels and things too. 2007-04-20 05:22:23 +00:00
Dana Jansens
90cd9c6219 get rid of global client_last_user_time variable.
add ObClientTimeHeap. This is a max-heap of the clients based on their user times. this only includes the clients whose user time is not CurrentTime. the maximum from this heap replaces the client_last_user_time variable, so that you always have the latest time, not the last time that was changed.

hoefully it works, so far it seems to.
2007-04-18 19:22:59 +00:00
Dana Jansens
f18d9a9539 don't allow comparison with timestamps to CurrentTime. it just doesn't make any sense.
(also client interface changed, that is in the next commit)
2007-04-18 19:21:14 +00:00
Dana Jansens
34196a1ef3 make stacking_add_nonintrusive work when there is only 1 other window 2007-04-18 19:19:45 +00:00
Dana Jansens
7f11e15bb8 fix undermouse placement 2007-04-18 17:18:16 +00:00
Dana Jansens
64dda2375e saved session information overrides per-app settings, because that's how you set it up in the session 2007-04-12 14:54:54 +00:00
Dana Jansens
33c469f453 set the desktop from per-app-settings properly, i think.
also fix a compiler warning.
2007-04-12 14:47:54 +00:00
Dana Jansens
7a1a6da849 better synthetic configurenotify handling. in particular..
http://bugzilla.gnome.org/show_bug.cgi?id=399552
on unmap, when we move the client window, we need to send a synthetic configurenotify.
2007-04-12 14:44:17 +00:00
Dana Jansens
ceaf23b6b4 set event_curtime if we're going to use it only 2007-04-12 02:26:58 +00:00
Dana Jansens
fda5ddfe16 excessive debug printing.. :) 2007-04-12 02:26:41 +00:00
Dana Jansens
c03c08415f don't fallback when a window is hidden right away, it's redundant, we'll get a focusout for the window after the unmapnotify anyways.
show new windows when switching desktops before hiding the old windows.
2007-04-12 02:26:26 +00:00
Dana Jansens
7059cde13b http://mail.gnome.org/archives/wm-spec-list/2006-May/msg00000.html
Send ConfigureNotify events when a window is mapped at the position it has specified. When we add decorations, the window gets moved in reference to the root window, so it needs to be told.
2007-04-05 03:59:24 +00:00
Dana Jansens
8d7cc2597e the centered menus thing got annoying :| 2007-03-30 18:29:28 +00:00
Dana Jansens
e6e9ab9224 unset DESKTOP_STARTUP_ID at startup so we don't pass it on unknowingly. 2007-03-30 16:18:25 +00:00
Mikael Magnusson
41c6b0486d delete the SN env var after launching a program 2007-03-30 09:57:21 +00:00
Dana Jansens
0eaf2d15e7 fully maximize windows all the time. size increments are preferred sizes not required ones.
-- http://tronche.com/gui/x/icccm/sec-4.html#s-4.1.2.3
2007-03-30 04:37:53 +00:00
Dana Jansens
00ddaf06bb can't use (unsigned)-1 for a max time, because timestamps wraparound and stuff. user the last_user_time as a default for new windows instead. 2007-03-28 19:57:07 +00:00
Dana Jansens
6372bd7c0d use CurrentTime constant 2007-03-28 19:42:45 +00:00
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