Make the window assume a centred position on macOS

Windows and Linux applications are more likely to not bother,
and their desktop environments don't place windows right in the corner,
which is what happens with GTK+/macOS.
This commit is contained in:
Přemysl Eric Janouch 2022-07-23 21:22:39 +02:00
parent 4b4e24e71a
commit 31f428f4ec
Signed by: p
GPG Key ID: A0420B94F92B9493
1 changed files with 10 additions and 0 deletions

10
fiv.c
View File

@ -18,6 +18,9 @@
#include <glib.h>
#include <glib/gstdio.h>
#include <gtk/gtk.h>
#ifdef GDK_WINDOWING_QUARTZ
#include <gdk/gdkquartz.h>
#endif // GDK_WINDOWING_QUARTZ
#include <errno.h>
#include <math.h>
@ -2009,6 +2012,13 @@ main(int argc, char *argv[])
unit = MAX(200, unit);
gtk_window_set_default_size(GTK_WINDOW(g.window), 4 * unit, 3 * unit);
#ifdef GDK_WINDOWING_QUARTZ
// Otherwise the window simply opens at (0, 0),
// while other macOS applications are more likely to start centered.
if (GDK_IS_QUARTZ_DISPLAY(display))
gtk_window_set_position(GTK_WINDOW(g.window), GTK_WIN_POS_CENTER);
#endif // GDK_WINDOWING_QUARTZ
// XXX: The widget wants to read the display's profile. The realize is ugly.
gtk_widget_realize(g.view);