Flutter Linux Embedder
fl_window_monitor.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef FLUTTER_SHELL_PLATFORM_LINUX_FL_WINDOW_MONITOR_H_
6 #define FLUTTER_SHELL_PLATFORM_LINUX_FL_WINDOW_MONITOR_H_
7 
8 #include <gtk/gtk.h>
9 
10 G_BEGIN_DECLS
11 
12 G_DECLARE_FINAL_TYPE(FlWindowMonitor,
13  fl_window_monitor,
14  FL,
15  WINDOW_MONITOR,
16  GObject);
17 
18 /**
19  * fl_window_monitor_new:
20  * @window: the window being monitored.
21  * @on_configure: the function to call when the window changes size, position or
22  * stacking.
23  * @on_state_changed: the function to call when the window state changes.
24  * @on_is_active_notify: the function to call when the is-active property
25  * changes.
26  * @on_close: the function to call when the user requests the window to be
27  * closed.
28  * @on_destroy: the function to call when the window is destroyed.
29  *
30  * Helper class to allow the Flutter engine to monitor a GtkWindow using FFI.
31  * Callbacks are called in the isolate this class was created with.
32  *
33  * Returns: a new #FlWindowMonitor.
34  */
35 FlWindowMonitor* fl_window_monitor_new(GtkWindow* window,
36  void (*on_configure)(void),
37  void (*on_state_changed)(void),
38  void (*on_is_active_notify)(void),
39  void (*on_title_notify)(void),
40  void (*on_close)(void),
41  void (*on_destroy)(void));
42 
43 G_END_DECLS
44 
45 #endif // FLUTTER_SHELL_PLATFORM_LINUX_FL_WINDOW_MONITOR_H_
G_BEGIN_DECLS G_DECLARE_FINAL_TYPE(FlWindowMonitor, fl_window_monitor, FL, WINDOW_MONITOR, GObject)
FlWindowMonitor * fl_window_monitor_new(GtkWindow *window, void(*on_configure)(void), void(*on_state_changed)(void), void(*on_is_active_notify)(void), void(*on_title_notify)(void), void(*on_close)(void), void(*on_destroy)(void))