diff --git a/ChangeLog b/ChangeLog index d588e0d5..ebce1a77 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +2016-05-22 Markus Gans + * Fix for menus in modal dialogs + 2016-05-16 Markus Gans * Improve adjustSize() * Implement adjustSizeGlobal() for all widgets diff --git a/src/fwidget.cpp b/src/fwidget.cpp index 68e3814f..b38a63d1 100644 --- a/src/fwidget.cpp +++ b/src/fwidget.cpp @@ -716,7 +716,7 @@ void FWidget::onClose (FCloseEvent* ev) } //---------------------------------------------------------------------- -bool FWidget::focusNextChild(void) +bool FWidget::focusNextChild() { if ( hasParent() ) { @@ -778,7 +778,7 @@ bool FWidget::focusNextChild(void) } //---------------------------------------------------------------------- -bool FWidget::focusPrevChild(void) +bool FWidget::focusPrevChild() { if ( hasParent() ) { @@ -1383,7 +1383,7 @@ bool FWidget::setDisable() } //---------------------------------------------------------------------- -bool FWidget::focusFirstChild (void) +bool FWidget::focusFirstChild() { FObject::object_list children; FObject::object_list::const_iterator iter, end; @@ -1422,7 +1422,7 @@ bool FWidget::focusFirstChild (void) } //---------------------------------------------------------------------- -bool FWidget::focusLastChild (void) +bool FWidget::focusLastChild() { FObject::object_list children; FObject::object_list::const_iterator iter, begin; diff --git a/src/fwidget.h b/src/fwidget.h index 6158a129..ffdf2450 100644 --- a/src/fwidget.h +++ b/src/fwidget.h @@ -307,8 +307,8 @@ class FWidget : public FObject, public FTerm virtual void onShow (FShowEvent*); virtual void onHide (FHideEvent*); virtual void onClose (FCloseEvent*); - virtual bool focusNextChild (void); - virtual bool focusPrevChild (void); + virtual bool focusNextChild(); + virtual bool focusPrevChild(); public: explicit FWidget (FWidget* = 0); // constructor @@ -374,8 +374,8 @@ class FWidget : public FObject, public FTerm virtual bool unsetVisibleCursor(); bool hasVisibleCursor() const; - virtual bool focusFirstChild (void); - virtual bool focusLastChild (void); + virtual bool focusFirstChild(); + virtual bool focusLastChild(); virtual bool setFocus(bool); virtual bool setFocus(); virtual bool unsetFocus(); diff --git a/src/fwindow.cpp b/src/fwindow.cpp index 6dfee863..74183ee3 100644 --- a/src/fwindow.cpp +++ b/src/fwindow.cpp @@ -236,7 +236,8 @@ bool FWindow::raiseWindow (FWidget* obj) return false; if ( window_list->back() == obj ) return false; - if ( (window_list->back()->getFlags() & fc::modal) != 0 ) + if ( (window_list->back()->getFlags() & fc::modal) != 0 + && ! obj->isMenu() ) return false; iter = window_list->begin();