ui/gtk/window.c

branch
newapi
changeset 302
b00cbbfeec7a
parent 297
a73c60adf188
child 306
d02e1149cdb9
--- a/ui/gtk/window.c	Wed Sep 18 22:54:50 2024 +0200
+++ b/ui/gtk/window.c	Sun Sep 22 16:39:10 2024 +0200
@@ -72,8 +72,10 @@
 static UiObject* create_window(const char *title, void *window_data, UiBool simple) {
     CxMempool *mp = cxBasicMempoolCreate(256);
     UiObject *obj = cxCalloc(mp->allocator, 1, sizeof(UiObject)); 
-    
-#ifndef UI_GTK2
+   
+#ifdef UI_LIBADWAITA
+    obj->widget = adw_application_window_new(ui_get_application());
+#elif !defined(UI_GTK2)
     obj->widget = gtk_application_window_new(ui_get_application());
 #else
     obj->widget = gtk_window_new(GTK_WINDOW_TOPLEVEL);
@@ -108,7 +110,14 @@
             obj);
     
     GtkWidget *vbox = ui_gtk_vbox_new(0);
-#if GTK_MAJOR_VERSION >= 4
+#ifdef UI_LIBADWAITA
+    GtkWidget *toolbar_view = adw_toolbar_view_new();
+    adw_application_window_set_content(ADW_APPLICATION_WINDOW(obj->widget), toolbar_view);
+    adw_toolbar_view_set_content(ADW_TOOLBAR_VIEW(toolbar_view), vbox);
+    
+    GtkWidget *headerbar = adw_header_bar_new();
+    adw_toolbar_view_add_top_bar(ADW_TOOLBAR_VIEW(toolbar_view), headerbar);
+#elif GTK_MAJOR_VERSION >= 4
     WINDOW_SET_CONTENT(obj->widget, vbox);
 #else
     gtk_container_add(GTK_CONTAINER(obj->widget), vbox);

mercurial