ui/gtk/toolkit.h

branch
newapi
changeset 302
b00cbbfeec7a
parent 300
2f924f7ca901
child 305
98470af75dcf
--- a/ui/gtk/toolkit.h	Wed Sep 18 22:54:50 2024 +0200
+++ b/ui/gtk/toolkit.h	Sun Sep 22 16:39:10 2024 +0200
@@ -38,7 +38,21 @@
 #endif
     
 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
+
+  
+#if GLIB_MAJOR_VERSION * 1000 + GLIB_MINOR_VERSION > 74
+#define UI_G_APPLICATION_FLAGS G_APPLICATION_DEFAULT_FLAGS
+#else
+#define UI_G_APPLICATION_FLAGS G_APPLICATION_FLAGS_NONE
+#endif
     
+#ifdef UI_LIBADWAITA
+#define UI_APPLICATION AdwApplication*
+#define UI_APPLICATION_NEW(id) adw_application_new(id, UI_G_APPLICATION_FLAGS)
+#elif GTK_MAJOR_VERSION >= 3  
+#define UI_APPLICATION GtkApplication*
+#define UI_APPLICATION_NEW(id) gtk_application_new(id, UI_G_APPLICATION_FLAGS)
+#endif
     
 #if GTK_MAJOR_VERSION >= 4
 #define WINDOW_SHOW(window) gtk_window_present(GTK_WINDOW(window))
@@ -87,7 +101,7 @@
 typedef enum UiOrientation UiOrientation;
 enum UiOrientation { UI_HORIZONTAL = 0, UI_VERTICAL };
 
-#ifndef UI_GTK2
+#ifdef UI_APPLICATION
 void ui_app_quit();
 GtkApplication* ui_get_application();
 #endif

mercurial