1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-06-22 22:17:48 +02:00

Added support for Lazarus/FPC (windows 32bit)

This commit is contained in:
Salvador Díaz Fau
2018-05-12 14:50:54 +02:00
parent 294a245250
commit dd5f7f42c4
220 changed files with 6385 additions and 4281 deletions
demos
CookieVisitor
CustomResourceBrowser
DOMVisitor
ExternalPumpBrowser
FMXExternalPumpBrowser
FullScreenBrowser
JavaScript
MDIBrowser
MDIExternalPumpBrowser
MiniBrowser
OSRExternalPumpBrowser
PopupBrowser
PopupBrowser2
ResponseFilterBrowser
SchemeRegistrationBrowser
SimpleBrowser
SimpleBrowser2
SimpleExternalPumpBrowser
SimpleFMXBrowser
SimpleLazarusBrowser
SimpleOSRBrowser
SimpleServer
SubProcess
TabbedBrowser
ToolBoxBrowser
packages
source
00-DeleteDCUs.batcef.inctbufferpanel.lrstcefservercomponent.lrstcefwindowparent.lrstcefworkscheduler.lrstchromium.lrstchromiumwindow.lrsuBufferPanel.pasuCEFAccessibilityHandler.pasuCEFApp.pasuCEFApplication.pasuCEFAuthCallback.pasuCEFBaseRefCounted.pasuCEFBaseScopedWrapper.pasuCEFBeforeDownloadCallback.pasuCEFBinaryValue.pasuCEFBrowser.pasuCEFBrowserProcessHandler.pasuCEFCallback.pasuCEFChromium.pasuCEFChromiumEvents.pasuCEFChromiumFontOptions.pasuCEFChromiumOptions.pasuCEFChromiumWindow.pasuCEFClient.pasuCEFCommandLine.pasuCEFCompletionCallback.pasuCEFConstants.pasuCEFContextMenuHandler.pasuCEFContextMenuParams.pasuCEFCookieManager.pasuCEFCookieVisitor.pasuCEFCustomStreamReader.pasuCEFDeleteCookiesCallback.pasuCEFDialogHandler.pasuCEFDictionaryValue.pasuCEFDisplayHandler.pasuCEFDomDocument.pasuCEFDomNode.pasuCEFDomVisitor.pasuCEFDownLoadItem.pasuCEFDownloadHandler.pasuCEFDownloadImageCallBack.pasuCEFDownloadItemCallback.pasuCEFDragAndDropMgr.pasuCEFDragData.pasuCEFDragHandler.pasuCEFEndTracingCallback.pasuCEFExtension.pasuCEFExtensionHandler.pasuCEFFileDialogCallback.pasuCEFFindHandler.pasuCEFFocusHandler.pasuCEFFrame.pasuCEFGetExtensionResourceCallback.pasuCEFImage.pasuCEFInterfaces.pasuCEFJsDialogCallback.pasuCEFJsDialogHandler.pasuCEFKeyboardHandler.pasuCEFLibFunctions.pasuCEFLifeSpanHandler.pasuCEFListValue.pasuCEFLoadHandler.pasuCEFMenuModel.pasuCEFMenuModelDelegate.pasuCEFMiscFunctions.pasuCEFNavigationEntry.pasuCEFNavigationEntryVisitor.pasuCEFPDFPrintCallback.pasuCEFPDFPrintOptions.pasuCEFPostData.pasuCEFPostDataElement.pasuCEFPrintSettings.pasuCEFProcessMessage.pasuCEFRegisterCDMCallback.pasuCEFRenderHandler.pasuCEFRenderProcessHandler.pasuCEFRequest.pasuCEFRequestCallback.pasuCEFRequestContext.pasuCEFRequestContextHandler.pasuCEFRequestHandler.pasuCEFResolveCallback.pasuCEFResourceBundle.pasuCEFResourceBundleHandler.pasuCEFResourceHandler.pasuCEFResponse.pasuCEFResponseFilter.pasuCEFRunContextMenuCallback.pasuCEFRunFileDialogCallback.pasuCEFSSLStatus.pasuCEFSchemeHandlerFactory.pasuCEFSchemeRegistrar.pasuCEFSelectClientCertificateCallback.pasuCEFServer.pasuCEFServerComponent.pasuCEFServerEvents.pasuCEFServerHandler.pasuCEFSetCookieCallback.pasuCEFSslInfo.pasuCEFStreamReader.pasuCEFStreamWriter.pasuCEFStringList.pasuCEFStringMap.pasuCEFStringMultimap.pasuCEFStringVisitor.pasuCEFTask.pasuCEFTaskRunner.pasuCEFThread.pasuCEFTypes.pasuCEFUrlRequest.pasuCEFUrlrequestClient.pasuCEFV8Exception.pasuCEFValue.pasuCEFWaitableEvent.pasuCEFWebPluginInfo.pasuCEFWebPluginInfoVisitor.pasuCEFWebPluginUnstableCallback.pasuCEFWindowParent.pasuCEFWorkScheduler.pasuCEFWorkSchedulerThread.pasuCEFWriteHandler.pasuCEFX509CertPrincipal.pasuCEFX509Certificate.pasuCEFXmlReader.pasuCEFZipReader.pasuCEFv8Accessor.pasuCEFv8ArrayBufferReleaseCallback.pasuCEFv8Context.pasuCEFv8Handler.pasuCEFv8Interceptor.pasuCEFv8StackFrame.pasuCEFv8StackTrace.pasuCEFv8Types.pasuCEFv8Value.pasuFMXBufferPanel.pasuFMXChromium.pasuFMXWindowParent.pasuFMXWorkScheduler.pasuOLEDragAndDrop.pas

@ -10,7 +10,7 @@
// For more information about CEF4Delphi visit :
// https://www.briskbard.com/index.php?lang=en&pageid=cef
//
// Copyright � 2018 Salvador Daz Fau. All rights reserved.
// Copyright � 2018 Salvador Diaz Fau. All rights reserved.
//
// ************************************************************************
// ************ vvvv Original license and comments below vvvv *************
@ -36,6 +36,10 @@
*)
unit uCEFRequestContextHandler;
{$IFDEF FPC}
{$MODE OBJFPC}{$H+}
{$ENDIF}
{$IFNDEF CPUX64}
{$ALIGN ON}
@ -50,8 +54,6 @@ uses
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestContextHandlerProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} function: ICefCookieManager;
TCefRequestContextHandlerRef = class(TCefBaseRefCountedRef, ICefRequestContextHandler)
protected
procedure OnRequestContextInitialized(const request_context: ICefRequestContext);
@ -139,15 +141,15 @@ begin
with PCefRequestContextHandler(FData)^ do
begin
on_request_context_initialized := cef_request_context_handler_on_request_context_initialized;
get_cookie_manager := cef_request_context_handler_get_cookie_manager;
on_before_plugin_load := cef_request_context_handler_on_before_plugin_load;
on_request_context_initialized := {$IFDEF FPC}@{$ENDIF}cef_request_context_handler_on_request_context_initialized;
get_cookie_manager := {$IFDEF FPC}@{$ENDIF}cef_request_context_handler_get_cookie_manager;
on_before_plugin_load := {$IFDEF FPC}@{$ENDIF}cef_request_context_handler_on_before_plugin_load;
end;
end;
procedure TCefRequestContextHandlerOwn.OnRequestContextInitialized(const request_context: ICefRequestContext);
begin
//
end;
@ -155,11 +157,12 @@ begin
begin
Result:= nil;
end;
function TCefRequestContextHandlerOwn.OnBeforePluginLoad(const mimeType, pluginUrl : ustring;
isMainFrame : boolean;
const topOriginUrl: ustring;
const pluginInfo: ICefWebPluginInfo;
pluginPolicy: PCefPluginPolicy): Boolean;
function TCefRequestContextHandlerOwn.OnBeforePluginLoad(const mimeType : ustring;
const pluginUrl : ustring;
isMainFrame : boolean;
const topOriginUrl : ustring;
const pluginInfo : ICefWebPluginInfo;
pluginPolicy : PCefPluginPolicy): Boolean;
begin
Result := False;
@ -168,27 +171,34 @@ end;
// TCefRequestContextHandlerRef
procedure TCefRequestContextHandlerRef.OnRequestContextInitialized(const request_context: ICefRequestContext);
begin
PCefRequestContextHandler(FData)^.on_request_context_initialized(PCefRequestContextHandler(FData), CefGetData(request_context));
end;
begin
function TCefRequestContextHandlerRef.GetCookieManager: ICefCookieManager;
begin
Result := TCefCookieManagerRef.UnWrap(PCefRequestContextHandler(FData)^.get_cookie_manager(PCefRequestContextHandler(FData)));
function TCefRequestContextHandlerRef.OnBeforePluginLoad(const mimeType, pluginUrl : ustring;
isMainFrame : boolean;
const topOriginUrl: ustring;
const pluginInfo: ICefWebPluginInfo;
end;
function TCefRequestContextHandlerRef.OnBeforePluginLoad(const mimeType : ustring;
const pluginUrl : ustring;
isMainFrame : boolean;
const topOriginUrl : ustring;
const pluginInfo : ICefWebPluginInfo;
var
pluginPolicy : PCefPluginPolicy): Boolean;
var
begin
mt := CefString(mimeType);
pu := CefString(pluginUrl);
TempType, TempPluginURL, TempOriginURL : TCefString;
begin
TempType := CefString(mimeType);
TempPluginURL := CefString(pluginUrl);
TempOriginURL := CefString(topOriginUrl);
Result := PCefRequestContextHandler(FData)^.on_before_plugin_load(PCefRequestContextHandler(FData),
@TempType,
@TempPluginURL,
ord(isMainFrame),
@TempOriginURL,
CefGetData(pluginInfo),
pluginPolicy) <> 0;
end;