Flutter Desktop webview backed by CEF (Chromium Embedded Framework). *Still working in progress
- Windows 7+
- macOS 10.12+
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.
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 to build an mac universal app. 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)
- 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
This project inspired by https://github.com/jnschulze/flutter-webview-windows