diff options
author | P. F. Chimento <philip.chimento@gmail.com> | 2013-04-18 16:34:31 +0200 |
---|---|---|
committer | P. F. Chimento <philip.chimento@gmail.com> | 2013-04-25 10:42:47 +0200 |
commit | 5fb8eb9516b8462f4fa4acc6469cbdb868c97556 (patch) | |
tree | e67261c8e38f31e8afbe8055d00f42d2a3a83cb7 /test/test-window.c | |
parent | c6abea86f4bf5b18b2ea4026968ddc2da2c9134c (diff) |
EosWindow is fullscreen
EosWindow maximizes itself on creation. This code does not enforce
maximization or forbid the window from resizing, since that is the
window manager's job.
[#12]
Diffstat (limited to 'test/test-window.c')
-rw-r--r-- | test/test-window.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test/test-window.c b/test/test-window.c index 831d94c..b08727d 100644 --- a/test/test-window.c +++ b/test/test-window.c @@ -17,8 +17,42 @@ test_assign_application (GApplication *app) gtk_widget_destroy (win); } +test_screen_size (GApplication *app) +{ + GtkWidget *win = eos_window_new (EOS_APPLICATION (app)); + GdkRectangle screen_size, window_size; + GdkScreen *default_screen = gdk_screen_get_default (); + gint monitor = 0; + + /* If more than one monitor, find out which one to use */ + if (gdk_screen_get_n_monitors (default_screen) != 1) + { + GdkWindow *gdkwindow; + + /* Realize the window so that its GdkWindow is not NULL */ + gtk_widget_realize (GTK_WIDGET (win)); + gdkwindow = gtk_widget_get_window (GTK_WIDGET (win)); + monitor = gdk_screen_get_monitor_at_window (default_screen, gdkwindow); + } + + gdk_screen_get_monitor_workarea (default_screen, monitor, &screen_size); + + gtk_widget_show_now (GTK_WIDGET (win)); + + while (gtk_events_pending ()) + gtk_main_iteration (); + + gtk_widget_get_allocation (GTK_WIDGET (win), &window_size); + + g_assert_cmpint (screen_size.width, ==, window_size.width); + g_assert_cmpint (screen_size.height, ==, window_size.height); + + gtk_widget_destroy (win); +} + void add_window_tests (void) { ADD_APP_WINDOW_TEST ("/window/assign-application", test_assign_application); + ADD_APP_WINDOW_TEST ("/window/screen-size", test_screen_size); } |