diff --git a/modules/core_styles/styles/windows.otui b/modules/core_styles/styles/windows.otui index d296d758..4f7337c0 100644 --- a/modules/core_styles/styles/windows.otui +++ b/modules/core_styles/styles/windows.otui @@ -23,7 +23,6 @@ MiniWindow < UIWindow margin.left: 6 margin.right: 6 move policy: free updated - focusable: false border-image: source: /core_styles/images/mini_window.png border: 4 diff --git a/src/framework/ui/uiverticallayout.cpp b/src/framework/ui/uiverticallayout.cpp index 4fda1dc3..c17b8eae 100644 --- a/src/framework/ui/uiverticallayout.cpp +++ b/src/framework/ui/uiverticallayout.cpp @@ -36,7 +36,7 @@ void UIVerticalLayout::update() // sort by Y center std::sort(widgets.begin(), widgets.end(), [](const UIWidgetPtr& first, const UIWidgetPtr& second) -> bool { - return first->getRect().center().y < second->getRect().center().y; + return first->getY() < second->getY(); }); Point pos = parentWidget->getPosition(); diff --git a/src/framework/ui/uiwindow.cpp b/src/framework/ui/uiwindow.cpp index e6e7ff00..34bb9320 100644 --- a/src/framework/ui/uiwindow.cpp +++ b/src/framework/ui/uiwindow.cpp @@ -135,6 +135,8 @@ bool UIWindow::onMouseRelease(const Point& mousePos, Fw::MouseButton button) { if(m_moving) { m_moving = false; + if(m_movePolicy == FREE_UPDATED_MOVE) + updateParentLayout(); return true; } return UIWidget::onMouseRelease(mousePos, button); @@ -144,8 +146,6 @@ bool UIWindow::onMouseMove(const Point& mousePos, const Point& mouseMoved) { if(m_moving) { moveTo(mousePos - m_movingReference); - if(m_movePolicy == FREE_UPDATED_MOVE) - updateParentLayout(); return true; } return UIWidget::onMouseMove(mousePos, mouseMoved);