When trying to debug qmake or another bootstrapped application loading the
dumpers failed as they are binarily incompatible. So failing is expected and
fine. However, gdb 6.8-debian produces in this case _two_ responses for
'-exec-continue produces' ('^running' and '^error,msg="Cannot find new threads:
generic error"') which is impossible according to the MI docs. In theory...
... by storing the children information in an additional watchdata
source bit, thus being able to prove the model wrong in case it
claims children are needed.
in particular, fix line continuation processing.
also, reintroduce some error handling. it checks only one condition so
far (malformed assignment statement) and is entirely silent, but that's
all that was necessary for internal robustness.
This isn't a nice fix but the least evil version of a hack i could come
up. The source of the flickering is: We have a deeply nested structure
of widgets on the project pane. If we call hide() on such a deeply
nested widget, it will activate() it's parent layout synchronously.
That will then post an event (via updateGeometries() ) to its parent
layout that it needs relayouting. Which then will post to its parent
layout the same. And for each LayoutRequested, there's a painting in
between. The fix instead calls activate() up the chain until we are at
the viewport. This immediately relayouts everything. This adds a non
obvoius potentially for breakeage if the widgets are embedded in a
different widget hierarchy. But well, that's life.
Make sure that we give the QMainWindow always a valid layout before
restoring settings, so if something goes wrong with that, we don't end
up with a broken layout.
This covers 'Y' in novisual, char and line mode and 'y' in char mode.
Visual block mode is still missing. It also fixes an off-by-one error
when displaying selection in visual char mode.
Reviewed-by: hjk
Merge-request: 1149
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>