all repos — fluxbox @ 2e5776733219a5f3c6ab3acd0f4f369be76b764a

custom fork of the fluxbox windowmanager

fixed minor issue with keyboard navigation in menus
fluxgen fluxgen
commit

2e5776733219a5f3c6ab3acd0f4f369be76b764a

parent

5a24731d3af68f376db099d8bb8ee4d7cb581124

1 files changed, 8 insertions(+), 3 deletions(-)

jump to
M src/fluxbox.ccsrc/fluxbox.cc

@@ -22,7 +22,7 @@ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING

// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. -// $Id: fluxbox.cc,v 1.224 2004/01/16 11:38:30 fluxgen Exp $ +// $Id: fluxbox.cc,v 1.225 2004/01/16 18:07:40 fluxgen Exp $ #include "fluxbox.hh"

@@ -756,9 +756,14 @@

// we need to check focus out for menus before // we call FbTk eventhandler // so we can get FbTk::Menu::focused() before it sets to 0 + if (e->type == FocusOut && + e->xfocus.mode != NotifyGrab && + e->xfocus.detail != NotifyPointer && + e->xfocus.detail != NotifyInferior && FbTk::Menu::focused() != 0 && FbTk::Menu::focused()->window() == e->xfocus.window) { + // find screen num BScreen *screen = 0; ScreenList::iterator it = m_screen_list.begin();

@@ -770,8 +775,9 @@ screen = (*it);

break; // found the screen, no more search } } + if (screen != 0) - revertFocus(*screen); + revertFocus(*screen); } // try FbTk::EventHandler first

@@ -923,7 +929,6 @@ if (e->xfocus.mode == NotifyGrab ||

e->xfocus.detail == NotifyPointer || e->xfocus.detail == NotifyInferior) break; - WinClient *winclient = searchWindow(e->xfocus.window); if (winclient && m_focused_window != winclient) setFocusedWindow(winclient);