#include "flutter/shell/platform/linux/fl_window_state_monitor.h"
#include "flutter/shell/platform/linux/fl_binary_messenger_private.h"
#include "flutter/shell/platform/linux/public/flutter_linux/fl_string_codec.h"
#include "flutter/shell/platform/linux/testing/fl_mock_binary_messenger.h"
#include "flutter/shell/platform/linux/testing/mock_window.h"
#include "gtest/gtest.h"
Go to the source code of this file.
|
| TEST (FlWindowStateMonitorTest, GainFocus) |
|
| TEST (FlWindowStateMonitorTest, LoseFocus) |
|
| TEST (FlWindowStateMonitorTest, EnterIconified) |
|
| TEST (FlWindowStateMonitorTest, LeaveIconified) |
|
| TEST (FlWindowStateMonitorTest, LeaveIconifiedFocused) |
|
| TEST (FlWindowStateMonitorTest, EnterWithdrawn) |
|
| TEST (FlWindowStateMonitorTest, LeaveWithdrawn) |
|
| TEST (FlWindowStateMonitorTest, LeaveWithdrawnFocused) |
|
◆ TEST() [1/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
EnterIconified |
|
|
) |
| |
Definition at line 83 of file fl_window_state_monitor_test.cc.
84 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
85 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
89 EXPECT_CALL(mock_window, gdk_window_get_state)
90 .WillOnce(::testing::Return(
static_cast<GdkWindowState
>(0)));
91 gboolean called =
TRUE;
92 fl_mock_binary_messenger_set_string_message_channel(
93 messenger,
"flutter/lifecycle",
94 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
96 gboolean* called =
static_cast<gboolean*
>(
user_data);
103 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
104 gtk_widget_show(GTK_WIDGET(window));
105 g_autoptr(FlWindowStateMonitor) monitor =
109 .window_state = {.new_window_state = GDK_WINDOW_STATE_ICONIFIED}};
111 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [2/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
EnterWithdrawn |
|
|
) |
| |
Definition at line 187 of file fl_window_state_monitor_test.cc.
188 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
189 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
191 gtk_init(0,
nullptr);
193 EXPECT_CALL(mock_window, gdk_window_get_state)
194 .WillOnce(::testing::Return(
static_cast<GdkWindowState
>(0)));
195 gboolean called =
TRUE;
196 fl_mock_binary_messenger_set_string_message_channel(
197 messenger,
"flutter/lifecycle",
198 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
200 gboolean* called =
static_cast<gboolean*
>(
user_data);
207 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
208 gtk_widget_show(GTK_WIDGET(window));
209 g_autoptr(FlWindowStateMonitor) monitor =
213 .window_state = {.new_window_state = GDK_WINDOW_STATE_WITHDRAWN}};
215 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [3/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
GainFocus |
|
|
) |
| |
Definition at line 13 of file fl_window_state_monitor_test.cc.
14 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
15 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
19 EXPECT_CALL(mock_window, gdk_window_get_state)
20 .WillOnce(::testing::Return(
static_cast<GdkWindowState
>(0)));
22 gboolean called =
TRUE;
23 fl_mock_binary_messenger_set_string_message_channel(
24 messenger,
"flutter/lifecycle",
25 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
27 gboolean* called =
static_cast<gboolean*
>(
user_data);
34 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
35 gtk_widget_show(GTK_WIDGET(window));
36 g_autoptr(FlWindowStateMonitor) monitor =
40 .window_state = {.new_window_state = GDK_WINDOW_STATE_FOCUSED}};
42 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [4/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
LeaveIconified |
|
|
) |
| |
Definition at line 117 of file fl_window_state_monitor_test.cc.
118 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
119 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
121 gtk_init(0,
nullptr);
123 EXPECT_CALL(mock_window, gdk_window_get_state)
124 .WillOnce(::testing::Return(GDK_WINDOW_STATE_ICONIFIED));
125 gboolean called =
TRUE;
126 fl_mock_binary_messenger_set_string_message_channel(
127 messenger,
"flutter/lifecycle",
128 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
130 gboolean* called =
static_cast<gboolean*
>(
user_data);
133 "AppLifecycleState.inactive");
138 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
139 gtk_widget_show(GTK_WIDGET(window));
140 g_autoptr(FlWindowStateMonitor) monitor =
144 .window_state = {.new_window_state =
static_cast<GdkWindowState
>(0)}};
146 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [5/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
LeaveIconifiedFocused |
|
|
) |
| |
Definition at line 152 of file fl_window_state_monitor_test.cc.
153 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
154 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
156 gtk_init(0,
nullptr);
158 EXPECT_CALL(mock_window, gdk_window_get_state)
159 .WillOnce(::testing::Return(GDK_WINDOW_STATE_ICONIFIED));
160 gboolean called =
TRUE;
161 fl_mock_binary_messenger_set_string_message_channel(
162 messenger,
"flutter/lifecycle",
163 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
165 gboolean* called =
static_cast<gboolean*
>(
user_data);
172 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
173 gtk_widget_show(GTK_WIDGET(window));
174 g_autoptr(FlWindowStateMonitor) monitor =
178 .window_state = {.new_window_state =
static_cast<GdkWindowState
>(
179 GDK_WINDOW_STATE_FOCUSED)}};
181 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [6/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
LeaveWithdrawn |
|
|
) |
| |
Definition at line 221 of file fl_window_state_monitor_test.cc.
222 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
223 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
225 gtk_init(0,
nullptr);
227 EXPECT_CALL(mock_window, gdk_window_get_state)
228 .WillOnce(::testing::Return(GDK_WINDOW_STATE_WITHDRAWN));
229 gboolean called =
TRUE;
230 fl_mock_binary_messenger_set_string_message_channel(
231 messenger,
"flutter/lifecycle",
232 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
234 gboolean* called =
static_cast<gboolean*
>(
user_data);
237 "AppLifecycleState.inactive");
242 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
243 gtk_widget_show(GTK_WIDGET(window));
244 g_autoptr(FlWindowStateMonitor) monitor =
248 .window_state = {.new_window_state =
static_cast<GdkWindowState
>(0)}};
250 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [7/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
LeaveWithdrawnFocused |
|
|
) |
| |
Definition at line 256 of file fl_window_state_monitor_test.cc.
257 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
258 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
260 gtk_init(0,
nullptr);
262 EXPECT_CALL(mock_window, gdk_window_get_state)
263 .WillOnce(::testing::Return(GDK_WINDOW_STATE_WITHDRAWN));
264 gboolean called =
TRUE;
265 fl_mock_binary_messenger_set_string_message_channel(
266 messenger,
"flutter/lifecycle",
267 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
269 gboolean* called =
static_cast<gboolean*
>(
user_data);
276 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
277 gtk_widget_show(GTK_WIDGET(window));
278 g_autoptr(FlWindowStateMonitor) monitor =
282 .window_state = {.new_window_state =
static_cast<GdkWindowState
>(
283 GDK_WINDOW_STATE_FOCUSED)}};
285 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.
◆ TEST() [8/8]
TEST |
( |
FlWindowStateMonitorTest |
, |
|
|
LoseFocus |
|
|
) |
| |
Definition at line 48 of file fl_window_state_monitor_test.cc.
49 g_autoptr(FlMockBinaryMessenger) messenger = fl_mock_binary_messenger_new();
50 ::testing::NiceMock<flutter::testing::MockWindow> mock_window;
54 EXPECT_CALL(mock_window, gdk_window_get_state)
55 .WillOnce(::testing::Return(GDK_WINDOW_STATE_FOCUSED));
56 gboolean called =
TRUE;
57 fl_mock_binary_messenger_set_string_message_channel(
58 messenger,
"flutter/lifecycle",
59 [](FlMockBinaryMessenger* messenger, GTask* task,
FlValue* message,
61 gboolean* called =
static_cast<gboolean*
>(
user_data);
64 "AppLifecycleState.inactive");
69 GtkWindow* window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
70 gtk_widget_show(GTK_WIDGET(window));
71 g_autoptr(FlWindowStateMonitor) monitor =
75 .window_state = {.new_window_state =
static_cast<GdkWindowState
>(0)}};
77 g_signal_emit_by_name(window,
"window-state-event", &event, &handled);
References fl_binary_messenger_shutdown(), fl_value_get_string(), fl_value_new_string(), fl_window_state_monitor_new(), TRUE, and user_data.