You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			34 lines
		
	
	
		
			928 B
		
	
	
	
		
			C
		
	
		
		
			
		
	
	
			34 lines
		
	
	
		
			928 B
		
	
	
	
		
			C
		
	
| 
								 
											10 months ago
										 
									 | 
							
								#ifndef RUNNER_FLUTTER_WINDOW_H_
							 | 
						||
| 
								 | 
							
								#define RUNNER_FLUTTER_WINDOW_H_
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <flutter/dart_project.h>
							 | 
						||
| 
								 | 
							
								#include <flutter/flutter_view_controller.h>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <memory>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include "win32_window.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// A window that does nothing but host a Flutter view.
							 | 
						||
| 
								 | 
							
								class FlutterWindow : public Win32Window {
							 | 
						||
| 
								 | 
							
								 public:
							 | 
						||
| 
								 | 
							
								  // Creates a new FlutterWindow hosting a Flutter view running |project|.
							 | 
						||
| 
								 | 
							
								  explicit FlutterWindow(const flutter::DartProject& project);
							 | 
						||
| 
								 | 
							
								  virtual ~FlutterWindow();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								 protected:
							 | 
						||
| 
								 | 
							
								  // Win32Window:
							 | 
						||
| 
								 | 
							
								  bool OnCreate() override;
							 | 
						||
| 
								 | 
							
								  void OnDestroy() override;
							 | 
						||
| 
								 | 
							
								  LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam,
							 | 
						||
| 
								 | 
							
								                         LPARAM const lparam) noexcept override;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								 private:
							 | 
						||
| 
								 | 
							
								  // The project to run.
							 | 
						||
| 
								 | 
							
								  flutter::DartProject project_;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // The Flutter instance hosted by this window.
							 | 
						||
| 
								 | 
							
								  std::unique_ptr<flutter::FlutterViewController> flutter_controller_;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif  // RUNNER_FLUTTER_WINDOW_H_
							 |