| 1234567891011121314151617181920212223242526272829 |
- #include "flutter_window.h"
- #include "flutter/generated_plugin_registrant.h"
- FlutterWindow::FlutterWindow(RunLoop* run_loop,
- const flutter::DartProject& project)
- : run_loop_(run_loop), project_(project) {}
- FlutterWindow::~FlutterWindow() {}
- void FlutterWindow::OnCreate() {
- Win32Window::OnCreate();
- // The size here is arbitrary since SetChildContent will resize it.
- flutter_controller_ =
- std::make_unique<flutter::FlutterViewController>(100, 100, project_);
- RegisterPlugins(flutter_controller_.get());
- run_loop_->RegisterFlutterInstance(flutter_controller_.get());
- SetChildContent(flutter_controller_->view()->GetNativeWindow());
- }
- void FlutterWindow::OnDestroy() {
- if (flutter_controller_) {
- run_loop_->UnregisterFlutterInstance(flutter_controller_.get());
- flutter_controller_ = nullptr;
- }
- Win32Window::OnDestroy();
- }
|