gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-anastasis-gtk] branch master updated: implement re-downloading po


From: gnunet
Subject: [taler-anastasis-gtk] branch master updated: implement re-downloading policy if user changed version or provider URL
Date: Sat, 20 Mar 2021 12:24:05 +0100

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository anastasis-gtk.

The following commit(s) were added to refs/heads/master by this push:
     new 0e6e98f  implement re-downloading policy if user changed version or 
provider URL
0e6e98f is described below

commit 0e6e98f93d6ab3e28c2ec9a7130a175b8e064e27
Author: Christian Grothoff <grothoff@gnunet.org>
AuthorDate: Sat Mar 20 12:24:02 2021 +0100

    implement re-downloading policy if user changed version or provider URL
---
 contrib/anastasis_gtk_main_window.glade            |  1 +
 .../anastasis-gtk_handle-policy-version-changed.c  | 53 +++++++++++++++++++---
 2 files changed, 47 insertions(+), 7 deletions(-)

diff --git a/contrib/anastasis_gtk_main_window.glade 
b/contrib/anastasis_gtk_main_window.glade
index 86d6c65..61fa299 100644
--- a/contrib/anastasis_gtk_main_window.glade
+++ b/contrib/anastasis_gtk_main_window.glade
@@ -1186,6 +1186,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                                         <property 
name="can-focus">True</property>
                                                         <property 
name="primary-icon-stock">gtk-network</property>
                                                         <property 
name="placeholder-text" translatable="yes">https://</property>
+                                                        <signal name="changed" 
handler="anastasis_gtk_provider_url_entry_changed_cb" swapped="no"/>
                                                       </object>
                                                       <packing>
                                                         <property 
name="left-attach">1</property>
diff --git a/src/anastasis/anastasis-gtk_handle-policy-version-changed.c 
b/src/anastasis/anastasis-gtk_handle-policy-version-changed.c
index 32bd1e7..b4f6dc1 100644
--- a/src/anastasis/anastasis-gtk_handle-policy-version-changed.c
+++ b/src/anastasis/anastasis-gtk_handle-policy-version-changed.c
@@ -31,19 +31,42 @@
 #include <jansson.h>
 
 
-void
-anastasis_gtk_policy_version_spin_button_changed_cb (GtkEditable *entry,
-                                                     gpointer user_data)
+/**
+ * The version or provider URL was edited by the user. Try to
+ * download the specified version from the specified provider.
+ */
+static void
+update_policy (void)
 {
-  GtkSpinButton *sb = GTK_SPIN_BUTTON (entry);
+  GtkSpinButton *sb;
+  GtkEntry *ge;
   gint version;
   json_t *args;
+  const char *provider_url;
 
-  AG_freeze ();
+  if (NULL != ra)
+  {
+    ANASTASIS_redux_action_cancel (ra);
+    ra = NULL;
+  }
+  {
+    GtkTreeStore *ts;
+    
+    ts = GTK_TREE_STORE (GCG_get_main_window_object (
+                           "policy_review_treestore"));
+    gtk_tree_store_clear (ts);
+  }
+  sb = GTK_SPIN_BUTTON (GCG_get_main_window_object (
+                                                   
"anastasis_gtk_policy_version_spin_button"));
+  ge = GTK_ENTRY (GCG_get_main_window_object (
+                                             
"anastasis_gtk_provider_url_entry"));
+  provider_url = gtk_entry_get_text (ge);
   version = gtk_spin_button_get_value_as_int (sb);
-  args = json_pack ("{s:I}",
+  args = json_pack ("{s:I, s:s}",
                     "version",
-                    (json_int_t) version);
+                    (json_int_t) version,
+                   "provider_url",
+                   provider_url);
   AG_hide ("anastasis_gtk_open_challenge_box");
   ra = ANASTASIS_redux_action (redux_state,
                                "change_version",
@@ -52,3 +75,19 @@ anastasis_gtk_policy_version_spin_button_changed_cb 
(GtkEditable *entry,
                                NULL);
   json_decref (args);
 }
+
+
+void
+anastasis_gtk_policy_version_spin_button_changed_cb (GtkEditable *entry,
+                                                     gpointer user_data)
+{
+  update_policy ();
+}
+
+
+void
+anastasis_gtk_provider_url_entry_changed_cb (GtkEditable *entry,
+                                            gpointer user_data)
+{
+  update_policy ();
+}

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]