| Age | Commit message (Collapse) | Author |
|
This allows users to move to the submenu across other menu items (the same
as they already could across other menu items that were submenus).
This uses the same config delay for hiding submenus as it does for showing
new ones.
Based off the ideas in bug #3762.
|
|
Menus/Move/Resize
If the user has escape bound to more than one keycode then they can use any of
them to close a menu. This change applies to the hardcoded keys in openbox,
which are used for the menus and for move/resize, and maybe other places.
|
|
|
|
client_activate() is a helpful way to focus a window on another desktop,
but only Openbox is allowed to do such things, user messages cannot.
|
|
Move focus on _net_active_window "app" requests if focus stealing would be
allowed. If focus is not given to the target window and it is hilited (or
any other situation where it is hilited) and the window is on another desktop,
then also raise it and make it the LRU window, so when you switch desktops
you go right to it.
|
|
Google's chrome does this when you toggle window decorations.
Based on patch in #4250 by Daniel Erat.
|
|
|
|
Many composite apps use this to pass through clicks where they are transparent.
|
|
|
|
The code assumed the timestamps had the same domain as the type Xlib
uses for them, which is almost never the case with Xlib. Change all
involved variables to guint32.
|
|
|
|
|
|
|
|
Typo in debug message.
Improve some comments.
Space after comma.
Factor out compress_client_message_event.
Fold two ifs together.
Change duplicated case to fall through.
|
|
|
|
Pressing a button and leave/enter would cause the button to show hover mode, not pressed mode. Change the behaviour back to how it used to be for pressing (the button stays pressed when you move outside of its box) and make it work correctly, as commit 041d17373e04 also did for menus.
Reverting this behaviour because it seems impossible to do the enter/leave stuff correctly for the close button on maximized windows. Leaving the titlebar contexts doesn't give us an Enter event to go along with it, so even if we check all motion events, the button will flash unpressed when leaving the topright contexts.
|
|
pressed. On MotionNotify, only make it hovered if no button is pressed down. On EnterNotify, make it hovered or pressed as appropriate.
This fixes case where you left-click and hold on a button, then right click to open the menu - this used to leave the button in a pressed state.
|
|
|
|
|
|
|
|
there too but not working yet.
|
|
reconfigure as well.
|
|
buttons! they don't do anything interesting yet.
|
|
|
|
|
|
|
|
instead of calling it every time a window loses focus, it is only called when a window gains focus. then, check fullscreen layered windows, if they should be moved to a lower layer.
when moving a window between monitors, also check its layer and that of any fullscreen windows.
let a window stay in the fullscreen layer even when it is not focused, if it is on a non-visible desktop, or if it is on a different monitor from the focused window, or if nothing else is focused
|
|
(NextRequest()-1). Don't ignore enters that come after this with the next serial.
|
|
actually want them. Ignore event serials without using XSync, so that we aren't doing an XSync 100 times per minute - slow!
|
|
present too
|
|
not just windows youre trying to close, so don't use datastructures that suck with lots of windows..
|
|
Define void functions with (void), not ().
Add missing includes.
Some functions were declared static but defined non-static.
Some variables that should be file static were file global but not used in any other file.
prop.h defined a new prop_atoms in each file that included it instead of declaring it extern.
|
|
|
|
before proceeding (fixes a race condition when running things that want to grab the keyboard very quickly. yes, arch is that fast somehow..)
|
|
them back when we check what window an event happened on. so don't abort if that happens anymore.
|
|
everything. yay for mika as inspiration
|
|
first. avoid using the key binding used to show the menu to execute something inside it.
|
|
code, and some unneeded stuff
|
|
the xsync was needed to get the right serial for the end of the ignore range
|
|
|
|
1. when focusing a window, ignore any enter events up until the serial of the X event causing the focus, not up until the last thing sent to the server. if we get 2 enters very quickly, then we don't want to ignore the second one just because we are focusing the first window.
2. there is a race if you check (focus_client != d->client) in the delay_focus_func, because the current focused window might change by the time this focus_client would take effect, so don't check that.
|
|
|
|
in modkeys.c and convert it all to the x core stuff. so we use this to get the state of the modifiers, otherwise we end up missing them sometimes (like on PPC)
|
|
modifier map
|
|
|
|
|
|
generated before the halting process too.
|
|
done by allowing focus_fallback to specify if focus has been lost or not. usually if you're call it, focus is lost, but not always.
|
|
|
|
options export time in milliseconds not half milli half micro)
|