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

Added GlobalCEFApp.EnableUsermediaScreenCapturing

This commit is contained in:
Salvador Diaz Fau
2020-10-08 16:41:27 +02:00
parent 1186f0b105
commit d44db3bf2a
2 changed files with 222 additions and 216 deletions

View File

@ -78,96 +78,97 @@ const
type type
TCefApplicationCore = class TCefApplicationCore = class
protected protected
FCache : ustring; FCache : ustring;
FRootCache : ustring; FRootCache : ustring;
FUserDataPath : ustring; FUserDataPath : ustring;
FUserAgent : ustring; FUserAgent : ustring;
FProductVersion : ustring; FProductVersion : ustring;
FLocale : ustring; FLocale : ustring;
FLocalesRequired : ustring; FLocalesRequired : ustring;
FLogFile : ustring; FLogFile : ustring;
FBrowserSubprocessPath : ustring; FBrowserSubprocessPath : ustring;
FCustomFlashPath : ustring; FCustomFlashPath : ustring;
FFrameworkDirPath : ustring; FFrameworkDirPath : ustring;
FMainBundlePath : ustring; // Only used in macOS FMainBundlePath : ustring; // Only used in macOS
FChromeRuntime : boolean; FChromeRuntime : boolean;
FLogSeverity : TCefLogSeverity; FLogSeverity : TCefLogSeverity;
FJavaScriptFlags : ustring; FJavaScriptFlags : ustring;
FResourcesDirPath : ustring; FResourcesDirPath : ustring;
FLocalesDirPath : ustring; FLocalesDirPath : ustring;
FSingleProcess : Boolean; FSingleProcess : Boolean;
FNoSandbox : Boolean; FNoSandbox : Boolean;
FCommandLineArgsDisabled : Boolean; FCommandLineArgsDisabled : Boolean;
FPackLoadingDisabled : Boolean; FPackLoadingDisabled : Boolean;
FRemoteDebuggingPort : Integer; FRemoteDebuggingPort : Integer;
FUncaughtExceptionStackSize : Integer; FUncaughtExceptionStackSize : Integer;
FPersistSessionCookies : Boolean; FPersistSessionCookies : Boolean;
FPersistUserPreferences : boolean; FPersistUserPreferences : boolean;
FIgnoreCertificateErrors : Boolean; FIgnoreCertificateErrors : Boolean;
FBackgroundColor : TCefColor; FBackgroundColor : TCefColor;
FAcceptLanguageList : ustring; FAcceptLanguageList : ustring;
FApplicationClientID : ustring; FApplicationClientID : ustring;
FWindowsSandboxInfo : Pointer; FWindowsSandboxInfo : Pointer;
FWindowlessRenderingEnabled : Boolean; FWindowlessRenderingEnabled : Boolean;
FMultiThreadedMessageLoop : boolean; FMultiThreadedMessageLoop : boolean;
FExternalMessagePump : boolean; FExternalMessagePump : boolean;
FDeleteCache : boolean; FDeleteCache : boolean;
FDeleteCookies : boolean; FDeleteCookies : boolean;
FCustomCommandLines : TStringList; FCustomCommandLines : TStringList;
FCustomCommandLineValues : TStringList; FCustomCommandLineValues : TStringList;
FFlashEnabled : boolean; FFlashEnabled : boolean;
FEnableMediaStream : boolean; FEnableMediaStream : boolean;
FEnableSpeechInput : boolean; FEnableSpeechInput : boolean;
FUseFakeUIForMediaStream : boolean; FUseFakeUIForMediaStream : boolean;
FEnableGPU : boolean; FEnableUsermediaScreenCapturing : boolean;
FCheckCEFFiles : boolean; FEnableGPU : boolean;
FLibLoaded : boolean; FCheckCEFFiles : boolean;
FSmoothScrolling : TCefState; FLibLoaded : boolean;
FFastUnload : boolean; FSmoothScrolling : TCefState;
FDisableSafeBrowsing : boolean; FFastUnload : boolean;
FEnableHighDPISupport : boolean; FDisableSafeBrowsing : boolean;
FMuteAudio : boolean; FEnableHighDPISupport : boolean;
FReRaiseExceptions : boolean; FMuteAudio : boolean;
FShowMessageDlg : boolean; FReRaiseExceptions : boolean;
FMissingBinariesException : boolean; FShowMessageDlg : boolean;
FSetCurrentDir : boolean; FMissingBinariesException : boolean;
FGlobalContextInitialized : boolean; FSetCurrentDir : boolean;
FSitePerProcess : boolean; FGlobalContextInitialized : boolean;
FDisableWebSecurity : boolean; FSitePerProcess : boolean;
FDisablePDFExtension : boolean; FDisableWebSecurity : boolean;
FLogProcessInfo : boolean; FDisablePDFExtension : boolean;
FDisableSiteIsolationTrials : boolean; FLogProcessInfo : boolean;
FEnableFeatures : ustring; FDisableSiteIsolationTrials : boolean;
FDisableFeatures : ustring; FEnableFeatures : ustring;
FEnableBlinkFeatures : ustring; FDisableFeatures : ustring;
FDisableBlinkFeatures : ustring; FEnableBlinkFeatures : ustring;
FForceFieldTrials : ustring; FDisableBlinkFeatures : ustring;
FForceFieldTrialParams : ustring; FForceFieldTrials : ustring;
FChromeVersionInfo : TFileVersionInfo; FForceFieldTrialParams : ustring;
FChromeVersionInfo : TFileVersionInfo;
{$IFDEF FPC} {$IFDEF FPC}
FLibHandle : TLibHandle; FLibHandle : TLibHandle;
{$ELSE} {$ELSE}
FLibHandle : THandle; FLibHandle : THandle;
{$ENDIF} {$ENDIF}
FOnRegisterCustomSchemes : TOnRegisterCustomSchemesEvent; FOnRegisterCustomSchemes : TOnRegisterCustomSchemesEvent;
FAppSettings : TCefSettings; FAppSettings : TCefSettings;
FDeviceScaleFactor : single; FDeviceScaleFactor : single;
FCheckDevToolsResources : boolean; FCheckDevToolsResources : boolean;
FDisableExtensions : boolean; FDisableExtensions : boolean;
FDisableGPUCache : boolean; FDisableGPUCache : boolean;
FStatus : TCefAplicationStatus; FStatus : TCefAplicationStatus;
FMissingLibFiles : string; FMissingLibFiles : string;
FProcessType : TCefProcessType; FProcessType : TCefProcessType;
FWidevinePath : ustring; FWidevinePath : ustring;
FMustFreeLibrary : boolean; FMustFreeLibrary : boolean;
FAutoplayPolicy : TCefAutoplayPolicy; FAutoplayPolicy : TCefAutoplayPolicy;
FDisableBackgroundNetworking : boolean; FDisableBackgroundNetworking : boolean;
FMetricsRecordingOnly : boolean; FMetricsRecordingOnly : boolean;
FAllowFileAccessFromFiles : boolean; FAllowFileAccessFromFiles : boolean;
FAllowRunningInsecureContent : boolean; FAllowRunningInsecureContent : boolean;
FSupportedSchemes : TStringList; FSupportedSchemes : TStringList;
FDisableNewBrowserInfoTimeout : boolean; FDisableNewBrowserInfoTimeout : boolean;
FDevToolsProtocolLogFile : ustring; FDevToolsProtocolLogFile : ustring;
FPluginPolicy : TCefPluginPolicySwitch; FPluginPolicy : TCefPluginPolicySwitch;
FDefaultEncoding : string; FDefaultEncoding : string;
@ -195,33 +196,33 @@ type
FMustCreateLoadHandler : boolean; FMustCreateLoadHandler : boolean;
// ICefBrowserProcessHandler // ICefBrowserProcessHandler
FOnContextInitialized : TOnContextInitializedEvent; FOnContextInitialized : TOnContextInitializedEvent;
FOnBeforeChildProcessLaunch : TOnBeforeChildProcessLaunchEvent; FOnBeforeChildProcessLaunch : TOnBeforeChildProcessLaunchEvent;
FOnScheduleMessagePumpWork : TOnScheduleMessagePumpWorkEvent; FOnScheduleMessagePumpWork : TOnScheduleMessagePumpWorkEvent;
// ICefResourceBundleHandler // ICefResourceBundleHandler
FOnGetLocalizedString : TOnGetLocalizedStringEvent; FOnGetLocalizedString : TOnGetLocalizedStringEvent;
FOnGetDataResource : TOnGetDataResourceEvent; FOnGetDataResource : TOnGetDataResourceEvent;
FOnGetDataResourceForScale : TOnGetDataResourceForScaleEvent; FOnGetDataResourceForScale : TOnGetDataResourceForScaleEvent;
// ICefRenderProcessHandler // ICefRenderProcessHandler
FOnWebKitInitialized : TOnWebKitInitializedEvent; FOnWebKitInitialized : TOnWebKitInitializedEvent;
FOnBrowserCreated : TOnBrowserCreatedEvent; FOnBrowserCreated : TOnBrowserCreatedEvent;
FOnBrowserDestroyed : TOnBrowserDestroyedEvent; FOnBrowserDestroyed : TOnBrowserDestroyedEvent;
FOnContextCreated : TOnContextCreatedEvent; FOnContextCreated : TOnContextCreatedEvent;
FOnContextReleased : TOnContextReleasedEvent; FOnContextReleased : TOnContextReleasedEvent;
FOnUncaughtException : TOnUncaughtExceptionEvent; FOnUncaughtException : TOnUncaughtExceptionEvent;
FOnFocusedNodeChanged : TOnFocusedNodeChangedEvent; FOnFocusedNodeChanged : TOnFocusedNodeChangedEvent;
FOnProcessMessageReceived : TOnProcessMessageReceivedEvent; FOnProcessMessageReceived : TOnProcessMessageReceivedEvent;
// ICefRegisterCDMCallback // ICefRegisterCDMCallback
FOnCDMRegistrationComplete : TOnCDMRegistrationCompleteEvent; FOnCDMRegistrationComplete : TOnCDMRegistrationCompleteEvent;
// ICefLoadHandler // ICefLoadHandler
FOnLoadingStateChange : TOnRenderLoadingStateChange; FOnLoadingStateChange : TOnRenderLoadingStateChange;
FOnLoadStart : TOnRenderLoadStart; FOnLoadStart : TOnRenderLoadStart;
FOnLoadEnd : TOnRenderLoadEnd; FOnLoadEnd : TOnRenderLoadEnd;
FOnLoadError : TOnRenderLoadError; FOnLoadError : TOnRenderLoadError;
procedure SetCache(const aValue : ustring); procedure SetCache(const aValue : ustring);
procedure SetRootCache(const aValue : ustring); procedure SetRootCache(const aValue : ustring);
@ -398,6 +399,7 @@ type
property EnableMediaStream : boolean read FEnableMediaStream write FEnableMediaStream; // --enable-media-stream property EnableMediaStream : boolean read FEnableMediaStream write FEnableMediaStream; // --enable-media-stream
property EnableSpeechInput : boolean read FEnableSpeechInput write FEnableSpeechInput; // --enable-speech-input property EnableSpeechInput : boolean read FEnableSpeechInput write FEnableSpeechInput; // --enable-speech-input
property UseFakeUIForMediaStream : boolean read FUseFakeUIForMediaStream write FUseFakeUIForMediaStream; // --use-fake-ui-for-media-stream property UseFakeUIForMediaStream : boolean read FUseFakeUIForMediaStream write FUseFakeUIForMediaStream; // --use-fake-ui-for-media-stream
property EnableUsermediaScreenCapturing : boolean read FEnableUsermediaScreenCapturing write FEnableUsermediaScreenCapturing; // --enable-usermedia-screen-capturing
property EnableGPU : boolean read FEnableGPU write FEnableGPU; // --enable-gpu-plugin property EnableGPU : boolean read FEnableGPU write FEnableGPU; // --enable-gpu-plugin
property EnableFeatures : ustring read FEnableFeatures write FEnableFeatures; // --enable-features property EnableFeatures : ustring read FEnableFeatures write FEnableFeatures; // --enable-features
property DisableFeatures : ustring read FDisableFeatures write FDisableFeatures; // --disable-features property DisableFeatures : ustring read FDisableFeatures write FDisableFeatures; // --disable-features
@ -588,92 +590,93 @@ begin
if GlobalCEFApp = nil then if GlobalCEFApp = nil then
GlobalCEFApp := Self; GlobalCEFApp := Self;
FStatus := asLoading; FStatus := asLoading;
FMissingLibFiles := ''; FMissingLibFiles := '';
FLibHandle := 0; FLibHandle := 0;
FCache := ''; FCache := '';
FRootCache := ''; FRootCache := '';
FUserDataPath := ''; FUserDataPath := '';
FUserAgent := ''; FUserAgent := '';
FProductVersion := ''; FProductVersion := '';
FLocale := ''; FLocale := '';
FLogFile := ''; FLogFile := '';
FBrowserSubprocessPath := ''; FBrowserSubprocessPath := '';
FCustomFlashPath := ''; FCustomFlashPath := '';
FFrameworkDirPath := ''; FFrameworkDirPath := '';
FMainBundlePath := ''; FMainBundlePath := '';
FChromeRuntime := False; FChromeRuntime := False;
FLogSeverity := LOGSEVERITY_DISABLE; FLogSeverity := LOGSEVERITY_DISABLE;
FJavaScriptFlags := ''; FJavaScriptFlags := '';
FResourcesDirPath := ''; FResourcesDirPath := '';
FLocalesDirPath := ''; FLocalesDirPath := '';
FSingleProcess := False; FSingleProcess := False;
FNoSandbox := True; FNoSandbox := True;
FCommandLineArgsDisabled := False; FCommandLineArgsDisabled := False;
FPackLoadingDisabled := False; FPackLoadingDisabled := False;
FRemoteDebuggingPort := 0; FRemoteDebuggingPort := 0;
FUncaughtExceptionStackSize := 0; FUncaughtExceptionStackSize := 0;
FPersistSessionCookies := False; FPersistSessionCookies := False;
FPersistUserPreferences := False; FPersistUserPreferences := False;
FIgnoreCertificateErrors := False; FIgnoreCertificateErrors := False;
FBackgroundColor := 0; FBackgroundColor := 0;
FAcceptLanguageList := ''; FAcceptLanguageList := '';
FApplicationClientID := ''; FApplicationClientID := '';
FWindowsSandboxInfo := nil; FWindowsSandboxInfo := nil;
FWindowlessRenderingEnabled := False; FWindowlessRenderingEnabled := False;
FMultiThreadedMessageLoop := True; FMultiThreadedMessageLoop := True;
FExternalMessagePump := False; FExternalMessagePump := False;
FDeleteCache := False; FDeleteCache := False;
FDeleteCookies := False; FDeleteCookies := False;
FFlashEnabled := True; FFlashEnabled := True;
FEnableMediaStream := True; FEnableMediaStream := True;
FEnableSpeechInput := True; FEnableSpeechInput := True;
FUseFakeUIForMediaStream := False; FUseFakeUIForMediaStream := False;
FEnableGPU := False; FEnableUsermediaScreenCapturing := False;
FCustomCommandLines := nil; FEnableGPU := False;
FCustomCommandLineValues := nil; FCustomCommandLines := nil;
FCheckCEFFiles := True; FCustomCommandLineValues := nil;
FSmoothScrolling := STATE_DEFAULT; FCheckCEFFiles := True;
FFastUnload := False; FSmoothScrolling := STATE_DEFAULT;
FDisableSafeBrowsing := False; FFastUnload := False;
FOnRegisterCustomSchemes := nil; FDisableSafeBrowsing := False;
FEnableHighDPISupport := False; FOnRegisterCustomSchemes := nil;
FMuteAudio := False; FEnableHighDPISupport := False;
FSitePerProcess := False; FMuteAudio := False;
FDisableWebSecurity := False; FSitePerProcess := False;
FDisablePDFExtension := False; FDisableWebSecurity := False;
FDisableSiteIsolationTrials := False; FDisablePDFExtension := False;
FLogProcessInfo := False; FDisableSiteIsolationTrials := False;
FReRaiseExceptions := False; FLogProcessInfo := False;
FLibLoaded := False; FReRaiseExceptions := False;
FShowMessageDlg := True; FLibLoaded := False;
FMissingBinariesException := False; FShowMessageDlg := True;
FSetCurrentDir := False; FMissingBinariesException := False;
FGlobalContextInitialized := False; FSetCurrentDir := False;
FCheckDevToolsResources := True; FGlobalContextInitialized := False;
FDisableExtensions := False; FCheckDevToolsResources := True;
FDisableGPUCache := True; FDisableExtensions := False;
FLocalesRequired := ''; FDisableGPUCache := True;
FProcessType := ParseProcessType; FLocalesRequired := '';
FWidevinePath := ''; FProcessType := ParseProcessType;
FMustFreeLibrary := False; FWidevinePath := '';
FAutoplayPolicy := appDefault; FMustFreeLibrary := False;
FDisableBackgroundNetworking := False; FAutoplayPolicy := appDefault;
FMetricsRecordingOnly := False; FDisableBackgroundNetworking := False;
FAllowFileAccessFromFiles := False; FMetricsRecordingOnly := False;
FAllowRunningInsecureContent := False; FAllowFileAccessFromFiles := False;
FPluginPolicy := PLUGIN_POLICY_SWITCH_ALLOW; FAllowRunningInsecureContent := False;
FDefaultEncoding := ''; FPluginPolicy := PLUGIN_POLICY_SWITCH_ALLOW;
FDisableJavascript := False; FDefaultEncoding := '';
FEnableFeatures := ''; FDisableJavascript := False;
FDisableFeatures := ''; FEnableFeatures := '';
FEnableBlinkFeatures := ''; FDisableFeatures := '';
FDisableBlinkFeatures := ''; FEnableBlinkFeatures := '';
FForceFieldTrials := ''; FDisableBlinkFeatures := '';
FForceFieldTrialParams := ''; FForceFieldTrials := '';
FSupportedSchemes := nil; FForceFieldTrialParams := '';
FDisableNewBrowserInfoTimeout := False; FSupportedSchemes := nil;
FDevToolsProtocolLogFile := ''; FDisableNewBrowserInfoTimeout := False;
FDevToolsProtocolLogFile := '';
FDisableJavascriptCloseWindows := False; FDisableJavascriptCloseWindows := False;
FDisableJavascriptAccessClipboard := False; FDisableJavascriptAccessClipboard := False;
@ -692,39 +695,39 @@ begin
FDisableReadingFromCanvas := False; FDisableReadingFromCanvas := False;
FHyperlinkAuditing := True; FHyperlinkAuditing := True;
FMustCreateResourceBundleHandler := False; FMustCreateResourceBundleHandler := False;
FMustCreateBrowserProcessHandler := True; FMustCreateBrowserProcessHandler := True;
FMustCreateRenderProcessHandler := False; FMustCreateRenderProcessHandler := False;
FMustCreateLoadHandler := False; FMustCreateLoadHandler := False;
// ICefBrowserProcessHandler // ICefBrowserProcessHandler
FOnContextInitialized := nil; FOnContextInitialized := nil;
FOnBeforeChildProcessLaunch := nil; FOnBeforeChildProcessLaunch := nil;
FOnScheduleMessagePumpWork := nil; FOnScheduleMessagePumpWork := nil;
// ICefResourceBundleHandler // ICefResourceBundleHandler
FOnGetLocalizedString := nil; FOnGetLocalizedString := nil;
FOnGetDataResource := nil; FOnGetDataResource := nil;
FOnGetDataResourceForScale := nil; FOnGetDataResourceForScale := nil;
// ICefRenderProcessHandler // ICefRenderProcessHandler
FOnWebKitInitialized := nil; FOnWebKitInitialized := nil;
FOnBrowserCreated := nil; FOnBrowserCreated := nil;
FOnBrowserDestroyed := nil; FOnBrowserDestroyed := nil;
FOnContextCreated := nil; FOnContextCreated := nil;
FOnContextReleased := nil; FOnContextReleased := nil;
FOnUncaughtException := nil; FOnUncaughtException := nil;
FOnFocusedNodeChanged := nil; FOnFocusedNodeChanged := nil;
FOnProcessMessageReceived := nil; FOnProcessMessageReceived := nil;
// ICefRegisterCDMCallback // ICefRegisterCDMCallback
FOnCDMRegistrationComplete := nil; FOnCDMRegistrationComplete := nil;
// ICefLoadHandler // ICefLoadHandler
FOnLoadingStateChange := nil; FOnLoadingStateChange := nil;
FOnLoadStart := nil; FOnLoadStart := nil;
FOnLoadEnd := nil; FOnLoadEnd := nil;
FOnLoadError := nil; FOnLoadError := nil;
UpdateDeviceScaleFactor; UpdateDeviceScaleFactor;
@ -1681,6 +1684,9 @@ begin
if FUseFakeUIForMediaStream then if FUseFakeUIForMediaStream then
ReplaceSwitch(aKeys, aValues, '--use-fake-ui-for-media-stream'); ReplaceSwitch(aKeys, aValues, '--use-fake-ui-for-media-stream');
if FEnableUsermediaScreenCapturing then
ReplaceSwitch(aKeys, aValues, '--enable-usermedia-screen-capturing');
if not(FEnableGPU) then if not(FEnableGPU) then
begin begin
ReplaceSwitch(aKeys, aValues, '--disable-gpu'); ReplaceSwitch(aKeys, aValues, '--disable-gpu');

View File

@ -2,7 +2,7 @@
"UpdateLazPackages" : [ "UpdateLazPackages" : [
{ {
"ForceNotify" : true, "ForceNotify" : true,
"InternalVersion" : 189, "InternalVersion" : 190,
"Name" : "cef4delphi_lazarus.lpk", "Name" : "cef4delphi_lazarus.lpk",
"Version" : "85.3.12.0" "Version" : "85.3.12.0"
} }