1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-11-23 21:34:53 +02:00

Update to CEF 3.2987.1594.g92fba9c

Bug fix for memory leak in TChromium.Internal_SavePreferences
This commit is contained in:
Salvador Diaz Fau
2017-03-16 19:09:42 +01:00
parent e722d8ea49
commit 68769fdda2
126 changed files with 1158 additions and 969 deletions

View File

@@ -47,12 +47,15 @@ unit uCEFMenuModelDelegate;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefMenuModelDelegateOwn = class(TCefBaseOwn, ICefMenuModelDelegate)
TCefMenuModelDelegateOwn = class(TCefBaseRefCountedOwn, ICefMenuModelDelegate)
protected
procedure ExecuteCommand(const menuModel: ICefMenuModel; commandId: Integer; eventFlags: TCefEventFlags); virtual;
procedure MouseOutsideMenu(const menuModel: ICefMenuModel; const screenPoint: PCefPoint); virtual;
procedure UnhandledOpenSubmenu(const menuModel: ICefMenuModel; isRTL: boolean); virtual;
procedure UnhandledCloseSubmenu(const menuModel: ICefMenuModel; isRTL: boolean); virtual;
procedure MenuWillShow(const menuModel: ICefMenuModel); virtual;
procedure MenuClosed(const menuModel: ICefMenuModel); virtual;
function FormatLabel(const menuModel: ICefMenuModel; const label_ : uString) : boolean; virtual;
@@ -72,6 +75,30 @@ begin
ExecuteCommand(TCefMenuModelRef.UnWrap(menu_model), command_id, event_flags);
end;
procedure cef_menu_model_delegate_mouse_outside_menu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
const screen_point: PCefPoint); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
MouseOutsideMenu(TCefMenuModelRef.UnWrap(menu_model), screen_point);
end;
procedure cef_menu_model_delegate_unhandled_open_submenu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
is_rtl: integer); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
UnhandledOpenSubmenu(TCefMenuModelRef.UnWrap(menu_model), is_rtl <> 0);
end;
procedure cef_menu_model_delegate_unhandled_close_submenu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
is_rtl: integer); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
UnhandledCloseSubmenu(TCefMenuModelRef.UnWrap(menu_model), is_rtl <> 0);
end;
procedure cef_menu_model_delegate_menu_will_show(self: PCefMenuModelDelegate; menu_model: PCefMenuModel); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
@@ -96,10 +123,13 @@ begin
with PCefMenuModelDelegate(FData)^ do
begin
execute_command := cef_menu_model_delegate_execute_command;
menu_will_show := cef_menu_model_delegate_menu_will_show;
menu_closed := cef_menu_model_delegate_menu_closed;
format_label := cef_menu_model_delegate_format_label;
execute_command := cef_menu_model_delegate_execute_command;
mouse_outside_menu := cef_menu_model_delegate_mouse_outside_menu;
unhandled_open_submenu := cef_menu_model_delegate_unhandled_open_submenu;
unhandled_close_submenu := cef_menu_model_delegate_unhandled_close_submenu;
menu_will_show := cef_menu_model_delegate_menu_will_show;
menu_closed := cef_menu_model_delegate_menu_closed;
format_label := cef_menu_model_delegate_format_label;
end;
end;
@@ -110,6 +140,21 @@ begin
end;
procedure TCefMenuModelDelegateOwn.MouseOutsideMenu(const menuModel: ICefMenuModel; const screenPoint: PCefPoint);
begin
end;
procedure TCefMenuModelDelegateOwn.UnhandledOpenSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
begin
end;
procedure TCefMenuModelDelegateOwn.UnhandledCloseSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
begin
end;
procedure TCefMenuModelDelegateOwn.MenuWillShow(const menuModel: ICefMenuModel);
begin