Commit Graph

425 Commits

Author SHA1 Message Date
Salvador Díaz Fau
2838b7964e Fixed CookieVisitor demo issue with cookies not written
Added New Delphi and Lazarus versions and MacOS info to Readme.md.
2021-02-27 12:55:29 +01:00
martin
34a3e69107 Add Headers to all units 2021-02-23 17:37:39 +01:00
martin
24d5b6b461 Ensure all units have {$I cef.inc} 2021-02-21 22:57:18 +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
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
bab194d3c0 Add Win32 PE flag 2021-02-19 02:40:37 +01:00
martin
14bfc9c832 Sample app for Mac only 2021-02-19 02:04:33 +01:00
martin
a822fc23d5 Url Dropdown
Fix Caption for ExternalPumpBrowser
Fix Windows IFDEF
2021-02-19 02:04:33 +01:00
martin
81328d5242 ExternalPumpBrowser, fix unit-name 2021-02-18 16:01:32 +01:00
martin
685304d4ac Added WM_ENTERMENULOOP 2021-02-18 00:57:30 +01:00
martin
ed42096f1e Fix ExternalPumpBrowser, Stop Scheduler. 2021-02-18 00:12:37 +01:00
martin
ac1e26f86c AppHelper on Windows: Do not create a console window 2021-02-17 22:51:05 +01:00
martin
55f5eec85c Fixes for ExternalPumpBrowser 2021-02-17 22:51:00 +01:00
martin
088d20ff01 Allow Win/Linux to use external helper 2021-02-16 23:12:07 +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
567f85058b Remove lps files and add *.lps to .gitignore. LPS are local session files meant to represent the state of the IDE, not the project. 2021-02-16 23:12:07 +01:00
martin
15d6336dd0 Make same app run on Win, Linux and Mac / Folder Lazarus_any_OS 2021-02-16 23:12:06 +01:00
martin
5cc767d430 Rename to ExternalPumpBrowser / Clean up 2021-02-16 18:10:01 +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
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
e7e7cb80c1 Linux : Implemented printing in MiniBrowser demo (issue #337) 2021-02-08 18:39:07 +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
30bda87db4 helper scripts for mac app helpers 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
martin
4bbf59fbb3 Rename SubProcess to AppHelper 2021-02-07 17:18:29 +01:00
Salvador Diaz Fau
6d5b74070b Added tab navigation controls to the FMXTabbedOSRBrowser demo 2021-02-05 17:35:53 +01:00
Salvador Diaz Fau
04a6f9d66d Added tab navigation controls to the FMXTabbedBrowser demo 2021-02-05 17:25:37 +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
12cce1cbba Fixed TChromium.OnPreKeyEvent and TChromium.OnKeyEvent event parameters in demos
Added a workaround for a focus issue in popup windows handled by CEF in the MiniBrowser demo.
2021-02-03 10:30:07 +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
cd46aa097d Fixed incorrect coordinates using the wheel button in OSR demos for Windows (VCL). 2021-01-29 18:27:10 +01:00
Salvador Diaz Fau
e3fdfe8a45 Call ConnectKeyPressReleaseEvents only once in FMXExternalPumpBrowser2 2021-01-29 16:38: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
e2ffd8519c Added initialization workaround for Linux demos thanks to Christoph Schneider 2021-01-25 18:24:22 +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
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
1fca56f298 Added a preliminary version of the OSRExternalPumpBrowser for Linux 2021-01-11 17:43:28 +01:00
Salvador Diaz Fau
e19ecae2b5 Fixed wrong DevTools method result handling in MiniBrowser demo 2021-01-07 11:12:20 +01:00
Salvador Diaz Fau
cfe43f040f Added links to CEF binaries for ARM CPUs
Removed custom paths in the TinyBrowser2 demo for Linux.
Added list of operating systems used to test the demos to the readme file.
2021-01-06 18:56:05 +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
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
6eddf7b5da Added workaround for focus issues in Linux
Added workaround for the CEF issue #2026 :
https://bitbucket.org/chromiumembedded/cef/issues/2026/multiple-major-keyboard-focus-issues-on
2021-01-02 16:40: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
f21d1f66ba Added the ExternalPumpBrowser demo for Lazarus in Linux 2020-12-31 21:04:00 +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
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
28958bf7b6 Added custom popup windows to the TabbedBrowser2 demo 2020-12-17 16:28:38 +01:00
Salvador Diaz Fau
8f88a31440 Fixed an issue copying the bitmap in uCEFBrowserThread
Added more checks to uCEFBrowserThread
2020-12-14 13:27:19 +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
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
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
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
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 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
e36cd5e8c7 Added a "Show DevTools" context menu option to the DOMVisitor demo
- Updated the DOMVisitor demo for Lazarus.
- Replaced some local variable types from string to ustring to fix some issues in Delpi XE2.
2020-08-22 12:29:11 +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
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
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
df55d013fb Fix rendering of example background for OSR transparency
3dd2e2902a
2020-07-21 13:05:08 +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
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
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
Salvador Díaz Fau
e82dc1a080 Added TChromium.ClearCache procedure
Added TChromium.Offline property.
Added a menu option to the MiniBrowser demo to clear the cache with the DevTools methods.
Added a menu option to the MiniBrowser demo to take a screenshot with the DevTools methods.
2020-07-02 12:49:21 +02:00
Salvador Díaz Fau
43e0c80431 Update to CEF 83.4.2 2020-07-02 10:50:52 +02:00
Salvador Díaz Fau
acf085ddea Added a context menu option to set an input value in the DOMVisitor demo. 2020-06-30 09:58:37 +02:00
Salvador Díaz Fau
ae83f0e54c Added a new option to visit the DOM using JavaScript in DOMVisitor demo
- Removed the calls to ICefDomNode.GetValue and ICefDomNode.SetValue in DOMVisitor demo due to a CEF issue.
- Added more code comments to the DOMVisitor demo.
2020-06-28 14:51:16 +02:00
Salvador Díaz Fau
b142412810 Fix for issue #248 made by pmccarenko 2020-06-25 17:31:09 +02:00
Salvador Díaz Fau
b4945628c5 Added a context menu option to delete the cache at runtime to the CookieVisitor demo 2020-06-24 12:29:13 +02:00
Salvador Díaz Fau
7e3e8bad24 Update to CEF 83.4.0 2020-06-21 21:27:55 +02:00
Salvador Díaz Fau
32ea814c9c Added the "console trick" to the DOMVisitor demo
The "console trick" is an alternative method to send text information from the render process to the browser process without a JavaScript extension.
2020-06-20 11:39:05 +02:00
Salvador Díaz Fau
c44023cb21 Update to CEF 83.3.9 2020-05-23 15:00:44 +02:00
Salvador Díaz Fau
58d988487b New TinyBrowser demo using the Views Framework 2020-05-16 13:01:59 +02:00
Salvador Díaz Fau
7798f97872 Update to CEF 81.3.10
- Add missing "messages" unit to the uses section in FMXTabbedOSRBrowser demo.
2020-05-14 18:54:42 +02:00
Salvador Díaz Fau
dbab922640 Update to CEF 81.3.5
- Added TChromium.IndexOfBrowserID
- Fixed TChromium.GetBrowserById
- Added "Find text..." menu option to the MiniBrowser demo
2020-05-12 11:30:19 +02:00
Salvador Díaz Fau
132edb2e88 Added Multi-Browser mode to TChromium
MiniBrowser demo now has the Multi-browser mode enabled.
Added TChromium.MultiBrowserMode
Added TChromium.BrowserById
Added TChromium.BrowserCount
Added TChromium.BrowserIdByIndex
Added TChromium.SelectBrowser
Added TChromium.CloseAllBrowsers
Added TChromium.TryCloseBrowser
2020-05-07 11:46:48 +02:00
Salvador Díaz Fau
318318c85c Added Views Framework support #244
Added ToolBoxBrowser2 demo
Added TCEFBrowserViewComponent.
Added TCEFLabelButtonComponent.
Added TCEFMenuButtonComponent.
Added TCEFPanelComponent.
Added TCEFTextfieldComponent.
Added TCEFScrollViewComponent.
Added TCEFWindowComponent.
2020-05-05 18:10:33 +02:00
Salvador Díaz Fau
ccdb41b357 Update to CEF 81.3.1 2020-04-30 17:28:41 +02:00
Salvador Díaz Fau
ee831e85bd Update to CEF 81.2.25
- Work in progress : Added many more units, classes and types to support the Views Framewrok.
2020-04-29 19:14:44 +02:00
Salvador Díaz Fau
17c82fa24c Fix TAB key handling in FMX demos in OSR mode 2020-04-25 16:26:49 +02:00
Salvador Díaz Fau
a34ae44cb0 Update to CEF 81.2.24
- Added code comments to the MediaRouter demo
- Added a Lazarus version of the MediaRouter demo
2020-04-25 15:57:11 +02:00
Salvador Díaz Fau
22b59eae73 Fixed accented characters issue in web pages 2020-04-23 12:32:52 +02:00
Salvador Díaz Fau
dce556683a Update to CEF 81.2.19 2020-04-21 13:27:34 +02:00
Salvador Díaz Fau
62c310a7b9 Update to CEF 81.2.17
- New MediaRouter demo (still buggy)
- Removed TCEFMediaObserverComponent and merged all the ICefMediaObserver methods and events into TChromium.
- Fixed some Media Observer parameters
- Added TChromium.RequestContext
- Added TChromium.MediaRouter
- Added TChromium.MediaObserver
- Added TChromium.Registration
2020-04-19 22:47:20 +02:00