Age | Commit message (Collapse) | Author |
|
|
|
The issue could occur when adding or removing widgets to a tab, and then
not switching to a different tab before the destructor or reflowLayout() were
called. In such a case the firstWidget of the current widget in the _tabs list
could be out of date. Accessing this first widget from the destructor or from
reflowLayout() could then cause a crash, or random issues caused to access
to free'ed memory. In theory this could also lead to a memory leak, although
I don't think this could occur in our current code.
Usually we add several tabs to a TabWidget and then switch back to the first
tab after building all the tabs. So in such a case the issue would not occur.
But because we are deleting and reconstructing the clear buttons for the
MIDI and Path tabs of the options dialog from reflowLayout(), if the current
tab is the Path tab, it would be kept as active tab after adding and removing
widget to it and the issue would occur.
This fixes bug #9618.
|
|
Changes theme stx files to specify TabWidget's type. That fixes wrong TabWidget height.
Changes TabWidget's getHeight() to return not only "children" height, but also tabs height. That fixes wrong clipping area.
Changes Widget's findWidget to use getHeight(). That fixes bug when widgets in the bottom of TabWidget were not reacting to the mouse events.
|
|
|
|
|
|
|
|
First visible tab moves up when a theme's width cannot fit another tab.
|
|
Tab cycling ignores tab width, and slides correctly for larger tab counts.
|
|
Tab and Shift-Tab can now cycle between each Tab of the Edit Game menu.
|
|
|
|
|
|
Some backends may break as I only compiled SDL
|
|
svn-id: r54266
|
|
Also renamed the source/header files, now they are more closely
aligned to how we rename most other source files
svn-id: r54264
|