init splitview paned position (GTK3)

Sun, 07 Dec 2025 20:07:05 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 07 Dec 2025 20:07:05 +0100
changeset 977
006d8f70467e
parent 976
e2763e880938
child 978
71446363dcf9

init splitview paned position (GTK3)

ui/gtk/window.c file | annotate | diff | comparison | revisions
--- a/ui/gtk/window.c	Sun Dec 07 19:20:48 2025 +0100
+++ b/ui/gtk/window.c	Sun Dec 07 20:07:05 2025 +0100
@@ -197,6 +197,21 @@
             obj);
 #endif
     
+    int splitview_pos = 0;
+    if(splitview) {
+        const char *splitview_pos_str = ui_get_property("ui.window.splitview.pos");
+        splitview_pos= splitview_window_default_pos;
+        if(splitview_pos < 0) {
+            splitview_pos = window_width / 2;
+        }
+        if(splitview_pos_str && splitview_window_use_prop) {
+            int sv_pos = atoi(splitview_pos_str);
+            if(sv_pos > 0) {
+                splitview_pos = sv_pos;
+            }
+        }
+    }
+    
     GtkWidget *vbox = ui_gtk_vbox_new(0);
 #ifdef UI_LIBADWAITA
     GtkWidget *toolbar_view = adw_toolbar_view_new();
@@ -215,18 +230,7 @@
                 G_CALLBACK(save_window_splitview_pos),
                 NULL);
         
-        const char *splitview_pos_str = ui_get_property("ui.window.splitview.pos");
-        int pos = splitview_window_default_pos;
-        if(pos < 0) {
-            pos = window_width / 2;
-        }
-        if(splitview_pos_str && splitview_window_use_prop) {
-            int splitview_pos = atoi(splitview_pos_str);
-            if(splitview_pos > 0) {
-                pos = splitview_pos;
-            }
-        }
-        gtk_paned_set_position(GTK_PANED(content), pos);
+        gtk_paned_set_position(GTK_PANED(content), splitview_pos);
         
         GtkWidget *right_panel = adw_toolbar_view_new();
         GtkWidget *right_vbox = ui_gtk_vbox_new(0);
@@ -348,6 +352,7 @@
         
         if(splitview) {
             GtkWidget *content_paned = gtk_paned_new(GTK_ORIENTATION_HORIZONTAL);
+            gtk_paned_set_position(GTK_PANED(content_paned), splitview_pos);
             gtk_paned_add2(GTK_PANED(paned), content_paned);
             
             GtkWidget *right_content_box = ui_gtk_vbox_new(0);

mercurial