You've already forked CEF4Delphi
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:
@@ -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.
|
||||
|
Reference in New Issue
Block a user