1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-01-03 10:15:38 +02:00
Commit Graph

528 Commits

Author SHA1 Message Date
Salvador Diaz Fau
92da537bf7 Fix Lazarus build issue in Windows
Fix Delphi build issue in MacOS
Added TCefApplicationCore.CheckCEFResources
Added TCefApplicationCore.CheckCEFDLL
Set TCefApplicationCore.CheckCEFFiles to false by default in MacOS
2021-02-21 18:41:25 +01:00
Salvador Diaz Fau
51d8c20f63 Fixed UTF8 string conversion in SimpleBrowser for Linux
- Removed "cmem" and "interfaces" from the TinyBrowser2 demo for Linux.
- Simplified the code of the TinyBrowser2 demo for Linux.
- Added the workaround for the CEF focus issue to TChromiumWindow in Linux.
- Set the result type of GetChildWindowHandle to LclType.THandle in FPC for TCEFWinControl, TCEFLinkedWindowParent and TChromiumWindow.
2021-02-21 11:11:08 +01:00
Salvador Diaz Fau
21ae7cec31 Update CEF_CHROMEELF_VERSION_BUILD 2021-02-20 17:30:59 +01:00
Salvador Diaz Fau
9d17a50210 Update to CEF 88.2.9
Added the SimpleBrowser demo for Linux.
Added Linux support to TChromiumWindow.
Removed unused code and added more code comments to the SimpleBrowser demos for Windows.
2021-02-20 17:14:15 +01:00
martin
4a49ab6755 Add option UseMockKeyChain for Mac. Prevents requiring permissions, but stops encrypting Cookies. 2021-02-16 23:12:07 +01:00
martin
91f0c8d740 Fix: Set LocalesDirPath and ResourcesDirPath from FrameworkDirPath, if not set explicitly 2021-02-16 21:15:22 +01:00
martin
cd73dd8b8d Use MultiExeProcessing on Mac 2021-02-16 18:10:01 +01:00
Salvador Diaz Fau
ee94b7d2cc Added TBufferPanel.UpdateDeviceScaleFactor
Fixed issue #339 : SimpleOSRBrowser crashes when the mouse is moved over the browser using CEF 88
2021-02-16 12:47:22 +01:00
Salvador Diaz Fau
bdaf4554e6 Update to CEF 88.2.8
Fixed issue #339 : SimpleOSRBrowser crashes when the mouse is moved over the browser using CEF 88
2021-02-16 12:45:44 +01:00
Salvador Diaz Fau
7de0ea6a81 Update to CEF 88.2.7 2021-02-13 14:39:56 +01:00
Salvador Diaz Fau
086042c0d9 Update to CEF 88.2.6 2021-02-12 16:45:54 +01:00
Salvador Diaz Fau
aaf512a419 Fixed TFMXWorkScheduler.QueueThread_OnPulse. Only build it when USEQUEUETHREAD is defined. 2021-02-11 21:07:22 +01:00
Salvador Diaz Fau
002a21e6d6 Update to CEF 88.2.5
- Added TCEFWorkSchedulerQueueThread as an experimental way to handle the external message pump events for all platforms.
- Fixed backwards compatibility issues with Delphi 7.
2021-02-11 19:52:23 +01:00
Salvador Diaz Fau
e45839bb90 Added TBufferPanel.OnMouseEnter and TBufferPanel.OnMouseLeave on Lazarus
Fixed building in Windows
Issue #337 : First implementation. It's incomplete.
2021-02-08 10:28:36 +01:00
martin
03e917f85c Set LocalesDirPath and ResourcesDirPath from FrameworkDirPath, if not set explicitly 2021-02-07 22:10:08 +01:00
martin
bfff18e7b5 fix compile. If IFDEF does not apply, an empty var block causes a compile error on fpc 2021-02-07 22:10:08 +01:00
martin
7c94142d25 fix compile on Fpc/Mac. Handle is PtrUInt. IFDEF MACOS only matches Delphi 2021-02-07 22:10:08 +01:00
martin
06bcf00dd7 Allow AppHelper to read FrameworkDirPath from argv 2021-02-07 22:10:08 +01:00
Salvador Diaz Fau
8f1b88bac9 Update to CEF 88.2.4
Fixed issue #335
2021-02-06 17:38:44 +01:00
Salvador Diaz Fau
5c93e5c49a Update to CEF 88.2.1
- Added  xlib error handlers to the "interface" unit in the Lazarus demos for Linux.
- Added the "broker" CEF process type.
- Add the Zygote process to all the MustCreate* functions in TCefApplicationCore
2021-02-04 16:59:08 +01:00
Salvador Diaz Fau
e0396ac3a5 Improved MacOS support thanks to martin_fr
Reorganized demos by OS
2021-01-31 16:53:07 +01:00
Salvador Diaz Fau
77a5766367 Added keyboard support to the FMXExternalPumpBrowser2 demo in Linux thanks to Christoph Schneider
Moved most of the Linux constants, types and functions to new units.
2021-01-28 19:29:04 +01:00
Salvador Diaz Fau
8d5797b01f Fixed the TCefWindowHandle, TCefCursorHandle and TCefEventHandle declarations 2021-01-26 18:26:24 +01:00
Salvador Diaz Fau
ee71ccb87e Update to CEF 88.1.6 2021-01-24 18:18:27 +01:00
Salvador Diaz Fau
4cc230fea8 Changed the GlobalCEFApp.EnableSpeechInput default value to false
The Speech API requires building the CEF binaries with your own Google API keys and the service is not free.
http://www.chromium.org/developers/how-tos/api-keys
https://cloud.google.com/speech-to-text/pricing
2021-01-24 15:28:38 +01:00
Salvador Diaz Fau
47fb09e887 Fixed black screen issue in OSR mode thanks to "Student"
- Fixed issues adding or replacing command line switches with hyphenated and non-hyphenated keys in TCEFApplicationCore.
- Remove the values from the "enable-features" and "enable-blink-features" when that value is in the "disable-features" or "disable-blink-features" in the command line switches.
2021-01-21 19:32:43 +01:00
Salvador Diaz Fau
151b6fe3da Update to CEF 88.1.4
Added GlobalCEFApp.DisableChromeLoginPrompt
Removed GlobalCEFApp.CustomFlashPath
Removed GlobalCEFApp.FlashEnabled
Removed TChromiumCore.RunAllFlashInAllowMode
2021-01-21 15:46:35 +01:00
Salvador Diaz Fau
afa8418821 Initialization fixes for some Linux demos
Added TCEFWorkScheduler.CreateDelayed
Added TFMXWorkScheduler.CreateDelayed
Added an event to wait until the context is initialized in FMXExternalPumpBrowser2 and  OSRExternalPumpBrowser for Linux
2021-01-20 18:57:20 +01:00
Salvador Diaz Fau
65733bc784 Added FMXExternalPumpBrowser2 demo for Linux thanks to Christoph Schneider
Fixed OutputDebugMessage function in Linux
Added Linux support to TCEFWorkScheduler
2021-01-19 19:14:25 +01:00
Salvador Diaz Fau
5de491ed03 Fixed the FixCefTime function 2021-01-18 11:48:23 +01:00
Salvador Diaz Fau
6ede7fa51a Fixed cookie date conversion issue 2021-01-18 11:12:01 +01:00
Salvador Diaz Fau
908017b2f5 Added new DevTools events to TChromium and missing drag adn drop properties to TCefWinControl
Added TChromium.OnDevToolsRawMessage
Added TChromium.OnDevToolsMethodRawResult
Added TChromium.OnDevToolsRawEvent
Added TCefWinControl.DragKind
Added TCefWinControl.DragCursor
Added TCefWinControl.DragMode
Added TCefWinControl.OnDragDrop
Added TCefWinControl.OnDragOver
Added TCefWinControl.OnStartDrag
Added TCefWinControl.OnEndDrag
2021-01-16 14:35:01 +01:00
Salvador Diaz Fau
b4a2cee7f5 Fixed building errors and warnings on FMX for MacOS and Linux thanks to Christoph Schneider 2021-01-14 16:03:04 +01:00
Salvador Diaz Fau
739b510526 Added more FPC conditionals in Linux code 2021-01-12 20:32:28 +01:00
Salvador Diaz Fau
123f45ea08 Fixed OSRExternalPumpBrowser in Linux
Fixed SimpleOSRBrowser in Linux
Added the TBufferPanel.CopyOriginalBuffer property
Added the TBufferPanel.MustInitBuffer property
Added the TBufferPanel.OrigBuffer property
Added the TBufferPanel.OrigBufferWidth property
Added the TBufferPanel.OrigBufferHeight property
Renamed TBufferPanel.PopupBuffer to TBufferPanel.OrigPopupBuffer
Renamed TBufferPanel.PopupBufferWidth to TBufferPanel.OrigPopupBufferWidth
Renamed TBufferPanel.PopupBufferHeight to TBufferPanel.OrigPopupBufferHeight
Renamed TBufferPanel.PopupBufferBits to TBufferPanel.OrigPopupBufferBits
Renamed TBufferPanel.PopupScanlineSize to TBufferPanel.OrigPopupScanlineSize
Added the TBufferPanel.UpdateOrigBufferDimensions function
Added the TBufferPanel.UpdateOrigPopupBufferDimensions function
2021-01-12 17:06:31 +01:00
Salvador Diaz Fau
62753fa7f9 Update to CEF 87.1.13
Fixed some FMX compilation issues in Linux thanks to Christoph Schneider.
2021-01-08 16:01:06 +01:00
Salvador Diaz Fau
76d296871f Added the MiniBrowser demo for Linux
Fixed the Linux version of WindowInfoAsPopUp.
2021-01-06 12:18:14 +01:00
Salvador Diaz Fau
83cf65a8ec Workaround for issue #333
Disabled range checking in some units when using old Delphi versions to avoid internal compiler errors.
2021-01-05 11:44:41 +01:00
Salvador Diaz Fau
bef1626f31 Added the PopupBrowser2 demo for Linux
Set the CEFLinkedWindowParent1.TabStop to true to fix a focus issue
Moved TCEFLinkedWindowParent.UpdateSize to the public section
2021-01-04 18:39:15 +01:00
Salvador Diaz Fau
187a4d825c Added TabbedBrowser2 demo for Linux
Update the TCEFBitmapBitBuffer size instead of destrying and creating it when the browser is resized.
2021-01-03 18:36:17 +01:00
Salvador Diaz Fau
c3def9de88 Added workaround for issue #330 2021-01-03 13:06:12 +01:00
Salvador Diaz Fau
e3f1a0902d Added Printing support in Linux
Added the GlobalCEFApp.DisableZygote property
Added the GlobalCEFApp.OnPrintStart event.
Added the GlobalCEFApp.OnPrintSettings event.
Added the GlobalCEFApp.OnPrintDialog event.
Added the GlobalCEFApp.OnPrintJob event.
Added the GlobalCEFApp.OnPrintReset event.
Added the GlobalCEFApp.OnGetPDFPaperSize event.
2021-01-01 17:51:09 +01:00
Salvador Diaz Fau
1d984307ad Updated copyright year 2021-01-01 11:11:30 +01:00
Salvador Diaz Fau
5fd5dc79f0 Added a Linux version of the SubProcess demo for Lazarus
GlobalCEFApp now uses the custom "ShowX11Message" procedure to show messages when the WidgetSet is not initialized.
2020-12-31 12:15:10 +01:00
Salvador Diaz Fau
05680d5abc Fixed issue #256
Removed non working Linux demos for now.
2020-12-30 19:40:07 +01:00
Salvador Diaz Fau
e7eae21105 Improved Linux support in Lazarus
- Fixed issue #255
- Changed GlobalCEFApp.DefaultEncoding property type to ustring
- Changed GlobalCEFApp.OverrideSpellCheckLang property type to ustring
2020-12-28 18:11:27 +01:00
Salvador Diaz Fau
7ec49e1f95 Added workaround for the CEF issue #2899
https://bitbucket.org/chromiumembedded/cef/issues/2899/cefsettingsignore_certificate_errors-true
2020-12-21 19:44:10 +01:00
Salvador Diaz Fau
34c2c49034 Added GlobalCEFApp.ForcedDeviceScaleFactor property.
Added TBufferPanel.ForcedDeviceScaleFactor property.
Added TFMXBufferPanel.ForcedDeviceScaleFactor property.
Updated ConsoleBrowser2 and WebpageSnapshot demos to use the new TBufferPanel.ForcedDeviceScaleFactor property.
2020-12-20 12:28:56 +01:00
Salvador Diaz Fau
858f1a1625 Improved Linux support thanks to Christoph Schneider
Added more code comments in the TabbedBrowser2 demo.
Removed FastMM4 from the SimpleOSRBrowser demo.
Modified TCEFWorkScheduler for FPC in Linux.
2020-12-18 16:51:02 +01:00
Salvador Diaz Fau
1299a6f596 Added ConsoleBrowser2 and WebpageSnapshot demos
- Split the Lazarus demos directory into "Lazarus_Windows" and "Lazarus_Linux".
- Added OSRExternalPumpBrowser and TinyBrowser2 demos to "Lazarus_Linux".
- Set TBufferPanel.GetScreenScale as virtual.
- Added DevTools to the SchemeRegistrationBrowser demo.
- Modified the SchemeRegistrationBrowser demo to receive XMLHttpRequest requests from JavaScript.
2020-12-13 18:36:10 +01:00
Salvador Diaz Fau
8f55182540 Update to CEF 87.1.12 2020-12-08 21:35:57 +01:00
Salvador Diaz Fau
1484fdca25 Added TinyBrowser2 demo
- Added an overloaded version of TChromiumCore.CreateBrowser to create popup browser windows in the TinyBrowser2 demo.
- Added more comments in the DOMVisitor demo describing alternative ways to send information between processes.
2020-12-06 12:28:13 +01:00
Salvador Diaz Fau
80b1140db6 Update to CEF 87.1.11
Fixed issue #323 in the CEF code.
2020-11-26 14:42:33 +01:00
Salvador Diaz Fau
073186e71d Added workaround for issue #323
Modified all demos that used the TChromium.OnCursorChange event with the new parameters.
2020-11-22 16:42:52 +01:00
Salvador Diaz Fau
8e7660ccf8 Update to CEF 87.1.6 2020-11-19 18:55:17 +01:00
Salvador Diaz Fau
2f3c23c202 Update to CEF 86.0.24 2020-11-18 12:23:20 +01:00
Salvador Diaz Fau
db361ed6d8 Use the custom conditional compilation directives 2020-11-17 15:09:02 +01:00
Salvador Diaz Fau
3ab78ad28c Delphi 10 Seattle backwards compatibility fix 2020-11-17 14:59:18 +01:00
Salvador Diaz Fau
a4067cf44c Update to CEF 86.0.23 2020-11-11 15:03:59 +01:00
Salvador Diaz Fau
8274424032 Use the TCefCustomRenderProcessHandler.RemoveReferences only in destruction 2020-11-10 15:34:48 +01:00
Salvador Diaz Fau
e72db93dd2 Partial fix for issue #291
- Create the CefApp handlers only when they are needed in SingleProcess mode.
- Added several "RemoveReferences" procedures to disable events when the application is shutting down in the CefApp handlers.
2020-11-10 15:02:49 +01:00
Salvador Diaz Fau
9ac740613c Update to CEF 86.0.21 2020-11-04 14:45:23 +01:00
Salvador Diaz Fau
e601067d01 Update to CEF 86.0.20
Fixed issue #307 TBufferPanel.ScreenScale and GetDeviceScaleFactor return 1 after changing the DPI value while the browser is runninng.
2020-10-31 14:23:06 +01:00
Salvador Diaz Fau
f5bce048ce Update to CEF 86.0.19
Fixed issue #309
2020-10-28 18:49:34 +01:00
Salvador Diaz Fau
8a28f9fea9 Added the GlobalCEFApp.BlinkSettings property 2020-10-25 18:59:09 +01:00
Salvador Diaz Fau
b118999a56 Update to CEF 86.0.18 2020-10-24 12:30:00 +02:00
Salvador Diaz Fau
592818ef30 Update to CEF 86.0.17 2020-10-16 15:27:39 +02:00
Salvador Diaz Fau
fd7645fe2c Update to CEF 86.0.14
Fixed issue #300
2020-10-14 09:56:47 +02:00
Salvador Diaz Fau
d44db3bf2a Added GlobalCEFApp.EnableUsermediaScreenCapturing 2020-10-08 16:41:27 +02:00
Salvador Diaz Fau
1186f0b105 Update to CEF 85.3.12 2020-10-02 14:23:38 +02:00
Salvador Diaz Fau
6e936cf07c Fixed issue #303
- Added TChromiumCore.ReplaceMisspelling
- Added TChromiumCore.AddWordToDictionary
- Added TChromiumCore.OpenerWindowHandle
- Added TChromiumCore.MouseCursorChangeDisabled
- Removed the 'Print to PDF stream...' menu option from the MiniBrowser demo because it's only available in headless chrome.
2020-09-30 12:43:48 +02:00
Salvador Diaz Fau
8af741c3e1 Update to CEF 85.3.11
Added an alternative PrintToPDF menu option to the MiniBrowser demo (not working for now)
2020-09-26 13:08:53 +02:00
Salvador Diaz Fau
d3e68a1d6d Update to CEF 85.3.10 2020-09-23 15:42:47 +02:00
Salvador Díaz Fau
29e5b987f8 Fix for a rare TCustomRequestContextHandler leak in TChromiumCore
- Moved all the code from TChromiumCore.BeforeDestruction to TChromiumCore.Destruction.
- Moved all the HWND fields to the Windows conditional directive section.
2020-09-20 12:07:24 +02:00
Salvador Díaz Fau
d31456f517 Update to CEF 85.3.9 2020-09-16 11:11:45 +02:00
Salvador Díaz Fau
03916e75f4 Added missing "Sender" parameter to all the TChromiumCore events 2020-09-15 16:31:49 +02:00
Salvador Díaz Fau
c7074c102c Update to CEF 85.3.7 2020-09-15 15:47:46 +02:00
Salvador Díaz Fau
a4882558dd Update to CEF 85.3.6
- Fixed issue #301
- Removed workaround for issue #301 in the MiniBrowser demo.
2020-09-12 19:33:05 +02:00
Salvador Díaz Fau
c7d0200657 Update to CEF 85.3.5
- Added the workaround to the issue #301 to the MiniBrowser demo.
2020-09-10 11:21:39 +02:00
Salvador Díaz Fau
d444bb29e1 Update to CEF 85.2.11 2020-08-29 11:48:12 +02:00
Salvador Díaz Fau
cfeee87c30 Added 2 new TChromiumCore properties
Added TChromium.JavascriptEnabled to enable/disable JS at runtime.
Added TChromium.LoadImagesAutomatically to enable/disable image loading at runtime.
2020-08-22 14:56:24 +02:00
Salvador Díaz Fau
3c1dae426c Update to CEF 84.4.1 2020-08-15 12:15:10 +02:00
Salvador Díaz Fau
ce722b81c3 Fixed an interface casting issue in old Delphi versions 2020-08-08 22:06:02 +02:00
Salvador Díaz Fau
64a9eabcaf Added TChromium.NetworkPredictions property
Added TChromium.QuicAllowed property
2020-08-05 16:11:50 +02:00
Salvador Díaz Fau
5430db5601 Update to CEF 84.3.10
Added 2 browser extension demos : HelloWorldExt and PageColorExt
2020-08-04 17:52:09 +02:00
Salvador Díaz Fau
8761ec8749 Added some string lenth checks in TCefApplicationCore.AppendSwitch 2020-07-30 11:01:43 +02:00
Salvador Díaz Fau
b3b9bf809e Update to CEF 84.3.8
Improvements in the command line switches to avoid repetitions and make it easier to remove or modify default switches.
2020-07-30 10:45:12 +02:00
Salvador Díaz Fau
0f0c827b5d Fixed Is32BitProcess hint on Delphi 10.4
Renamed TChromiumCore.ClearDataForOrigin parameter from "aOriginURL" to "aOrigin"
Added some missing cef.inc files to the new demos
2020-07-28 20:04:25 +02:00
Salvador Díaz Fau
6d735203f7 Update to CEF 84.3.7 2020-07-24 11:23:12 +02:00
Salvador Díaz Fau
6f98a74518 Update to CEF 84.3.3 2020-07-22 18:01:03 +02:00
Salvador Díaz Fau
d42b2e68fb Update to CEF 84.2.6
- Fixed TChromium.HyperlinkAuditing default value
- Fixed CheckDLLs function in Linux
- Fixed Delphi 7 backwards compatibility
- Fixed issue #289
2020-07-21 12:41:03 +02:00
Salvador Díaz Fau
dee111279b Update to CEF 84.2.1 2020-07-18 19:12:01 +02:00
Salvador Díaz Fau
dceb2299e3 Moved all JSON functions to the TCEFJson class
- Added TCEFJson.SaveToFile and TCEFJson.LoadFromFile functions
- Added more code comments to DOMVisitor
- Replaced all the code to save the browser preferences in TChromiumCore with the new TCEFJson functions
2020-07-17 12:56:43 +02:00
Salvador Díaz Fau
3246eff9a1 Added context menu option to DOMVisitor to set the value of an INPUT element using the DevTools methods
Added the TCEFJson class
2020-07-16 15:47:27 +02:00
Salvador Díaz Fau
882c79ac1b Update to CEF 83.5.0 2020-07-15 14:56:41 +02:00
Salvador Díaz Fau
51658e03f2 Fixed TChromium.OnDevToolsEvent declaration
Added more parameter checks to CefString.
Added TChromium.DestroyAllHandlersAndObservers which includes DestroyDevToolsMsgObserver to fix issue #288.
2020-07-14 15:50:23 +02:00
Salvador Díaz Fau
5bfeb8de3f Rollback the last fix for issue #288
The last fix sometimes caused an exception while you close the browser.
2020-07-13 15:28:04 +02:00
Salvador Díaz Fau
4be703326c Fixed issue #288
Added Lazarus 2.0.10/FPC 3.2.0 reference to the readme file
2020-07-12 16:54:37 +02:00
Salvador Díaz Fau
59ec2022e5 Added TChromiumCore.ClearDataForOrigin procedure
Added a menu option to the MiniBrowser demo to clear all data from the current URL
2020-07-05 12:56:21 +02:00
Salvador Díaz Fau
d394d41991 Added TChromiumCore.SetUserAgentOverride procedure
Added menu option to change the User Agent string at runtime to the MiniBrowser demo.
2020-07-05 12:06:33 +02:00