1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-09-30 21:28:55 +02:00

Faster browser destruction

Faster browser destruction. All timers have been removed from the demos.
Removed unnecessary client handler class in TChromium. Now there's only
an interface.
Fixed an old memory leak in popup windows.
This commit is contained in:
Salvador Diaz Fau
2017-06-11 17:48:20 +02:00
parent d0c7e0926e
commit 830117e0ca
47 changed files with 1118 additions and 864 deletions

View File

@@ -68,6 +68,7 @@ type
public
constructor Create(const events: IChromiumEvents); reintroduce; virtual;
destructor Destroy; override;
end;
implementation
@@ -121,14 +122,25 @@ begin
FEvent := events;
end;
destructor TCustomDragHandler.Destroy;
begin
FEvent := nil;
inherited Destroy;
end;
function TCustomDragHandler.OnDragEnter(const browser: ICefBrowser; const dragData: ICefDragData; mask: TCefDragOperations): Boolean;
begin
Result := FEvent.doOnDragEnter(browser, dragData, mask);
if (FEvent <> nil) then
Result := FEvent.doOnDragEnter(browser, dragData, mask)
else
Result := inherited;
end;
procedure TCustomDragHandler.OnDraggableRegionsChanged(const browser: ICefBrowser; regionsCount: NativeUInt; regions: PCefDraggableRegionArray);
begin
FEvent.doOnDraggableRegionsChanged(browser, regionsCount, regions);
if (FEvent <> nil) then
FEvent.doOnDraggableRegionsChanged(browser, regionsCount, regions);
end;
end.