1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2024-11-24 08:02:15 +02:00

Fixed GetDefaultCEFUserAgent

This commit is contained in:
Salvador Díaz Fau 2024-03-08 17:44:43 +01:00
parent f748502b99
commit 897b13b7df
7 changed files with 272 additions and 216 deletions

View File

@ -37,6 +37,7 @@ const
MINIBROWSER_SHOWFILEDLG = WM_APP + $10F;
MINIBROWSER_SELECTCERT = WM_APP + $110;
MINIBROWSER_MEDIAACCESSRQST = WM_APP + $111;
MINIBROWSER_SHOWBROWSERINFO = WM_APP + $112;
MINIBROWSER_HOMEPAGE = 'https://www.google.com';
@ -58,11 +59,21 @@ const
MINIBROWSER_CONTEXTMENU_DECZOOM = MENU_ID_USER_FIRST + 16;
MINIBROWSER_CONTEXTMENU_RESETZOOM = MENU_ID_USER_FIRST + 17;
MINIBROWSER_CONTEXTMENU_EXITFULLSCREEN = MENU_ID_USER_FIRST + 18;
MINIBROWSER_CONTEXTMENU_BROWSERINFO = MENU_ID_USER_FIRST + 19;
DEVTOOLS_SCREENSHOT_MSGID = 1;
DEVTOOLS_MHTML_MSGID = 2;
DEVTOOLS_SCREENSHOT_MSGID = 1001;
DEVTOOLS_MHTML_MSGID = 1002;
DEVTOOLS_BROWSERINFO_MSGID = 1003;
type
TBrowserInfo = record
protocolVersion : string;
product : string;
revision : string;
userAgent : string;
jsVersion : string;
end;
TMiniBrowserFrm = class(TForm)
NavControlPnl: TPanel;
NavButtonPnl: TPanel;
@ -203,6 +214,7 @@ type
FCertificates : TCefX509CertificateArray;
FAllowDownloads : boolean;
FJSException : integer;
FBrowserInfo : TBrowserInfo;
FMediaAccessCallback : ICefMediaAccessCallback;
FRequestingOrigin : string;
@ -227,6 +239,7 @@ type
procedure HandleKeyUp(const aMsg : TMsg; var aHandled : boolean);
procedure HandleKeyDown(const aMsg : TMsg; var aHandled : boolean);
procedure HandleBrowserInfo(const aResult : ICefValue);
procedure InspectRequest(const aRequest : ICefRequest);
procedure InspectResponse(const aResponse : ICefResponse);
@ -254,6 +267,7 @@ type
procedure ShowFileDialogMsg(var aMessage : TMessage); message MINIBROWSER_SHOWFILEDLG;
procedure SelectCertificateMsg(var aMessage : TMessage); message MINIBROWSER_SELECTCERT;
procedure MediaAccessRequestMsg(var aMessage : TMessage); message MINIBROWSER_MEDIAACCESSRQST;
procedure ShowBrowserInfoMsg(var aMessage : TMessage); message MINIBROWSER_SHOWBROWSERINFO;
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP;
@ -401,6 +415,7 @@ begin
model.AddItem(MINIBROWSER_CONTEXTMENU_JSWRITEDOC, 'Modify HTML document');
model.AddItem(MINIBROWSER_CONTEXTMENU_JSPRINTDOC, 'Print using Javascript');
model.AddItem(MINIBROWSER_CONTEXTMENU_SHOWRESPONSE, 'Show server headers');
model.AddItem(MINIBROWSER_CONTEXTMENU_BROWSERINFO, 'Browser information...');
if DevTools.Visible then
model.AddItem(MINIBROWSER_CONTEXTMENU_HIDEDEVTOOLS, 'Hide DevTools')
@ -618,6 +633,12 @@ begin
MINIBROWSER_CONTEXTMENU_EXITFULLSCREEN :
Chromium1.ExitFullscreen(True);
MINIBROWSER_CONTEXTMENU_BROWSERINFO :
begin
FPendingMsgID := DEVTOOLS_BROWSERINFO_MSGID;
Chromium1.ExecuteDevToolsMethod(0, 'Browser.getVersion', nil);
end;
end
else
case commandId of
@ -1148,6 +1169,20 @@ begin
end;
end;
procedure TMiniBrowserFrm.ShowBrowserInfoMsg(var aMessage : TMessage);
var
TempInfo : string;
begin
TempInfo := 'protocolVersion: ' + FBrowserInfo.protocolVersion + CRLF +
'product: ' + FBrowserInfo.product + CRLF +
'revision: ' + FBrowserInfo.revision + CRLF +
'userAgent: ' + FBrowserInfo.userAgent + CRLF +
'jsVersion: ' + FBrowserInfo.jsVersion + CRLF + CRLF +
'GetDefaultCEFUserAgent: ' + GetDefaultCEFUserAgent;
showmessage(TempInfo);
end;
procedure TMiniBrowserFrm.Chromium1ResolvedHostAvailable(Sender: TObject;
result: TCefErrorCode; const resolvedIps: TStrings);
begin
@ -1505,6 +1540,26 @@ begin
Chromium1.ExecuteDevToolsMethod(0, 'Page.captureScreenshot', nil);
end;
procedure TMiniBrowserFrm.HandleBrowserInfo(const aResult : ICefValue);
var
TempDict : ICefDictionaryValue;
begin
if (aResult = nil) then exit;
TempDict := aResult.GetDictionary;
if (TempDict <> nil) and (TempDict.GetSize > 0) then
begin
FBrowserInfo.protocolVersion := TempDict.GetValue('protocolVersion').GetString;
FBrowserInfo.product := TempDict.GetValue('product').GetString;
FBrowserInfo.revision := TempDict.GetValue('revision').GetString;
FBrowserInfo.userAgent := TempDict.GetValue('userAgent').GetString;
FBrowserInfo.jsVersion := TempDict.GetValue('jsVersion').GetString;
PostMessage(Handle, MINIBROWSER_SHOWBROWSERINFO, 0, 0);
end;
end;
procedure TMiniBrowserFrm.Chromium1DevToolsMethodResult( Sender : TObject;
const browser : ICefBrowser;
message_id : Integer;
@ -1522,19 +1577,28 @@ begin
if success then
begin
TempResult := 1;
FDevToolsMsgValue := '';
if (result <> nil) then
if (FPendingMsgID = DEVTOOLS_BROWSERINFO_MSGID) then
begin
TempDict := result.GetDictionary;
HandleBrowserInfo(result);
FPendingMsgID := 0;
exit;
end
else
begin
TempResult := 1;
FDevToolsMsgValue := '';
if (TempDict <> nil) and (TempDict.GetSize > 0) then
if (result <> nil) then
begin
TempValue := TempDict.GetValue('data');
TempDict := result.GetDictionary;
if (TempValue <> nil) and (TempValue.GetType = VTYPE_STRING) then
FDevToolsMsgValue := TempValue.GetString;
if (TempDict <> nil) and (TempDict.GetSize > 0) then
begin
TempValue := TempDict.GetValue('data');
if (TempValue <> nil) and (TempValue.GetType = VTYPE_STRING) then
FDevToolsMsgValue := TempValue.GetString;
end;
end;
end;
end

View File

@ -66,7 +66,7 @@
<Version Value="11"/>
<PathDelim Value="\"/>
<Target>
<Filename Value="..\..\..\bin64\MiniBrowser"/>
<Filename Value="..\..\..\bin\MiniBrowser"/>
</Target>
<SearchPaths>
<IncludeFiles Value="$(ProjOutDir)"/>

View File

@ -1,139 +0,0 @@
[0126/152856.768:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0126/152856.768:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0126/152856.940:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 33 ms
[0126/152856.974:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0126/152856.974:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0126/152857.050:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 27 ms
[0126/152857.050:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0126/152857.050:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0126/152857.050:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0126/152857.159:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 69 ms
[0126/152857.159:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0126/152857.159:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0126/152857.609:INFO:CONSOLE(423)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.deT8CnU2Gss.O/am=AAAAAAAAAAAAAAAAAAAAAAAgAAAAQAINhEMANkAAAAAAAySAAIAIRgCiEJAAYABEEPBQNgAAMAECS2ACSBF4JgEAQBNQBRAAAAAAAADBAFEAgQcEAACgAwBAAIUADEgQoAAEAAAAIA8AwQEwiCAAAAAAAAAAAACAABIE4YIEoCCAAAAAAAAAAAAAAEBKmqgwDA/d=1/ed=1/dg=2/br=1/rs=ACT90oHeMQPPTRkeI-3oQbXtjhZkpTNOxw/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:SdcwHb,XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:SdcwHb;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;hLUtwc:KB8OKd;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:O1Gjze,TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (423)
[0126/152904.121:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0126/152904.132:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0126/153007.358:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0126/153007.358:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0201/144344.616:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0201/144344.616:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0201/144344.693:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 30 ms
[0201/144344.709:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0201/144344.709:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0201/144344.771:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 21 ms
[0201/144344.787:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0201/144344.787:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0201/144344.896:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 72 ms
[0201/144344.896:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0201/144345.167:ERROR:interface_endpoint_client.cc(702)] Message 0 rejected by interface blink.mojom.WidgetHost
[0201/144345.670:INFO:CONSOLE(421)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.Xu1x5siTfG0.O/am=AAAAAAAAAAAAAAAAAAAAAAAgAAAAQAINhEMANkAAAAAAAyRAACCCMYAoBEgADIAIAh7KBgAAJiCwBCaAFIFnEgAANAFVAAEAAAAAAAgGiAEEHhAAAIAOAIAAigAMQBCgAAgAAABAHoDgAAYpCAAAAAAAAAAAACCABEG4IAEFAQQAAAAAAAAAAAAAUmmiwjA/d=1/ed=1/dg=2/br=1/rs=ACT90oFAXoTUP5s_Oprq_alxmLzD4OwMeg/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;hLUtwc:KB8OKd;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (421)
[0203/163043.059:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0203/163043.059:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0203/163043.078:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0203/163043.122:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 27 ms
[0203/163043.138:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0203/163043.138:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0203/163043.138:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0203/163043.200:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 37 ms
[0203/163043.215:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0203/163043.215:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0203/163043.325:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 60 ms
[0203/163043.330:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0203/163043.469:INFO:CONSOLE(421)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.4-wbcMM-7bI.O/am=AAAAAAAAAAAAAAAAAAAAAAAgAAAAQAINhEMANkAAAAAwQAIEACIYA4hCgAiAARCCgIeyAQAATEBgCUwAKQQmAQBAE1AFEAAAAAAAgGCAGEDgAQEAAOgAgALAAAQBCoAAAAAA5AEIDmCQggAAAAAAAAAAAAACSBCECxIoCCAAAAAAAAAAAAAAkEoTFYYB/d=1/ed=1/dg=2/br=1/rs=ACT90oHKIv4QYyUhDr3siFwFRVdBT6dkHA/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;hLUtwc:KB8OKd;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (421)
[0203/163048.895:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0203/163048.895:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0207/123535.212:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0207/123535.212:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0207/123535.275:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 26 ms
[0207/123535.291:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0207/123535.291:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0207/123535.291:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0207/123535.338:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 27 ms
[0207/123535.354:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0207/123535.354:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0207/123535.354:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0207/123535.463:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 80 ms
[0207/123535.470:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0207/123535.608:INFO:CONSOLE(421)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.EwKHZUL6au4.O/am=AAAAAAAAAAAAAAAAAAAAAAAgAAAAQAINhEMANkAAAAAwQAIEACIYA4hCABEAAyAEAQ9lAwAAMAGBJTABpBCYBAAATUAVQAAAAAAAAIIBYgCBBwQAAKADAAoAAxAEKAACAAAAkAcgOIBBCgIAAAAAAAAAAAAIICkQLkigIIAAAAAAAAAAAAAAQCpNVBgG/d=1/ed=1/dg=2/br=1/rs=ACT90oGyvMOoDRe0ZyU4zB7S9EIFVbigiQ/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;hLUtwc:KB8OKd;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (421)
[0207/123539.320:ERROR:CONSOLE(1)] "Request Autofill.enable failed. {"code":-32601,"message":"'Autofill.enable' wasn't found"}", source: devtools://devtools/core/protocol_client/protocol_client.js (1)
[0208/092718.330:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0208/092718.346:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0208/092718.423:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 39 ms
[0208/092718.423:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0208/092718.423:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0208/092718.423:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0208/092718.454:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 18 ms
[0208/092718.473:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0208/092718.473:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0208/092718.473:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0208/092718.564:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 63 ms
[0208/092718.570:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0208/092718.571:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0208/092718.662:INFO:CONSOLE(410)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.HVb3Hhad5dQ.O/am=AAAAAAAAAAAAAAAAAAAAAAAgAAAAQAINhEMANkAAAAAwQAIEACIYA4hCABEAAxCCgIeyAQCYgMASmABSCEwCAIAmoAogAAAAAAAAwQAxgMADAgAA0AGAAsAABAEKgAAAAADkAQgOYJCCAAAAAAAAAAAAAAJIEIQLEigIIAAAAAAAAAAAAACQShMVhgE/d=1/ed=1/dg=2/br=1/rs=ACT90oEzYziGVBf0VIFbCd3R4jNLlyqKug/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;hLUtwc:KB8OKd;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (410)
[0208/092721.522:ERROR:interface_endpoint_client.cc(702)] Message 0 rejected by interface blink.mojom.WidgetHost
[0208/092721.747:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0208/092721.752:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0208/092806.223:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0208/092806.223:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0217/094212.103:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0217/094212.103:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 1 time(s)
[0217/094212.151:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 23 ms
[0217/094212.166:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0217/094212.166:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0217/094212.166:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 2 time(s)
[0217/094212.216:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 20 ms
[0217/094212.216:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0217/094212.226:ERROR:gpu_process_host.cc(992)] GPU process exited unexpectedly: exit_code=-2147483645
[0217/094212.226:WARNING:gpu_process_host.cc(1362)] The GPU process has crashed 3 time(s)
[0217/094212.306:WARNING:gpu_process_host.cc(1015)] Reinitialized the GPU process after a crash. The reported initialization time was 60 ms
[0217/094212.314:ERROR:command_buffer_proxy_impl.cc(131)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[0217/094212.453:INFO:CONSOLE(407)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.Xjz3UAwUEWA.O/am=AAAAAAAAAAAAAAAAAAAAAABAAAAAgBBoIBwCsAECAAAAAwkgAAjBCiAKAUIAGIAgCPBQNiAAExBYAhNACoFJAABoAqgCCAAAAAAAQGCAGEDgAQEAgOgAgALAAIIAJUAAAAAA8gAEBxikIAAAAAAAAAAAAIAAJAjCBQkUBBAAAAAAAAAAAAAASKWJCsM/d=1/ed=1/dg=2/br=1/rs=ACT90oGRK1SkBm1xtjsvhMA4xUYY1mTKIw/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;Dkk6ge:wJqrrd;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;HqeXPd:cmbnH;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (407)
[0217/094240.396:INFO:CONSOLE(407)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.Xjz3UAwUEWA.O/am=AAAAAAAAAAAAAAAAAAAAAABAAAAAgBBoIBwCsAECAAAAAwkgAAjBCiAKAUIAGIAgCPBQNiAAExBYAhNACoFJAABoAqgCCAAAAAAAQGCAGEDgAQEAgOgAgALAAIIAJUAAAAAA8gAEBxikIAAAAAAAAAAAAIAAJAjCBQkUBBAAAAAAAAAAAAAASKWJCsM/d=1/ed=1/dg=2/br=1/rs=ACT90oGRK1SkBm1xtjsvhMA4xUYY1mTKIw/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;Dkk6ge:wJqrrd;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;HqeXPd:cmbnH;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (407)
[0217/094242.781:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0217/094242.783:ERROR:gles2_cmd_decoder_passthrough.cc(946)] ContextResult::kFatalFailure: fail_if_major_perf_caveat + swiftshader
[0217/094247.964:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0217/094247.964:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0220/184254.854:ERROR:gpu_process_host.cc(989)] GPU process exited unexpectedly: exit_code=-2147483645
[0220/184254.854:WARNING:gpu_process_host.cc(1360)] The GPU process has crashed 1 time(s)
[0220/184254.960:WARNING:gpu_process_host.cc(1011)] Reinitialized the GPU process after a crash. The reported initialization time was 17 ms
[0220/184254.976:ERROR:gpu_process_host.cc(989)] GPU process exited unexpectedly: exit_code=-2147483645
[0220/184254.976:WARNING:gpu_process_host.cc(1360)] The GPU process has crashed 2 time(s)
[0220/184255.053:WARNING:gpu_process_host.cc(1011)] Reinitialized the GPU process after a crash. The reported initialization time was 18 ms
[0220/184255.054:ERROR:gpu_process_host.cc(989)] GPU process exited unexpectedly: exit_code=-2147483645
[0220/184255.054:WARNING:gpu_process_host.cc(1360)] The GPU process has crashed 3 time(s)
[0220/184255.210:WARNING:gpu_process_host.cc(1011)] Reinitialized the GPU process after a crash. The reported initialization time was 130 ms
[0220/184256.017:ERROR:interface_endpoint_client.cc(707)] Message 0 rejected by interface blink.mojom.WidgetHost
[0220/184256.375:INFO:CONSOLE(407)] "Permissions policy violation: unload is not allowed in this document.", source: https://www.google.com/xjs/_/js/k=xjs.hd.en.Xjz3UAwUEWA.O/am=AAAAAAAAAAAAAAAAAAAAAABAAAAAgBBoIBwCsAECAAAAAwkgAAjBCiAKAUIAGIAgCPBQNgAAExBYAhNACoFJAABogqgCCAAAAAAAQGCAGEDgAQEAAOgAgALAAIIAJUAAAAAA8gAEBxikIAAAAAAAAAAAAIAAJAjCBQkUBBAAAAAAAAAAAAAASKWJCsM/d=1/ed=1/dg=2/br=1/rs=ACT90oEUIw5rqzX71MMAC5o5Aft4udMHtg/ee=AfeaP:TkrAjf;Afksuc:wMx0R;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CxXAWb:YyRLvc;DULqB:RKfG5c;Dkk6ge:wJqrrd;DpcR3d:zL72xf;EABSZ:MXZt9d;ESrPQc:mNTJvc;EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;Erl4fe:FloWmf,FloWmf;F9mqte:UoRcbe;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;G6wU6e:hezEbd;GleZL:J1A7Od;HMDDWe:G8QUdb;HqeXPd:cmbnH;IBADCc:RYquRb;IoGlCf:b5lhvb;IsdWVc:qzxzOb;JXS8fb:Qj0suc;JbMT3:M25sS;JsbNhc:Xd8iUd;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KeeMUb:HiPxjc;KpRAue:Tia57b;LBgRLc:XVMNvd;LEikZe:byfTOb,lsjVmc;LsNahb:ucGLNb;Me32dd:MEeYgc;NPKaK:PVlQOd;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;Oj465e:KG2eXe,KG2eXe;OohIYe:mpEAQb;Pjplud:EEDORb,PoEs9b;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RDNBlf:zPRCJb;SLtqO:Kh1xYe;SMDL4c:fTfGO,pnvXVc;SNUn3:ZwDk9d,x8cHvb;ShpF6e:N0pvGc;TxfV6d:YORN0b;U96pRd:FsR04;UDrY1c:eps46d;UVmjEd:EesRsb;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VsAqSb:PGf2Re;VxQ32b:k0XsBb;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;XUezZ:sa7lqb;YV5bee:IvPZ6d;ZMvdv:PHFPjb;ZWEUA:afR4Cf;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aZ61od:arTwJ;bFZ6gf:RsDQqe;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;daB6be:lMxGPd;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eO3lse:nFClrf;fWLTFc:TVBJbf;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:cEt90b;hK67qb:QWEO5b;heHB1:sFczq;hjRo6e:F62sG;iFQyKf:QIhFr,vfuNJf;imqimf:jKGL2e;io8t5d:sgY6Zb;jY0zg:Q6tNgc;k2Qxcb:XY51pe;kCQyJ:ueyPK;kMFpHd:OTA3Ae;kbAm9d:MkHyGd;lkq0A:JyBE3e;nAFL3:NTMZac,s39S4;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO,pnvXVc;oUlnpc:RagDlc;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:j9Yuyc;pXdRYb:JKoKVe;pj82le:mg5CW;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rQSrae:C6D5Fc;sP4Vbe:VwDzFe;sTsDMc:kHVSUb;tH4IIe:Ymry6;tosKvd:ZCqP3;trZL0b:qY8PFe;uY49fb:COQbmf;uuQkY:u2V3ud;vGrMZ:lPJJ0c;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:TtcOte;wV5Pjc:L8KGxe;whEZac:F4AmNb;xBbsrc:NEW1Qc;yGxLoc:FmAr0c;yxTchf:KUM7Z;z97YGf:oug9te;zOsCQe:Ko78Df;zaIgPb:Qtpxbd/m=cdos,hsm,jsa,mb4ZUb,d,csi,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl (407)
[0220/184305.701:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,5]
[0220/184305.794:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184305.916:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,5]
[0220/184305.916:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,5]
[0220/184305.916:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,5]
[0220/184305.917:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,5]
[0220/184306.062:INFO:CONSOLE(5138)] "LegacyDataMixin will be applied to all legacy elements.
Set `_legacyUndefinedCheck: true` on element class to enable.", source: https://www.youtube.com/s/desktop/09f82e1d/jsbin/desktop_polymer.vflset/desktop_polymer.js (5138)
[0220/184308.442:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184308.889:INFO:CONSOLE(0)] "requestStorageAccessFor: Permission denied.", source: https://www.youtube.com/ (0)
[0220/184308.890:INFO:CONSOLE(0)] "requestStorageAccessFor: Permission denied.", source: https://www.youtube.com/ (0)
[0220/184308.890:INFO:CONSOLE(0)] "requestStorageAccessFor: Permission denied.", source: https://www.youtube.com/ (0)
[0220/184308.945:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184309.198:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,14]
[0220/184309.253:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184309.372:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,14]
[0220/184309.373:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,14]
[0220/184309.373:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,14]
[0220/184309.373:WARNING:browser_info.cc(328)] Returning a speculative frame for [11,14]
[0220/184309.659:INFO:CONSOLE(5142)] "LegacyDataMixin will be applied to all legacy elements.
Set `_legacyUndefinedCheck: true` on element class to enable.", source: https://www.youtube.com/s/desktop/87423d78/jsbin/desktop_polymer.vflset/desktop_polymer.js (5142)
[0220/184311.059:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184311.416:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/ (0)
[0220/184313.355:WARNING:browser_info.cc(328)] Returning a speculative frame for [12,7]
[0220/184313.360:WARNING:browser_info.cc(328)] Returning a speculative frame for [12,7]
[0220/184313.361:WARNING:browser_info.cc(328)] Returning a speculative frame for [12,7]
[0220/184313.361:WARNING:browser_info.cc(328)] Returning a speculative frame for [12,7]
[0220/184313.362:WARNING:browser_info.cc(328)] Returning a speculative frame for [12,7]
[0220/184313.942:INFO:CONSOLE(0)] "Third-party cookie will be blocked. Learn more in the Issues tab.", source: https://www.youtube.com/watch?v=B0qAKvjH2kg (0)
[0220/184314.471:INFO:CONSOLE(3044)] "LegacyDataMixin will be applied to all legacy elements.
Set `_legacyUndefinedCheck: true` on element class to enable.", source: https://www.youtube.com/s/desktop/87423d78/jsbin/live_chat_polymer.vflset/live_chat_polymer.js (3044)
[0220/184315.684:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.
[0220/184315.684:WARNING:sqlite_persistent_store_backend_base.cc(197)] Failed to post task from FlushAndNotifyInBackground@net\extras\sqlite\sqlite_persistent_store_backend_base.cc:246 to client_task_runner_.

View File

@ -15,7 +15,7 @@ object MiniBrowserFrm: TMiniBrowserFrm
OnDestroy = FormDestroy
OnShow = FormShow
Position = poScreenCenter
LCLVersion = '3.0.0.3'
LCLVersion = '3.2.0.0'
object Splitter1: TSplitter
Left = 1179
Height = 663

View File

@ -11,21 +11,24 @@ uses
uCEFWinControl, uCEFChromiumEvents;
const
MINIBROWSER_SHOWDEVTOOLS = WM_APP + $101;
MINIBROWSER_HIDEDEVTOOLS = WM_APP + $102;
MINIBROWSER_COPYHTML = WM_APP + $103;
MINIBROWSER_SHOWRESPONSE = WM_APP + $104;
MINIBROWSER_COPYFRAMEIDS = WM_APP + $105;
MINIBROWSER_COPYFRAMENAMES = WM_APP + $106;
MINIBROWSER_SAVEPREFERENCES = WM_APP + $107;
MINIBROWSER_COPYALLTEXT = WM_APP + $108;
MINIBROWSER_TAKESNAPSHOT = WM_APP + $109;
MINIBROWSER_SHOWNAVIGATION = WM_APP + $10A;
MINIBROWSER_COOKIESFLUSHED = WM_APP + $10B;
MINIBROWSER_PDFPRINT_END = WM_APP + $10C;
MINIBROWSER_PREFS_AVLBL = WM_APP + $10D;
MINIBROWSER_DTDATA_AVLBL = WM_APP + $10E;
MINIBROWSER_MEDIAACCESSRQST = WM_APP + $10F;
MINIBROWSER_SHOWDEVTOOLS = WM_APP + $101;
MINIBROWSER_HIDEDEVTOOLS = WM_APP + $102;
MINIBROWSER_COPYHTML = WM_APP + $103;
MINIBROWSER_SHOWRESPONSE = WM_APP + $104;
MINIBROWSER_COPYFRAMEIDS = WM_APP + $105;
MINIBROWSER_COPYFRAMENAMES = WM_APP + $106;
MINIBROWSER_SAVEPREFERENCES = WM_APP + $107;
MINIBROWSER_COPYALLTEXT = WM_APP + $108;
MINIBROWSER_TAKESNAPSHOT = WM_APP + $109;
MINIBROWSER_SHOWNAVIGATION = WM_APP + $10A;
MINIBROWSER_COOKIESFLUSHED = WM_APP + $10B;
MINIBROWSER_PDFPRINT_END = WM_APP + $10C;
MINIBROWSER_PREFS_AVLBL = WM_APP + $10D;
MINIBROWSER_DTDATA_AVLBL = WM_APP + $10E;
MINIBROWSER_SHOWFILEDLG = WM_APP + $10F;
MINIBROWSER_SELECTCERT = WM_APP + $110;
MINIBROWSER_MEDIAACCESSRQST = WM_APP + $111;
MINIBROWSER_SHOWBROWSERINFO = WM_APP + $112;
MINIBROWSER_HOMEPAGE = 'https://www.google.com';
@ -46,12 +49,21 @@ const
MINIBROWSER_CONTEXTMENU_INCZOOM = MENU_ID_USER_FIRST + 15;
MINIBROWSER_CONTEXTMENU_DECZOOM = MENU_ID_USER_FIRST + 16;
MINIBROWSER_CONTEXTMENU_RESETZOOM = MENU_ID_USER_FIRST + 17;
MINIBROWSER_CONTEXTMENU_EXITFULLSCREEN = MENU_ID_USER_FIRST + 18;
MINIBROWSER_CONTEXTMENU_EXITFULLSCREEN = MENU_ID_USER_FIRST + 18;
MINIBROWSER_CONTEXTMENU_BROWSERINFO = MENU_ID_USER_FIRST + 19;
DEVTOOLS_SCREENSHOT_MSGID = 1;
DEVTOOLS_MHTML_MSGID = 2;
DEVTOOLS_SCREENSHOT_MSGID = 1001;
DEVTOOLS_MHTML_MSGID = 1002;
DEVTOOLS_BROWSERINFO_MSGID = 1003;
type
type
TBrowserInfo = record
protocolVersion : string;
product : string;
revision : string;
userAgent : string;
jsVersion : string;
end;
{ TMiniBrowserFrm }
@ -229,7 +241,8 @@ type
FNavigation : TStringList;
FShutdownReason : string;
FHasShutdownReason : boolean;
FAllowDownloads : boolean;
FAllowDownloads : boolean;
FBrowserInfo : TBrowserInfo;
FMediaAccessCallback : ICefMediaAccessCallback;
FRequestingOrigin : string;
@ -250,6 +263,7 @@ type
procedure HandleKeyUp(const aMsg : TMsg; var aHandled : boolean);
procedure HandleKeyDown(const aMsg : TMsg; var aHandled : boolean);
procedure HandleBrowserInfo(const aResult : ICefValue);
procedure InspectRequest(const aRequest : ICefRequest);
procedure InspectResponse(const aResponse : ICefResponse);
@ -270,7 +284,8 @@ type
procedure PrintPDFEndMsg(var aMessage : TMessage); message MINIBROWSER_PDFPRINT_END;
procedure PreferencesAvailableMsg(var aMessage : TMessage); message MINIBROWSER_PREFS_AVLBL;
procedure DevToolsDataAvailableMsg(var aMessage : TMessage); message MINIBROWSER_DTDATA_AVLBL;
procedure MediaAccessRequestMsg(var aMessage : TMessage); message MINIBROWSER_MEDIAACCESSRQST;
procedure MediaAccessRequestMsg(var aMessage : TMessage); message MINIBROWSER_MEDIAACCESSRQST;
procedure ShowBrowserInfoMsg(var aMessage : TMessage); message MINIBROWSER_SHOWBROWSERINFO;
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP;
@ -476,7 +491,8 @@ begin
model.AddSeparator;
model.AddItem(MINIBROWSER_CONTEXTMENU_JSWRITEDOC, 'Modify HTML document');
model.AddItem(MINIBROWSER_CONTEXTMENU_JSPRINTDOC, 'Print using Javascript');
model.AddItem(MINIBROWSER_CONTEXTMENU_SHOWRESPONSE, 'Show server headers');
model.AddItem(MINIBROWSER_CONTEXTMENU_SHOWRESPONSE, 'Show server headers');
model.AddItem(MINIBROWSER_CONTEXTMENU_BROWSERINFO, 'Browser information...');
if DevTools.Visible then
model.AddItem(MINIBROWSER_CONTEXTMENU_HIDEDEVTOOLS, 'Hide DevTools')
@ -592,6 +608,26 @@ begin
PostMessage(Handle, CEF_DESTROY, 0, 0);
aAction := cbaDelay;
end;
end;
procedure TMiniBrowserFrm.HandleBrowserInfo(const aResult : ICefValue);
var
TempDict : ICefDictionaryValue;
begin
if (aResult = nil) then exit;
TempDict := aResult.GetDictionary;
if (TempDict <> nil) and (TempDict.GetSize > 0) then
begin
FBrowserInfo.protocolVersion := TempDict.GetValue('protocolVersion').GetString;
FBrowserInfo.product := TempDict.GetValue('product').GetString;
FBrowserInfo.revision := TempDict.GetValue('revision').GetString;
FBrowserInfo.userAgent := TempDict.GetValue('userAgent').GetString;
FBrowserInfo.jsVersion := TempDict.GetValue('jsVersion').GetString;
PostMessage(Handle, MINIBROWSER_SHOWBROWSERINFO, 0, 0);
end;
end;
procedure TMiniBrowserFrm.Chromium1ContextMenuCommand(Sender: TObject;
@ -674,7 +710,13 @@ begin
Chromium1.ResetZoomCommand;
MINIBROWSER_CONTEXTMENU_EXITFULLSCREEN :
Chromium1.ExitFullscreen(True);
Chromium1.ExitFullscreen(True);
MINIBROWSER_CONTEXTMENU_BROWSERINFO :
begin
FPendingMsgID := DEVTOOLS_BROWSERINFO_MSGID;
Chromium1.ExecuteDevToolsMethod(0, 'Browser.getVersion', nil);
end;
end
else
case commandId of
@ -1154,19 +1196,28 @@ begin
if success then
begin
TempResult := 1;
FDevToolsMsgValue := '';
if (result <> nil) then
if (FPendingMsgID = DEVTOOLS_BROWSERINFO_MSGID) then
begin
TempDict := result.GetDictionary;
HandleBrowserInfo(result);
FPendingMsgID := 0;
exit;
end
else
begin
TempResult := 1;
FDevToolsMsgValue := '';
if (TempDict <> nil) and (TempDict.GetSize > 0) then
if (result <> nil) then
begin
TempValue := TempDict.GetValue('data');
TempDict := result.GetDictionary;
if (TempValue <> nil) and (TempValue.GetType = VTYPE_STRING) then
FDevToolsMsgValue := TempValue.GetString;
if (TempDict <> nil) and (TempDict.GetSize > 0) then
begin
TempValue := TempDict.GetValue('data');
if (TempValue <> nil) and (TempValue.GetType = VTYPE_STRING) then
FDevToolsMsgValue := TempValue.GetString;
end;
end;
end;
end
@ -1317,6 +1368,20 @@ begin
TempPermissions.Free;
FMediaAccessCallback := nil;
end;
end;
procedure TMiniBrowserFrm.ShowBrowserInfoMsg(var aMessage : TMessage);
var
TempInfo : string;
begin
TempInfo := 'protocolVersion: ' + FBrowserInfo.protocolVersion + CRLF +
'product: ' + FBrowserInfo.product + CRLF +
'revision: ' + FBrowserInfo.revision + CRLF +
'userAgent: ' + FBrowserInfo.userAgent + CRLF +
'jsVersion: ' + FBrowserInfo.jsVersion + CRLF + CRLF +
'GetDefaultCEFUserAgent: ' + GetDefaultCEFUserAgent;
showmessage(TempInfo);
end;
procedure TMiniBrowserFrm.Chromium1DownloadImageFinished(Sender: TObject;

View File

@ -747,6 +747,17 @@ function CefZipDirectory(const srcDir, destFile: ustring; includeHiddenFiles: Bo
/// background.
/// </summary>
procedure CefLoadCRLSetsFile(const path : ustring);
/// <summary>
/// <para>Return a user-agent string.</para>
/// <para>This function tries to replicate the BuildUserAgentFromOSAndProduct
/// function in Chromium but it's safer to call the 'Browser.getVersion'
/// DevTools method.</para>
/// </summary>
/// <remarks>
/// <para><see href="https://source.chromium.org/chromium/chromium/src/+/main:content/common/user_agent.cc">Chromium source file: content/common/user_agent.cc (BuildUserAgentFromOSAndProduct)</see></para>
/// <para><see href="https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion">See the Browser.getVersion article.</see></para>
/// </remarks>
function GetDefaultCEFUserAgent : string;
{$IFDEF MSWINDOWS}
function CefIsKeyDown(aWparam : WPARAM) : boolean;
@ -760,9 +771,10 @@ procedure DropEffectToDragOperation(aEffect : Longint; var aAllowedOps : TCefDra
procedure DragOperationToDropEffect(const aDragOperations : TCefDragOperations; var aEffect: Longint);
function GetWindowsMajorMinorVersion(var wMajorVersion, wMinorVersion : DWORD) : boolean;
function GetIsWow64Process2(var aProcessMachine, aNativeMachine : WORD) : boolean;
function IsWowProcess: boolean;
function RunningWindows10OrNewer : boolean;
function GetDPIForHandle(aHandle : HWND; var aDPI : UINT) : boolean;
function GetDefaultCEFUserAgent : string;
{$IFDEF DELPHI14_UP}
function TouchPointToPoint(aHandle : HWND; const TouchPoint: TTouchInput): TPoint;
function GetDigitizerStatus(var aDigitizerStatus : TDigitizerStatus; aDPI : cardinal = 0) : boolean;
@ -2759,6 +2771,45 @@ begin
end;
end;
function GetDefaultCEFUserAgent : string;
var
TempOS : string;
TempMajorVer, TempMinorVer : DWORD;
begin
// See GetUserAgentPlatform() and BuildOSCpuInfo() in
// https://source.chromium.org/chromium/chromium/src/+/main:content/common/user_agent.cc
{$IFDEF MSWINDOWS}
TempOS := 'Windows NT ';
if GetWindowsMajorMinorVersion(TempMajorVer, TempMinorVer) then
TempOS := TempOS + inttostr(TempMajorVer) + '.' + inttostr(TempMinorVer)
else
TempOS := TempOS + '10.0'; // oldest Windows version supported by Chromium
if IsWowProcess then
TempOS := TempOS + '; WOW64'
else
{$IFDEF TARGET_64BITS}
TempOS := TempOS + '; Win64; x64';
{$ELSE}
TempOS := TempOS + '; Win32; x86';
{$ENDIF};
{$ENDIF}
{$IFDEF MACOSX}
TempOS := 'Macintosh; Intel Mac OS X 10_15_7';
{$ENDIF}
{$IFDEF LINUX}
TempOS := 'X11; Linux ' + {$IFDEF TARGET_64BITS}'x86_64'{$ELSE}'i686'{$ENDIF};
{$ENDIF}
Result := 'Mozilla/5.0' + ' (' + TempOS + ') ' +
'AppleWebKit/537.36 (KHTML, like Gecko) ' +
'Chrome/' + inttostr(CEF_CHROMEELF_VERSION_MAJOR) + '.0.0.0 ' +
'Safari/537.36';
end;
{$IFDEF MSWINDOWS}
function CefIsKeyDown(aWparam : WPARAM) : boolean;
begin
@ -2960,6 +3011,51 @@ begin
end;
end;
function GetIsWow64Process2(var aProcessMachine, aNativeMachine : WORD) : boolean;
type
TIsWow64Process2Func = function(hProcess: THandle; ProcessMachine, NativeMachine : PWORD): BOOL; stdcall;
var
TempHandle : THandle;
TempIsWow64Process2Func : TIsWow64Process2Func;
begin
Result := False;
aProcessMachine := 0;
aNativeMachine := 0;
try
TempHandle := LoadLibrary(Kernel32DLL);
if (TempHandle <> 0) then
try
{$IFDEF FPC}Pointer({$ENDIF}TempIsWow64Process2Func{$IFDEF FPC}){$ENDIF} := GetProcAddress(TempHandle, 'IsWow64Process2');
Result := assigned(TempIsWow64Process2Func) and
TempIsWow64Process2Func(GetCurrentProcess(), @aProcessMachine, @aNativeMachine);
finally
FreeLibrary(TempHandle);
end;
except
on e : exception do
if CustomExceptionHandler('GetIsWow64Process2', e) then raise;
end;
end;
function IsWowProcess: boolean;
const
IMAGE_FILE_MACHINE_I386 = $014C;
IMAGE_FILE_MACHINE_AMD64 = $8664;
var
Temp64bit : BOOL;
TempProcessMachine, TempNativeMachine : WORD;
begin
if GetIsWow64Process2(TempProcessMachine, TempNativeMachine) then
Result := (TempProcessMachine = IMAGE_FILE_MACHINE_I386) and
(TempNativeMachine = IMAGE_FILE_MACHINE_AMD64)
else
Result := ProcessUnderWow64(GetCurrentProcess(), @Temp64bit) and
Temp64bit;
end;
// GetDpiForWindow is only available in Windows 10 (version 1607) or newer
function GetDPIForHandle(aHandle : HWND; var aDPI : UINT) : boolean;
type
@ -3001,36 +3097,6 @@ begin
Result := GetWindowsMajorMinorVersion(TempMajorVer, TempMinorVer) and (TempMajorVer >= 10);
end;
function GetDefaultCEFUserAgent : string;
var
TempOS, TempChromiumVersion : string;
TempMajorVer, TempMinorVer : DWORD;
Temp64bit : BOOL;
begin
if GetWindowsMajorMinorVersion(TempMajorVer, TempMinorVer) and
(TempMajorVer >= 4) then
TempOS := 'Windows NT'
else
TempOS := 'Windows';
TempOS := TempOS + ' ' + inttostr(TempMajorVer) + '.' + inttostr(TempMinorVer);
if ProcessUnderWow64(GetCurrentProcess(), @Temp64bit) and Temp64bit then
TempOS := TempOS + '; WOW64';
if (GlobalCEFApp <> nil) then
TempChromiumVersion := GlobalCEFApp.ChromeVersion
else
TempChromiumVersion := inttostr(CEF_CHROMEELF_VERSION_MAJOR) + '.' +
inttostr(CEF_CHROMEELF_VERSION_MINOR) + '.' +
inttostr(CEF_CHROMEELF_VERSION_RELEASE) + '.' +
inttostr(CEF_CHROMEELF_VERSION_BUILD);
Result := 'Mozilla/5.0' + ' (' + TempOS + ') ' +
'AppleWebKit/537.36 (KHTML, like Gecko) ' +
'Chrome/' + TempChromiumVersion + ' Safari/537.36';
end;
{$IFDEF DELPHI14_UP}
function TouchPointToPoint(aHandle : HWND; const TouchPoint: TTouchInput): TPoint;
begin

View File

@ -2,7 +2,7 @@
"UpdateLazPackages" : [
{
"ForceNotify" : true,
"InternalVersion" : 571,
"InternalVersion" : 572,
"Name" : "cef4delphi_lazarus.lpk",
"Version" : "122.1.10"
}