diff options
Diffstat (limited to 'src/ui/window.cc')
-rw-r--r-- | src/ui/window.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ui/window.cc b/src/ui/window.cc index e79262f..3015a10 100644 --- a/src/ui/window.cc +++ b/src/ui/window.cc @@ -23,11 +23,16 @@ Window::~Window() { } -void Window::show() { +void Window::show() +{ resize(); Widget::show(); raise(); - set_focus(); + Widget *w = this; + while (w && w->visible()) { + w->set_focus(); + w = w->parent(); + } } void Window::set_previous(Window *previous) |