]> git.tdb.fi Git - ext/subsurface.git/commitdiff
Flush any pending changes at notebook 'switch-page' time
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Sep 2011 23:05:37 +0000 (16:05 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Sep 2011 23:05:37 +0000 (16:05 -0700)
Dirk points out that equipment changes (cylinder size etc) do not cause
a proper repaint of the dive profile with new SAC information.  The
reason? We haven't flushed the changes when the notebook changes from
the equipment page to the dive profile page.

Reported-by: Dirk Hohndel <dirk@hohndel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
main.c

diff --git a/main.c b/main.c
index 4e15de2b37b3d7a3ea2745dc97574cc1ab923e13..c7daf19d73aa927932864d67c0432438adeee3ea 100644 (file)
--- a/main.c
+++ b/main.c
@@ -410,6 +410,11 @@ static GtkWidget *get_menubar_menu(GtkWidget *window)
        return menu;
 }
 
+static void switch_page(GtkNotebook *notebook, gint arg1, gpointer user_data)
+{
+       repaint_dive();
+}
+
 int main(int argc, char **argv)
 {
        int i;
@@ -470,6 +475,7 @@ int main(int argc, char **argv)
 
        /* Notebook for dive info vs profile vs .. */
        notebook = gtk_notebook_new();
+       g_signal_connect(notebook, "switch-page", G_CALLBACK(switch_page), NULL);
        gtk_box_pack_start(GTK_BOX(info_box), notebook, TRUE, TRUE, 6);
 
        /* Frame for dive profile */