if no launch time is provided for an application, make one up. if the window is related to other existing windows and one of those windows was the last used then we will give it a launch time equal to the last user time, which will end up giving the window focus probably. else the window is related to other windows, but you are not working in them? seems suspicious, so we will give it a launch time of NOW - STEAL_INTERVAL, so it will be given focus only if we didn't use something else during the steal interval. else the window is all on its own, so we can't judge it. give it a launch time equal to the last user time, so it will probably take focus. this way running things from a terminal will give them focus, but popups without a launch time shouldn't steal focus so easily.
event_curtime is replaced (publicly) by event_time() This function never returns CurrentTime, which is nice, cuz using CurrentTime for XSetFocus always sucks. If the current XEvent did not have a timestamp, then event_time() will find one. It finds the first timestamp available in the X event queue, meaning the earliest timestamp >= the current (nontimestamped) event. All future events should have a timestamp >= event_time(), so using this in XSetFocus() should not mess up any future calls we make to it. This change seems to work well, as it appears to fix bug #3648.
add an option to next/previous window to only include hilited/flashing/urgent windows (feature req/bug #4341)
Don't alt-tab to skip_taskbar iconic windows if they have parents
adjust who shows up in the alt-tab list using SKIP_TASKBAR (Fixes bug #4503) allow window types != NORMAL to not show up in the alt-tab list but don't allow DIALOG types to hide from the list also any window which is DEMANDS_ATTENTION should appear in the list regardless of its SKIP_TASKBAR status
Merge branch 'backport' into work Conflicts: configure.ac data/rc.xml openbox/client.c openbox/event.c openbox/focus_cycle.c openbox/focus_cycle_popup.c openbox/openbox.c openbox/prop.c openbox/prop.h openbox/screen.c parser/parse.c version.h.in
More work on refreshing the focus cycle dialog when windows are added/removed from the valid focus order
Redraw the focus cycle popup when the list of focusable windows changes, rather than closing it
Make focus_valid_target() take a desktop argument. So you can find valid targets on desktops other than the currently visible one
allow alt-tab etc to move focus to skip_taskbar windows when they are iconic
Merge branch 'backport' into work Conflicts: openbox/config.c openbox/event.c openbox/prop.c openbox/prop.h openbox/screen.c openbox/screen.h
The colormap is being set twice when moving focus to the root window
Allow skip_taskbar windows to be focused on map when the user requests it in rc.xml. Fixes bug #4350
Merge branch 'backport' into work Conflicts: openbox/actions/all.h openbox/actions/session.c openbox/client.c openbox/event.c openbox/grab.c
Don't kill keygrabs when focus moves. Applications should be better behaved by now, and GTK based apps seem to be at least. We can file bug reports with them if we need to still.
Revert all commits for the Hooks feature to move it to a topic branch. This reverts commit fd2f617be7ff57fcb187daa737f66d243544c8cd. This reverts commit a47d0a53652a96ca1df96fc9268757df1431ae55. This reverts commit a1908e076736e1a618bd305c5963dbfecaa30497. This reverts commit dc2e6f6bf7143a56de360a393b33906735e63625. This reverts commit 985e7dadf9a3ebf4bd265d955c3198e96405e5d2. This reverts commit db781556d63d1a50bd1b1b4b6b5423ef703bf2c7. This reverts commit feec8f663f0a11546c2da87575fecc8a88d97ca1.
Merge branch 'backport' into work Conflicts: obt/keyboard.c openbox/actions/cyclewindows.c openbox/actions/directionalwindows.c openbox/frame.c openbox/openbox.c
Remove double newlines.
queue hooks so that they don't run as each thing happens, instead run them at the end. keep the openbox code paths fast.
change some of the hooks, and add all the hooks to the code so that they run