CEF4Delphi/demos/Lazarus_Mac/ExternalPumpBrowser
2024-09-09 13:16:03 +02:00
..
00-Delete.bat Sample app for Mac only 2021-02-19 02:04:33 +01:00
create_mac_helper.sh CrAppProtocol for cocoa / Add Cocoa CloseChildHandle 2021-03-01 01:18:02 +01:00
ExternalPumpBrowser.ico Sample app for Mac only 2021-02-19 02:04:33 +01:00
ExternalPumpBrowser.lpi Fixed issue #527 : Demo ExternalPumpBrowser Helper (GPU) crash on MacOs 14 Sonoma - Lazarus x86_64-darwin 2024-09-09 13:16:03 +02:00
ExternalPumpBrowser.lpr Fixed issue #527 : Demo ExternalPumpBrowser Helper (GPU) crash on MacOs 14 Sonoma - Lazarus x86_64-darwin 2024-09-09 13:16:03 +02:00
ExternalPumpBrowser.res Sample app for Mac only 2021-02-19 02:04:33 +01:00
globalcefapplication.pas Fixed issue #527 : Demo ExternalPumpBrowser Helper (GPU) crash on MacOs 14 Sonoma - Lazarus x86_64-darwin 2024-09-09 13:16:03 +02:00
README.txt Fixed issue #527 : Demo ExternalPumpBrowser Helper (GPU) crash on MacOs 14 Sonoma - Lazarus x86_64-darwin 2024-09-09 13:16:03 +02:00
uExternalPumpBrowser.lfm Use the main cef.inc file in all demos 2023-11-27 18:21:07 +01:00
uExternalPumpBrowser.pas Update to CEF 128.4.8 2024-09-03 17:26:03 +02:00

ExternalPumpBrowser

# ABOUT

This example uses 
  TCEFLinkedWindowParent
  TCEFWorkScheduler 

TCEFWorkScheduler feeds the CEF messageloop by calling DoMessageLoopWork(). On Mac this is currently the only way to run the CEF messageloop.


# SETUP

1) Go to "project options" and create the "App Bundle"
2) Download the CEF framework and place the content of the "Release" folder into ExternalPumpBrowser.app/Contents/Frameworks/Chromium Embedded Framework.framework
You should have:
  Chromium Embedded Framework
  Libraries/*
  Resources/*
3) Open project "AppHelper" (from demos/Lazarus_any_OS ), create App Bundle and compile the AppHelper.
   Run demos/Lazarus_Mac/ExternalPumpBrowser/create_mac_helper.sh
4) Open project ExternalPumpBrowser, compile and run

CEF4Delphi may report an invalid macOS version. In that case, use the -WMxx.y custom option to set a higher minimum macOS version for that project.

You might also need to sign the application with an "Outgoing network socket" entitlement in the helpers.

Set LSUIElement=1 in the info.plist to hide the helpers in the dock.