From 203c50f4e6363412498fa9c0f8986d066a3a4b55 Mon Sep 17 00:00:00 2001 From: Markus Gans Date: Thu, 16 Jun 2016 22:50:34 +0200 Subject: [PATCH] Bug fix in FDialog onWindowActive() for combined setFocus() and activateWindow() --- ChangeLog | 4 +++- src/fdialog.cpp | 17 ++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1ce89b29..a8e5ef39 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2016-06-16 Markus Gans * Bug fix in FTerm updateVTerm() for updates from vdesktop + * Bug fix in FDialog onWindowActive() for combined setFocus() + and activateWindow() 2016-06-13 Markus Gans * Improved title bar menu integration @@ -8,7 +10,7 @@ * Add a title bar menu to close dialogs 2016-05-24 Markus Gans - * Use nl_langinfo to determine the numeric thousands separator + * Use nl_langinfo to determine the numeric thousands separator for Fstring::setFormatedNumber as default parameter 2016-05-22 Markus Gans diff --git a/src/fdialog.cpp b/src/fdialog.cpp index 4ecae057..da57937c 100644 --- a/src/fdialog.cpp +++ b/src/fdialog.cpp @@ -724,15 +724,18 @@ void FDialog::onWindowActive (FEvent*) if ( isVisible() && isShown() ) drawTitleBar(); - if ( focus_widget && focus_widget->isVisible() && focus_widget->isShown() ) + if ( ! FWidget::getFocusWidget() ) { - focus_widget->setFocus(); - focus_widget->redraw(); - if ( statusBar() ) - statusBar()->drawMessage(); + if ( focus_widget && focus_widget->isVisible() && focus_widget->isShown() ) + { + focus_widget->setFocus(); + focus_widget->redraw(); + if ( statusBar() ) + statusBar()->drawMessage(); + } + else + focusFirstChild(); } - else - focusFirstChild(); } //----------------------------------------------------------------------