diff options
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/fpg_dialogs.pas | 2 | ||||
-rw-r--r-- | src/gui/fpg_form.pas | 2 | ||||
-rw-r--r-- | src/gui/fpg_menu.pas | 1 |
3 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/fpg_dialogs.pas b/src/gui/fpg_dialogs.pas index 8f3639e6..99c5b208 100644 --- a/src/gui/fpg_dialogs.pas +++ b/src/gui/fpg_dialogs.pas @@ -577,6 +577,8 @@ end; constructor TfpgBaseDialog.Create(AOwner: TComponent); begin + // WindowType must be set before inherited or our parent property will be set + WindowType:=wtModalForm; inherited Create(AOwner); Width := 500; Height := 400; diff --git a/src/gui/fpg_form.pas b/src/gui/fpg_form.pas index 7d5fe042..c80a1e53 100644 --- a/src/gui/fpg_form.pas +++ b/src/gui/fpg_form.pas @@ -342,6 +342,8 @@ function TfpgBaseForm.ShowModal: TfpgModalResult; var lCloseAction: TCloseAction; begin + if HasHandle and (FWindowType <> wtModalForm) then + HandleHide; FWindowType := wtModalForm; fpgApplication.PushModalForm(self); ModalResult := mrNone; diff --git a/src/gui/fpg_menu.pas b/src/gui/fpg_menu.pas index ee345927..3310db48 100644 --- a/src/gui/fpg_menu.pas +++ b/src/gui/fpg_menu.pas @@ -1341,6 +1341,7 @@ end; constructor TfpgPopupMenu.Create(AOwner: TComponent); begin + FWindowType:=wtPopup; inherited Create(AOwner); FMargin := 3; FTextMargin := 3; |