diff --git a/demos/Lazarus_Linux_QT6/MiniBrowser/MiniBrowser.lpi b/demos/Lazarus_Linux_QT6/MiniBrowser/MiniBrowser.lpi index 88c4a264..9c2eec8d 100644 --- a/demos/Lazarus_Linux_QT6/MiniBrowser/MiniBrowser.lpi +++ b/demos/Lazarus_Linux_QT6/MiniBrowser/MiniBrowser.lpi @@ -52,11 +52,14 @@ + + + - + diff --git a/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.lfm b/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.lfm index 285a63ac..108cebe7 100644 --- a/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.lfm +++ b/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.lfm @@ -240,6 +240,7 @@ object MiniBrowserFrm: TMiniBrowserFrm Top = 41 Width = 1196 Align = alClient + TabStop = True TabOrder = 2 OnEnter = CEFLinkedWindowParent1Enter OnExit = CEFLinkedWindowParent1Exit diff --git a/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.pas b/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.pas index 80edc66a..2fd3ec37 100644 --- a/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.pas +++ b/demos/Lazarus_Linux_QT6/MiniBrowser/uMiniBrowser.pas @@ -39,7 +39,6 @@ type procedure CEFLinkedWindowParent1Enter(Sender: TObject); procedure CEFLinkedWindowParent1Exit(Sender: TObject); - procedure Chromium1GotFocus(Sender: TObject; const browser: ICefBrowser); procedure FormActivate(Sender: TObject); procedure FormClose(Sender: TObject; var CloseAction: TCloseAction); @@ -50,6 +49,7 @@ type procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1BeforeContextMenu(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel); procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags; out Result: Boolean); + procedure Chromium1GotFocus(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadError(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; errorCode: TCefErrorCode; const errorText, failedUrl: ustring); procedure Chromium1StatusMessage(Sender: TObject; const browser: ICefBrowser; const value: ustring); procedure Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); @@ -243,7 +243,6 @@ end; procedure TMiniBrowserFrm.CEFLinkedWindowParent1Enter(Sender: TObject); begin if not(csDesigning in ComponentState) and - Chromium1.Initialized and not(Chromium1.FrameIsFocused) then Chromium1.SetFocus(True); end; diff --git a/demos/Lazarus_Linux_QT6/PopupBrowser/uchildform.pas b/demos/Lazarus_Linux_QT6/PopupBrowser/uchildform.pas index 93f9af97..43a02518 100644 --- a/demos/Lazarus_Linux_QT6/PopupBrowser/uchildform.pas +++ b/demos/Lazarus_Linux_QT6/PopupBrowser/uchildform.pas @@ -121,10 +121,13 @@ end; procedure TChildForm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); begin - // We must wait until all browsers trigger the TChromium.OnBeforeClose event - // in order to close the application safely or we will have shutdown issues. - FCanClose := True; - SendCompMessage(CEF_BEFORECLOSE); + if (Chromium1.BrowserId = 0) then + begin + // We must wait until all browsers trigger the TChromium.OnBeforeClose event + // in order to close the application safely or we will have shutdown issues. + FCanClose := True; + SendCompMessage(CEF_BEFORECLOSE); + end; end; procedure TChildForm.Chromium1BeforePopup(Sender: TObject; diff --git a/demos/Lazarus_Linux_QT6/SimpleBrowser/umainform.pas b/demos/Lazarus_Linux_QT6/SimpleBrowser/umainform.pas index ec2ebc01..47573970 100644 --- a/demos/Lazarus_Linux_QT6/SimpleBrowser/umainform.pas +++ b/demos/Lazarus_Linux_QT6/SimpleBrowser/umainform.pas @@ -271,10 +271,13 @@ end; procedure TMainForm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); begin - // We must wait until all browsers trigger the TChromium.OnBeforeClose event - // in order to close the application safely or we will have shutdown issues. - FCanClose := True; - SendCompMessage(CEF_BEFORECLOSE); + if (Chromium1.BrowserId = 0) then + begin + // We must wait until all browsers trigger the TChromium.OnBeforeClose event + // in order to close the application safely or we will have shutdown issues. + FCanClose := True; + SendCompMessage(CEF_BEFORECLOSE); + end; end; procedure TMainForm.Chromium1BeforePopup(Sender: TObject; diff --git a/demos/Lazarus_Linux_QT6/SubProcess/umainform.pas b/demos/Lazarus_Linux_QT6/SubProcess/umainform.pas index 9c7cfc87..1665a7c1 100644 --- a/demos/Lazarus_Linux_QT6/SubProcess/umainform.pas +++ b/demos/Lazarus_Linux_QT6/SubProcess/umainform.pas @@ -272,10 +272,13 @@ end; procedure TMainForm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); begin - // We must wait until all browsers trigger the TChromium.OnBeforeClose event - // in order to close the application safely or we will have shutdown issues. - FCanClose := True; - SendCompMessage(CEF_BEFORECLOSE); + if (Chromium1.BrowserId = 0) then + begin + // We must wait until all browsers trigger the TChromium.OnBeforeClose event + // in order to close the application safely or we will have shutdown issues. + FCanClose := True; + SendCompMessage(CEF_BEFORECLOSE); + end; end; procedure TMainForm.Chromium1BeforePopup(Sender: TObject; diff --git a/demos/Lazarus_Linux_QT6/TabbedBrowser2/uBrowserFrame.pas b/demos/Lazarus_Linux_QT6/TabbedBrowser2/uBrowserFrame.pas index 09f54183..935306ff 100644 --- a/demos/Lazarus_Linux_QT6/TabbedBrowser2/uBrowserFrame.pas +++ b/demos/Lazarus_Linux_QT6/TabbedBrowser2/uBrowserFrame.pas @@ -320,7 +320,8 @@ end; procedure TBrowserFrame.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); begin - if assigned(FOnBrowserDestroyed) then FOnBrowserDestroyed(self); + if (Chromium1.BrowserId = 0) and assigned(FOnBrowserDestroyed) then + FOnBrowserDestroyed(self); end; procedure TBrowserFrame.Chromium1BeforePopup(Sender: TObject; diff --git a/update_CEF4Delphi.json b/update_CEF4Delphi.json index b7e0fe9a..24f554c4 100644 --- a/update_CEF4Delphi.json +++ b/update_CEF4Delphi.json @@ -2,7 +2,7 @@ "UpdateLazPackages" : [ { "ForceNotify" : true, - "InternalVersion" : 834, + "InternalVersion" : 835, "Name" : "cef4delphi_lazarus.lpk", "Version" : "143.0.11" }