diff --git a/source/uCEFBrowserViewComponent.pas b/source/uCEFBrowserViewComponent.pas index 4840d8b0..cb028cb0 100644 --- a/source/uCEFBrowserViewComponent.pas +++ b/source/uCEFBrowserViewComponent.pas @@ -54,7 +54,7 @@ type procedure doOnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser); procedure doOnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate); procedure doOnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean); - procedure doOnGetChromeToolbarType(var aChromeToolbarType: TCefChromeToolbarType); + procedure doOnGetChromeToolbarType(const browser_view: ICefBrowserView; var aChromeToolbarType: TCefChromeToolbarType); procedure doOnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); procedure doOnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); @@ -298,10 +298,10 @@ begin FOnPopupBrowserViewCreated(self, browser_view, popup_browser_view, is_devtools, aResult); end; -procedure TCEFBrowserViewComponent.doOnGetChromeToolbarType(var aChromeToolbarType: TCefChromeToolbarType); +procedure TCEFBrowserViewComponent.doOnGetChromeToolbarType(const browser_view: ICefBrowserView; var aChromeToolbarType: TCefChromeToolbarType); begin if assigned(FOnGetChromeToolbarType) then - FOnGetChromeToolbarType(self, aChromeToolbarType); + FOnGetChromeToolbarType(self, browser_view, aChromeToolbarType); end; procedure TCEFBrowserViewComponent.doOnUseFramelessWindowForPictureInPicture(const browser_view : ICefBrowserView; diff --git a/source/uCEFBrowserViewDelegate.pas b/source/uCEFBrowserViewDelegate.pas index bf9bb578..47d0e4cf 100644 --- a/source/uCEFBrowserViewDelegate.pas +++ b/source/uCEFBrowserViewDelegate.pas @@ -26,7 +26,7 @@ type procedure OnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser); procedure OnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate); procedure OnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean); - procedure OnGetChromeToolbarType(var aResult: TCefChromeToolbarType); + procedure OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult: TCefChromeToolbarType); procedure OnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); procedure OnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); @@ -40,7 +40,7 @@ type procedure OnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser); virtual; procedure OnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate); virtual; procedure OnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean); virtual; - procedure OnGetChromeToolbarType(var aResult: TCefChromeToolbarType); virtual; + procedure OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult: TCefChromeToolbarType); virtual; procedure OnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); virtual; procedure OnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); virtual; @@ -71,7 +71,7 @@ type procedure OnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser); override; procedure OnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate); override; procedure OnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean); override; - procedure OnGetChromeToolbarType(var aResult: TCefChromeToolbarType); override; + procedure OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult: TCefChromeToolbarType); override; procedure OnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); override; procedure OnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); override; @@ -129,9 +129,10 @@ begin ord(is_devtools)) <> 0); end; -procedure TCefBrowserViewDelegateRef.OnGetChromeToolbarType(var aResult : TCefChromeToolbarType); +procedure TCefBrowserViewDelegateRef.OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult : TCefChromeToolbarType); begin - aResult := PCefBrowserViewDelegate(FData)^.get_chrome_toolbar_type(PCefBrowserViewDelegate(FData)); + aResult := PCefBrowserViewDelegate(FData)^.get_chrome_toolbar_type(PCefBrowserViewDelegate(FData), + CefGetData(browser_view)); end; procedure TCefBrowserViewDelegateRef.OnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); @@ -230,7 +231,8 @@ begin Result := ord(TempResult); end; -function cef_browserview_delegate_get_chrome_toolbar_type(self : PCefBrowserViewDelegate): TCefChromeToolbarType; stdcall; +function cef_browserview_delegate_get_chrome_toolbar_type(self : PCefBrowserViewDelegate; + browser_view : PCefBrowserView): TCefChromeToolbarType; stdcall; var TempObject : TObject; begin @@ -238,7 +240,8 @@ begin Result := CEF_CTT_NONE; if (TempObject <> nil) and (TempObject is TCefBrowserViewDelegateOwn) then - TCefBrowserViewDelegateOwn(TempObject).OnGetChromeToolbarType(Result); + TCefBrowserViewDelegateOwn(TempObject).OnGetChromeToolbarType(TCefBrowserViewRef.UnWrap(browser_view), + Result); end; function cef_browserview_delegate_use_frameless_window_for_picture_in_picture(self : PCefBrowserViewDelegate; @@ -318,7 +321,7 @@ begin aResult := False; end; -procedure TCefBrowserViewDelegateOwn.OnGetChromeToolbarType(var aResult: TCefChromeToolbarType); +procedure TCefBrowserViewDelegateOwn.OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult: TCefChromeToolbarType); begin aResult := CEF_CTT_NONE; end; @@ -511,13 +514,13 @@ begin end; end; -procedure TCustomBrowserViewDelegate.OnGetChromeToolbarType(var aResult: TCefChromeToolbarType); +procedure TCustomBrowserViewDelegate.OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult: TCefChromeToolbarType); begin - inherited OnGetChromeToolbarType(aResult); + inherited OnGetChromeToolbarType(browser_view, aResult); try if (FEvents <> nil) then - ICefBrowserViewDelegateEvents(FEvents).doOnGetChromeToolbarType(aResult); + ICefBrowserViewDelegateEvents(FEvents).doOnGetChromeToolbarType(browser_view, aResult); except on e : exception do if CustomExceptionHandler('TCustomBrowserViewDelegate.OnGetChromeToolbarType', e) then raise; diff --git a/source/uCEFInterfaces.pas b/source/uCEFInterfaces.pas index 37781a5e..cb94b50a 100644 --- a/source/uCEFInterfaces.pas +++ b/source/uCEFInterfaces.pas @@ -608,7 +608,7 @@ type procedure doOnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser); procedure doOnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate); procedure doOnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean); - procedure doOnGetChromeToolbarType(var aChromeToolbarType: TCefChromeToolbarType); + procedure doOnGetChromeToolbarType(const browser_view: ICefBrowserView; var aChromeToolbarType: TCefChromeToolbarType); procedure doOnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean); procedure doOnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); end; @@ -10369,7 +10369,7 @@ type /// ICefBrowserView.GetChromeToolbar(). See that function for related /// documentation. /// - procedure OnGetChromeToolbarType(var aResult : TCefChromeToolbarType); + procedure OnGetChromeToolbarType(const browser_view: ICefBrowserView; var aResult : TCefChromeToolbarType); /// /// Return true (1) to create frameless windows for Document picture-in- /// picture popups. Content in frameless windows should specify draggable diff --git a/source/uCEFTypes.pas b/source/uCEFTypes.pas index 0be6146d..8a54b93c 100644 --- a/source/uCEFTypes.pas +++ b/source/uCEFTypes.pas @@ -7399,7 +7399,7 @@ type on_browser_destroyed : procedure(self: PCefBrowserViewDelegate; browser_view: PCefBrowserView; browser: PCefBrowser); stdcall; get_delegate_for_popup_browser_view : function(self: PCefBrowserViewDelegate; browser_view: PCefBrowserView; const settings: PCefBrowserSettings; client: PCefClient; is_devtools: Integer): PCefBrowserViewDelegate; stdcall; on_popup_browser_view_created : function(self: PCefBrowserViewDelegate; browser_view, popup_browser_view: PCefBrowserView; is_devtools: Integer): Integer; stdcall; - get_chrome_toolbar_type : function(self: PCefBrowserViewDelegate): TCefChromeToolbarType; stdcall; + get_chrome_toolbar_type : function(self: PCefBrowserViewDelegate; browser_view: PCefBrowserView): TCefChromeToolbarType; stdcall; use_frameless_window_for_picture_in_picture : function(self: PCefBrowserViewDelegate; browser_view: PCefBrowserView): integer; stdcall; on_gesture_command : function(self: PCefBrowserViewDelegate; browser_view: PCefBrowserView; gesture_command: TCefGestureCommand): Integer; stdcall; end; diff --git a/source/uCEFViewsFrameworkEvents.pas b/source/uCEFViewsFrameworkEvents.pas index 1d2102d3..fa5e52ec 100644 --- a/source/uCEFViewsFrameworkEvents.pas +++ b/source/uCEFViewsFrameworkEvents.pas @@ -43,7 +43,7 @@ type TOnBrowserDestroyedEvent = procedure(const Sender: TObject; const browser_view: ICefBrowserView; const browser: ICefBrowser) of object; TOnGetDelegateForPopupBrowserViewEvent = procedure(const Sender: TObject; const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate) of object; TOnPopupBrowserViewCreatedEvent = procedure(const Sender: TObject; const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean) of object; - TOnGetChromeToolbarTypeEvent = procedure(const Sender: TObject; var aChromeToolbarType: TCefChromeToolbarType) of object; + TOnGetChromeToolbarTypeEvent = procedure(const Sender: TObject; const browser_view: ICefBrowserView; var aChromeToolbarType: TCefChromeToolbarType) of object; TOnUseFramelessWindowForPictureInPicture = procedure(const Sender: TObject; const browser_view: ICefBrowserView; var aResult : boolean) of object; TOnGestureCommandEvent = procedure(const Sender: TObject; const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean) of object; diff --git a/update_CEF4Delphi.json b/update_CEF4Delphi.json index d7b203f5..a81479ce 100644 --- a/update_CEF4Delphi.json +++ b/update_CEF4Delphi.json @@ -2,7 +2,7 @@ "UpdateLazPackages" : [ { "ForceNotify" : true, - "InternalVersion" : 522, + "InternalVersion" : 523, "Name" : "cef4delphi_lazarus.lpk", "Version" : "117.1.4" }