Kaydet (Commit) 81fb7720 authored tarafından Caolán McNamara's avatar Caolán McNamara

Resolves: tdf#89104 Missing actions from toolbar

Toolboxes derive from Docking Windows, they are
not layout aware, which is ok, but they need
to tell the thing they are inserted in that their
state has changed if the parent is layout aware.

i.e. docking windows are not toplevel things like
dialogs and need to pass on queue_resize to things
above them

Change-Id: If0eeff90314bef4e828355661a75a0d34a6fc1bc
üst 16f1477a
...@@ -1127,14 +1127,23 @@ Size DockingWindow::GetOptimalSize() const ...@@ -1127,14 +1127,23 @@ Size DockingWindow::GetOptimalSize() const
return Window::CalcWindowSize(aSize); return Window::CalcWindowSize(aSize);
} }
void DockingWindow::queue_resize(StateChangedType /*eReason*/) void DockingWindow::queue_resize(StateChangedType eReason)
{ {
bool bTriggerLayout = true;
if (hasPendingLayout() || isCalculatingInitialLayoutSize()) if (hasPendingLayout() || isCalculatingInitialLayoutSize())
return; {
bTriggerLayout = false;
}
if (!isLayoutEnabled()) if (!isLayoutEnabled())
return; {
InvalidateSizeCache(); bTriggerLayout = false;
maLayoutIdle.Start(); }
if (bTriggerLayout)
{
InvalidateSizeCache();
maLayoutIdle.Start();
}
vcl::Window::queue_resize(eReason);
} }
IMPL_LINK_NOARG_TYPED(DockingWindow, ImplHandleLayoutTimerHdl, Idle*, void) IMPL_LINK_NOARG_TYPED(DockingWindow, ImplHandleLayoutTimerHdl, Idle*, void)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment