Revision a490a35...

Go back to digest for 21st July 2013

Bug Fixes in KDE Base

Simon Paul St James committed changes in [kate] /:

Fix the bug with m_commandResponseMessageDisplayHide timing out causing Kate to switch to the view that owns the KateViEmulatedCommandBar (the standard Kate command line bar has the same issue & similar fix). This requires us to stop m_commandResponseMessageDisplayHide when the kate_view loses focus, which requires us to process the pending event queue when we invoke the bar - otherwise, if we're replaying some keypresses without pausing for breath, as it were, as we do when we execute a mapping, macro, or test case, the focus change won't actually be processed until *after* the timer has been started, resulting in it being stop()'d right away. Unlike the standard kate command line bar, we also add some code that will recommence m_commandResponseMessageDisplayHide when the kate_view is focussed again, so it doesn't hang around until manually dismissed.

The tests for all this stuff require some fairly big changes to the Vim mode test set up. We needed to wrap kate_view in a QMainWindow, as we need to take focus away from it to a dummy widget called dummyToFocus, and this must be in the same window for the test to work. The new test is pretty fragile, though - there seems to be a lot of magic with how Qt focuses things. I've added a message to this effect that is printed out when the test begins to run - if it fails, just comment it out and let me know.

File Changes

Modified 4 files
  •   tests/vimode_test.cpp
  •   tests/vimode_test.h
  •   part/vimode/kateviemulatedcommandbar.cpp
  •   part/vimode/kateviemulatedcommandbar.h
4 files changed in total