Files
webview_cef/README.md
2022-11-29 17:51:40 +08:00

3.7 KiB
Raw Blame History

webview_cef Pub.dev likes Pub.dev points latest version Platform

Flutter Desktop webview backed by CEF (Chromium Embedded Framework). *Still working in progress

requirements

  • Windows 7+
  • macOS 10.12+

How To Use

Windows

Inside your application folder, you need to add two lines in your windows\runner\main.cpp.Because of Chromium multi process arch.

#include "webview_cef/webview_cef_plugin_c_api.h"

int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,
                      _In_ wchar_t *command_line, _In_ int show_command) {
  //start cef deamon processes. MUST CALL FIRST
  initCEFProcesses();

When first time building the project, a prebuilt cef bin package (200MB, link in release) will be downloaded automatically, hence you may wait for a longer time if you are building the project for the first time.

macOS

1.Download prebuilt cef bundles from arm64 or intel depends on your target machine arch.

Note: You can also download universal binary for build an mac-universal app if you want and don't mind the app size. See #30. Thanks to @okiabrian123.

2.Unzip the archieve and put all files into macos/third/cef.

3.Run the example app.

[HELP WANTED!] Finding a more elegant way to distribute the prebuilt package.

Notice: currently the project haven't enable multi process mode because of debug convenience. You may want enable multi process mode by changing the implementation and built your own helper bundle. (Finding a more elegant way in the future)

todos (PR welcome!)

  • macos support
  • Linux support
  • multi instance support
  • IME support
  • mouse events support
  • js bridge support
  • release to pub
  • trackpad support (flutter 3.3)
  • better macos binary distribution
  • easier way to integrate macos helper bundles(multi process)
  • devTools support

demo

Windows

demo_compressed image image image

macOS

image image image

thanks

This project inspired by https://github.com/jnschulze/flutter-webview-windows