gnunet-svn
[Top][All Lists]
Advanced

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

[taler-anastasis-gtk] branch master updated (c7e01f7 -> ba60295)


From: gnunet
Subject: [taler-anastasis-gtk] branch master updated (c7e01f7 -> ba60295)
Date: Sat, 13 Mar 2021 19:23:29 +0100

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

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

    from c7e01f7  more dialogs
     new 75741b4  implement challenge dialog handlers (WiP)
     new de61b35  fix glade refs
     new 37ad347  use enum instead of hard-coded constants for GtkXstore columns
     new ba60295  use enum instead of hard-coded constants for GtkXstore columns

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 contrib/anastasis_gtk_challenge_code.glade         |  80 +--
 contrib/anastasis_gtk_challenge_question.glade     |  70 +--
 contrib/anastasis_gtk_main_window.glade            | 613 ++++++++++-----------
 m4/libtool.m4                                      |   4 +-
 po/POTFILES.in                                     |   2 +
 src/anastasis/Makefile.am                          |   2 +
 src/anastasis/anastasis-gtk_action.c               | 359 +++++++++++-
 ...astasis-gtk_handle-auth-delete-button-clicked.c |   2 +-
 ...astasis-gtk_handle-auth-edit-provider-clicked.c |   6 +-
 .../anastasis-gtk_handle-challenge-code.c          |  91 +++
 .../anastasis-gtk_handle-challenge-question.c      |  91 +++
 .../anastasis-gtk_handle-continent-activated.c     |   2 +-
 ...stasis-gtk_handle-main-window-forward-clicked.c |   6 +-
 src/anastasis/anastasis-gtk_helper.h               | 108 ++++
 14 files changed, 1019 insertions(+), 417 deletions(-)
 create mode 100644 src/anastasis/anastasis-gtk_handle-challenge-code.c
 create mode 100644 src/anastasis/anastasis-gtk_handle-challenge-question.c

diff --git a/contrib/anastasis_gtk_challenge_code.glade 
b/contrib/anastasis_gtk_challenge_code.glade
index 7dff0a9..6c4981c 100644
--- a/contrib/anastasis_gtk_challenge_code.glade
+++ b/contrib/anastasis_gtk_challenge_code.glade
@@ -1,26 +1,37 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.38.2 -->
+<!-- Generated with glade 3.22.2 -->
 <interface>
   <requires lib="gtk+" version="3.0"/>
-  <object class="GtkDialog" id="anastasis_gtk_b_pin_dialog">
-    <property name="can-focus">False</property>
-    <property name="type-hint">dialog</property>
-    <signal name="response" 
handler="anastasis_gtk_b_question_dialog_response_cb" swapped="no"/>
+  <object class="GtkDialog" id="anastasis_gtk_c_code_dialog">
+    <property name="can_focus">False</property>
+    <property name="type_hint">dialog</property>
+    <signal name="response" handler="anastasis_gtk_c_code_dialog_response_cb" 
swapped="no"/>
+    <child type="titlebar">
+      <object class="GtkLabel">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="label" translatable="yes">Security token 
challenge</property>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget 
response="-6">anastasis_gtk_c_code_dialog_btn_cancel</action-widget>
+      <action-widget 
response="-5">anastasis_gtk_c_code_dialog_btn_ok</action-widget>
+    </action-widgets>
     <child internal-child="vbox">
       <object class="GtkBox">
-        <property name="can-focus">False</property>
+        <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
         <property name="spacing">2</property>
         <child internal-child="action_area">
           <object class="GtkButtonBox">
-            <property name="can-focus">False</property>
-            <property name="layout-style">end</property>
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
             <child>
-              <object class="GtkButton" 
id="anastasis_gtk_b_question_dialog_btn_cancel">
+              <object class="GtkButton" 
id="anastasis_gtk_c_code_dialog_btn_cancel">
                 <property name="label" translatable="yes">Cancel</property>
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_b_question_dialog_btn_cancel_clicked_cb" swapped="no"/>
               </object>
               <packing>
@@ -30,12 +41,12 @@
               </packing>
             </child>
             <child>
-              <object class="GtkButton" 
id="anastasis_gtk_b_question_dialog_btn_ok">
+              <object class="GtkButton" 
id="anastasis_gtk_c_code_dialog_btn_ok">
                 <property name="label" translatable="yes">OK</property>
                 <property name="visible">True</property>
                 <property name="sensitive">False</property>
-                <property name="can-focus">False</property>
-                <property name="receives-default">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">True</property>
               </object>
               <packing>
                 <property name="expand">True</property>
@@ -53,12 +64,12 @@
         <child>
           <object class="GtkBox">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <property name="orientation">vertical</property>
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -69,11 +80,11 @@
             <child>
               <object class="GtkBox">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <child>
                   <object class="GtkLabel">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="label" translatable="yes">A challenge code 
has been send to:</property>
                   </object>
                   <packing>
@@ -86,7 +97,7 @@
                 <child>
                   <object class="GtkLabel" id="challenge_instructions_label">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="label" translatable="yes">SET DYNAMICALLY 
BY PROGRAM</property>
                   </object>
                   <packing>
@@ -106,7 +117,7 @@
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -124,11 +135,11 @@
         <child>
           <object class="GtkBox">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <child>
               <object class="GtkLabel">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <property name="label" translatable="yes">Enter 
code:</property>
               </object>
               <packing>
@@ -139,13 +150,13 @@
               </packing>
             </child>
             <child>
-              <object class="GtkEntry" id="anastasis_gtk_c_pin_entry">
+              <object class="GtkEntry" id="anastasis_gtk_c_code_entry">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
+                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
-                <property name="width-chars">60</property>
-                <property 
name="primary-icon-stock">gtk-dialog-authentication</property>
-                <signal name="changed" 
handler="anastasis_gtk_b_question_dialog_answer_entry_changed_cb" swapped="no"/>
+                <property name="width_chars">60</property>
+                <property 
name="primary_icon_stock">gtk-dialog-authentication</property>
+                <signal name="changed" 
handler="anastasis_gtk_c_code_dialog_answer_entry_changed_cb" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -165,19 +176,8 @@
       </object>
     </child>
     <action-widgets>
-      <action-widget 
response="-6">anastasis_gtk_b_question_dialog_btn_cancel</action-widget>
-      <action-widget 
response="-5">anastasis_gtk_b_question_dialog_btn_ok</action-widget>
-    </action-widgets>
-    <child type="titlebar">
-      <object class="GtkLabel">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="label" translatable="yes">Security token 
challenge</property>
-      </object>
-    </child>
-    <action-widgets>
-      <action-widget 
response="-6">anastasis_gtk_b_question_dialog_btn_cancel</action-widget>
-      <action-widget 
response="-5">anastasis_gtk_b_question_dialog_btn_ok</action-widget>
+      <action-widget 
response="-6">anastasis_gtk_c_code_dialog_btn_cancel</action-widget>
+      <action-widget 
response="-5">anastasis_gtk_c_code_dialog_btn_ok</action-widget>
     </action-widgets>
   </object>
 </interface>
diff --git a/contrib/anastasis_gtk_challenge_question.glade 
b/contrib/anastasis_gtk_challenge_question.glade
index 11c0356..d36e862 100644
--- a/contrib/anastasis_gtk_challenge_question.glade
+++ b/contrib/anastasis_gtk_challenge_question.glade
@@ -1,26 +1,37 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.38.2 -->
+<!-- Generated with glade 3.22.2 -->
 <interface>
   <requires lib="gtk+" version="3.0"/>
   <object class="GtkDialog" id="anastasis_gtk_c_question_dialog">
-    <property name="can-focus">False</property>
-    <property name="type-hint">dialog</property>
-    <signal name="response" 
handler="anastasis_gtk_b_question_dialog_response_cb" swapped="no"/>
+    <property name="can_focus">False</property>
+    <property name="type_hint">dialog</property>
+    <signal name="response" 
handler="anastasis_gtk_c_question_dialog_response_cb" swapped="no"/>
+    <child type="titlebar">
+      <object class="GtkLabel">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="label" translatable="yes">Solve secuity question 
challenge</property>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget 
response="-6">anastasis_gtk_b_question_dialog_btn_cancel</action-widget>
+      <action-widget 
response="-5">anastasis_gtk_c_question_dialog_btn_ok</action-widget>
+    </action-widgets>
     <child internal-child="vbox">
       <object class="GtkBox">
-        <property name="can-focus">False</property>
+        <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
         <property name="spacing">2</property>
         <child internal-child="action_area">
           <object class="GtkButtonBox">
-            <property name="can-focus">False</property>
-            <property name="layout-style">end</property>
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" 
id="anastasis_gtk_b_question_dialog_btn_cancel">
                 <property name="label" translatable="yes">Cancel</property>
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_b_question_dialog_btn_cancel_clicked_cb" swapped="no"/>
               </object>
               <packing>
@@ -30,12 +41,12 @@
               </packing>
             </child>
             <child>
-              <object class="GtkButton" 
id="anastasis_gtk_b_question_dialog_btn_ok">
+              <object class="GtkButton" 
id="anastasis_gtk_c_question_dialog_btn_ok">
                 <property name="label" translatable="yes">OK</property>
                 <property name="visible">True</property>
                 <property name="sensitive">False</property>
-                <property name="can-focus">False</property>
-                <property name="receives-default">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">True</property>
               </object>
               <packing>
                 <property name="expand">True</property>
@@ -53,12 +64,12 @@
         <child>
           <object class="GtkBox">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <property name="orientation">vertical</property>
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -69,11 +80,11 @@
             <child>
               <object class="GtkBox">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <child>
                   <object class="GtkLabel">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="label" translatable="yes">Security 
question:</property>
                   </object>
                   <packing>
@@ -86,7 +97,7 @@
                 <child>
                   <object class="GtkLabel" id="security_question_label">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="label" translatable="yes">SET DYNAMICALLY 
BY PROGRAM</property>
                   </object>
                   <packing>
@@ -106,7 +117,7 @@
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -124,11 +135,11 @@
         <child>
           <object class="GtkBox">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <child>
               <object class="GtkLabel">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <property name="label" translatable="yes">Answer:</property>
               </object>
               <packing>
@@ -141,10 +152,10 @@
             <child>
               <object class="GtkEntry" 
id="anastasis_gtk_c_question_dialog_answer_entry">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
+                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
-                <property name="width-chars">60</property>
-                <property 
name="primary-icon-stock">gtk-dialog-authentication</property>
+                <property name="width_chars">60</property>
+                <property 
name="primary_icon_stock">gtk-dialog-authentication</property>
                 <signal name="changed" 
handler="anastasis_gtk_b_question_dialog_answer_entry_changed_cb" swapped="no"/>
               </object>
               <packing>
@@ -166,18 +177,7 @@
     </child>
     <action-widgets>
       <action-widget 
response="-6">anastasis_gtk_b_question_dialog_btn_cancel</action-widget>
-      <action-widget 
response="-5">anastasis_gtk_b_question_dialog_btn_ok</action-widget>
-    </action-widgets>
-    <child type="titlebar">
-      <object class="GtkLabel">
-        <property name="visible">True</property>
-        <property name="can-focus">False</property>
-        <property name="label" translatable="yes">Solve secuity question 
challenge</property>
-      </object>
-    </child>
-    <action-widgets>
-      <action-widget 
response="-6">anastasis_gtk_b_question_dialog_btn_cancel</action-widget>
-      <action-widget 
response="-5">anastasis_gtk_b_question_dialog_btn_ok</action-widget>
+      <action-widget 
response="-5">anastasis_gtk_c_question_dialog_btn_ok</action-widget>
     </action-widgets>
   </object>
 </interface>
diff --git a/contrib/anastasis_gtk_main_window.glade 
b/contrib/anastasis_gtk_main_window.glade
index 4472c4e..8c31973 100644
--- a/contrib/anastasis_gtk_main_window.glade
+++ b/contrib/anastasis_gtk_main_window.glade
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.38.2 
+<!-- Generated with glade 3.22.2 
 
 Copyright (C) Anastasis SARL
 
@@ -30,7 +30,7 @@ Author: Christian Grothoff, Dennis Neufeld
   <!-- interface-authors Christian Grothoff, Dennis Neufeld -->
   <object class="GtkImage" id="add_image">
     <property name="visible">True</property>
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="stock">gtk-add</property>
   </object>
   <object class="GtkListStore" id="authentication_methods_liststore">
@@ -45,7 +45,7 @@ Author: Christian Grothoff, Dennis Neufeld
   </object>
   <object class="GtkImage" id="backup_image">
     <property name="visible">True</property>
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="stock">gtk-go-up</property>
     <property name="icon_size">6</property>
   </object>
@@ -67,24 +67,14 @@ Author: Christian Grothoff, Dennis Neufeld
   </object>
   <object class="GtkImage" id="image1">
     <property name="visible">True</property>
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="stock">gtk-yes</property>
   </object>
   <object class="GtkImage" id="image_question">
     <property name="visible">True</property>
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="stock">gtk-dialog-question</property>
   </object>
-  <object class="GtkListStore" id="paid_qrcodes_liststore">
-    <columns>
-      <!-- column-name qr -->
-      <column type="GdkPixbuf"/>
-      <!-- column-name url -->
-      <column type="gchararray"/>
-      <!-- column-name provider -->
-      <column type="gchararray"/>
-    </columns>
-  </object>
   <object class="GtkTreeStore" id="policy_review_treestore">
     <columns>
       <!-- column-name policy_name -->
@@ -99,7 +89,7 @@ Author: Christian Grothoff, Dennis Neufeld
   </object>
   <object class="GtkImage" id="restore_image">
     <property name="visible">True</property>
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="stock">gtk-go-down</property>
     <property name="icon_size">6</property>
   </object>
@@ -114,38 +104,41 @@ Author: Christian Grothoff, Dennis Neufeld
     </columns>
   </object>
   <object class="GtkWindow" id="anastasis_gtk_main_window">
-    <property name="can-focus">False</property>
+    <property name="can_focus">False</property>
     <property name="events">GDK_BUTTON_PRESS_MASK | 
GDK_STRUCTURE_MASK</property>
-    <property name="window-position">center</property>
-    <property name="default-width">700</property>
-    <property name="default-height">500</property>
+    <property name="window_position">center</property>
+    <property name="default_width">700</property>
+    <property name="default_height">500</property>
     <signal name="delete-event" handler="anastasis_gtk_quit_cb" swapped="no"/>
+    <child type="titlebar">
+      <placeholder/>
+    </child>
     <child>
       <object class="GtkBox" id="anastasis_gtk_main_vbox">
         <property name="visible">True</property>
-        <property name="can-focus">False</property>
+        <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
         <child>
           <object class="GtkMenuBar" id="anastasis_gtk_menubar">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <child>
               <object class="GtkMenuItem" id="anastasis_gtk_file_menuitem">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <property name="label" translatable="yes">_File</property>
-                <property name="use-underline">True</property>
+                <property name="use_underline">True</property>
                 <child type="submenu">
                   <object class="GtkMenu" id="anastasis_gtk_file_menu">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <child>
                       <object class="GtkImageMenuItem" 
id="anastasis_quit_imagemenuitem">
                         <property name="label">gtk-quit</property>
                         <property name="visible">True</property>
-                        <property name="can-focus">False</property>
-                        <property name="use-underline">True</property>
-                        <property name="use-stock">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="use_stock">True</property>
                         <signal name="activate" 
handler="anastasis_gtk_quit_cb" swapped="no"/>
                       </object>
                     </child>
@@ -156,20 +149,20 @@ Author: Christian Grothoff, Dennis Neufeld
             <child>
               <object class="GtkMenuItem" id="anastasis_gtk_help_menuitem">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <property name="label" translatable="yes">_Help</property>
-                <property name="use-underline">True</property>
+                <property name="use_underline">True</property>
                 <child type="submenu">
                   <object class="GtkMenu" id="anastasis_gtk_help_menu">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <child>
                       <object class="GtkImageMenuItem" 
id="anastasis_gtk_about_imagemenuitem">
                         <property name="label">gtk-about</property>
                         <property name="visible">True</property>
-                        <property name="can-focus">False</property>
-                        <property name="use-underline">True</property>
-                        <property name="use-stock">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="use_stock">True</property>
                         <signal name="activate" 
handler="anastasis_gtk_about_imagemenuitem_activate_cb" swapped="no"/>
                       </object>
                     </child>
@@ -177,9 +170,9 @@ Author: Christian Grothoff, Dennis Neufeld
                       <object class="GtkImageMenuItem" 
id="anastasis_gtk_animation">
                         <property name="label">Show animation</property>
                         <property name="visible">True</property>
-                        <property name="can-focus">False</property>
+                        <property name="can_focus">False</property>
                         <property name="image">image1</property>
-                        <property name="use-stock">False</property>
+                        <property name="use_stock">False</property>
                         <signal name="activate" 
handler="anastasis_gtk_animation_activate_cb" swapped="no"/>
                       </object>
                     </child>
@@ -197,32 +190,32 @@ Author: Christian Grothoff, Dennis Neufeld
         <child>
           <object class="GtkBox">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <child>
               <object class="GtkScrolledWindow" 
id="anastasis_gtk_scrolledwindow">
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
+                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
                 <property name="vexpand">True</property>
-                <property name="shadow-type">in</property>
+                <property name="shadow_type">in</property>
                 <child>
                   <object class="GtkViewport" id="anastasis_gtk_viewport">
                     <property name="visible">True</property>
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="hexpand">True</property>
                     <property name="vexpand">True</property>
                     <child>
                       <object class="GtkBox">
                         <property name="visible">True</property>
-                        <property name="can-focus">False</property>
+                        <property name="can_focus">False</property>
                         <child>
                           <object class="GtkBox" id="anastasis_gtk_super_vbox">
                             <property name="visible">True</property>
-                            <property name="can-focus">False</property>
+                            <property name="can_focus">False</property>
                             <property name="orientation">vertical</property>
                             <child>
                               <object class="GtkLabel" 
id="anastasis_gtk_error_label">
-                                <property name="can-focus">False</property>
+                                <property name="can_focus">False</property>
                                 <property name="label" 
translatable="yes">DYNAMIC ERROR MESSAGE</property>
                               </object>
                               <packing>
@@ -234,30 +227,30 @@ Author: Christian Grothoff, Dennis Neufeld
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_start_frame">
                                 <property name="visible">True</property>
-                                <property name="can-focus">False</property>
-                                <property name="margin-top">10</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="margin_top">10</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox" 
id="anastasis_gtk_primary_action_hbox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
-                                        <property 
name="margin-start">10</property>
-                                        <property 
name="margin-end">10</property>
-                                        <property 
name="margin-top">10</property>
-                                        <property 
name="margin-bottom">10</property>
+                                        <property 
name="can_focus">False</property>
+                                        <property 
name="margin_start">10</property>
+                                        <property 
name="margin_end">10</property>
+                                        <property 
name="margin_top">10</property>
+                                        <property 
name="margin_bottom">10</property>
                                         <child>
                                           <object class="GtkButton">
                                             <property name="label" 
translatable="yes">Backup</property>
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
-                                            <property 
name="receives-default">True</property>
-                                            <property name="tooltip-text" 
translatable="yes">Begin fresh backup process</property>
+                                            <property 
name="can_focus">True</property>
+                                            <property 
name="receives_default">True</property>
+                                            <property name="tooltip_text" 
translatable="yes">Begin fresh backup process</property>
                                             <property 
name="image">backup_image</property>
                                             <signal name="clicked" 
handler="anastasis_gtk_backup_button_clicked" swapped="no"/>
                                           </object>
@@ -272,10 +265,10 @@ Author: Christian Grothoff, Dennis Neufeld
                                           <object class="GtkButton">
                                             <property 
name="label">gtk-open</property>
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
-                                            <property 
name="receives-default">True</property>
-                                            <property name="tooltip-text" 
translatable="yes">Continue from file with saved Anastasis state</property>
-                                            <property 
name="use-stock">True</property>
+                                            <property 
name="can_focus">True</property>
+                                            <property 
name="receives_default">True</property>
+                                            <property name="tooltip_text" 
translatable="yes">Continue from file with saved Anastasis state</property>
+                                            <property 
name="use_stock">True</property>
                                             <signal name="clicked" 
handler="anastasis_gtk_open_state_clicked_cb" swapped="no"/>
                                           </object>
                                           <packing>
@@ -289,9 +282,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                           <object class="GtkButton">
                                             <property name="label" 
translatable="yes">Restore</property>
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
-                                            <property 
name="receives-default">True</property>
-                                            <property name="tooltip-text" 
translatable="yes">Begin secret recovery process</property>
+                                            <property 
name="can_focus">True</property>
+                                            <property 
name="receives_default">True</property>
+                                            <property name="tooltip_text" 
translatable="yes">Begin secret recovery process</property>
                                             <property 
name="image">restore_image</property>
                                           </object>
                                           <packing>
@@ -308,7 +301,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <property name="label" 
translatable="yes">What do you want to do?</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -325,26 +318,26 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_continent_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox" 
id="anastasis_gtk_continent_vbox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <child>
                                           <object class="GtkTreeView" 
id="anastasis_gtk_continent_treeview">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
+                                            <property 
name="can_focus">True</property>
                                             <property 
name="model">continent_liststore</property>
-                                            <property 
name="enable-search">False</property>
-                                            <property 
name="search-column">0</property>
-                                            <property 
name="activate-on-single-click">True</property>
+                                            <property 
name="enable_search">False</property>
+                                            <property 
name="search_column">0</property>
+                                            <property 
name="activate_on_single_click">True</property>
                                             <signal name="row-activated" 
handler="anastasis_gtk_continent_activated" swapped="no"/>
                                             <child internal-child="selection">
                                               <object class="GtkTreeSelection">
@@ -372,11 +365,11 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkTreeView" 
id="anastasis_gtk_country_treeview">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
+                                            <property 
name="can_focus">True</property>
                                             <property 
name="model">country_liststore</property>
-                                            <property 
name="enable-search">False</property>
-                                            <property 
name="search-column">0</property>
-                                            <property 
name="activate-on-single-click">True</property>
+                                            <property 
name="enable_search">False</property>
+                                            <property 
name="search_column">0</property>
+                                            <property 
name="activate_on_single_click">True</property>
                                             <signal name="row-activated" 
handler="anastasis_gtk_country_activated" swapped="no"/>
                                             <child internal-child="selection">
                                               <object class="GtkTreeSelection">
@@ -408,7 +401,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <property name="label" 
translatable="yes">Where do you live?</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -424,30 +417,30 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_identity_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <child>
                                       <object class="GtkBox" 
id="anastasis_gtk_identity_vbox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <property 
name="orientation">vertical</property>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_ia_full_name_box">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_ia_full_name_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="halign">start</property>
                                                 <property 
name="valign">center</property>
-                                                <property 
name="margin-left">20</property>
-                                                <property 
name="margin-start">20</property>
+                                                <property 
name="margin_left">20</property>
+                                                <property 
name="margin_start">20</property>
                                                 <property name="label" 
translatable="yes">Full name:</property>
                                               </object>
                                               <packing>
@@ -460,9 +453,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkEntry" 
id="anastasis_gtk_ia_full_name_entry">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
+                                                <property 
name="can_focus">True</property>
                                                 <property 
name="hexpand">True</property>
-                                                <property 
name="placeholder-text" translatable="yes">Max Mustermann</property>
+                                                <property 
name="placeholder_text" translatable="yes">Max Mustermann</property>
                                                 <signal name="changed" 
handler="AG_identity_changed" swapped="no"/>
                                               </object>
                                               <packing>
@@ -482,14 +475,14 @@ Author: Christian Grothoff, Dennis Neufeld
                                         </child>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_ia_birthdate_box">
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_ia_birthdate_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="halign">start</property>
-                                                <property 
name="margin-left">20</property>
-                                                <property 
name="margin-start">20</property>
+                                                <property 
name="margin_left">20</property>
+                                                <property 
name="margin_start">20</property>
                                                 <property name="label" 
translatable="yes">Birthdate:</property>
                                               </object>
                                               <packing>
@@ -502,11 +495,11 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkCalendar" 
id="anastasis_gtk_ia_birthdate_cal">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
+                                                <property 
name="can_focus">True</property>
                                                 <property 
name="year">1980</property>
                                                 <property 
name="month">8</property>
                                                 <property 
name="day">22</property>
-                                                <property 
name="show-week-numbers">True</property>
+                                                <property 
name="show_week_numbers">True</property>
                                                 <signal name="day-selected" 
handler="AG_identity_changed" swapped="no"/>
                                               </object>
                                               <packing>
@@ -526,15 +519,15 @@ Author: Christian Grothoff, Dennis Neufeld
                                         </child>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_ia_ahv_box">
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_ia_ahv_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="halign">start</property>
                                                 <property 
name="valign">center</property>
-                                                <property 
name="margin-left">20</property>
-                                                <property 
name="margin-start">20</property>
+                                                <property 
name="margin_left">20</property>
+                                                <property 
name="margin_start">20</property>
                                                 <property name="label" 
translatable="yes">AHV number:</property>
                                               </object>
                                               <packing>
@@ -547,13 +540,13 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkEntry" 
id="anastasis_gtk_ia_ahv_entry">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="max-length">16</property>
-                                                <property 
name="width-chars">17</property>
-                                                <property 
name="max-width-chars">16</property>
-                                                <property 
name="caps-lock-warning">False</property>
-                                                <property 
name="placeholder-text" translatable="yes">756.1222.3425.89</property>
-                                                <property 
name="input-purpose">number</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="max_length">16</property>
+                                                <property 
name="width_chars">17</property>
+                                                <property 
name="max_width_chars">16</property>
+                                                <property 
name="caps_lock_warning">False</property>
+                                                <property 
name="placeholder_text" translatable="yes">756.1222.3425.89</property>
+                                                <property 
name="input_purpose">number</property>
                                                 <signal name="changed" 
handler="AG_identity_changed" swapped="no"/>
                                               </object>
                                               <packing>
@@ -572,15 +565,15 @@ Author: Christian Grothoff, Dennis Neufeld
                                         </child>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_ia_ssn_de_box">
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_ia_ssn_de_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="halign">start</property>
                                                 <property 
name="valign">center</property>
-                                                <property 
name="margin-left">20</property>
-                                                <property 
name="margin-start">20</property>
+                                                <property 
name="margin_left">20</property>
+                                                <property 
name="margin_start">20</property>
                                                 <property name="label" 
translatable="yes">Social security number:</property>
                                               </object>
                                               <packing>
@@ -593,12 +586,12 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkEntry" 
id="anastasis_gtk_ia_ssn_de_entry">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="max-length">12</property>
-                                                <property 
name="width-chars">13</property>
-                                                <property 
name="max-width-chars">12</property>
-                                                <property 
name="placeholder-text" translatable="yes">14230460S534</property>
-                                                <property 
name="input-purpose">alpha</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="max_length">12</property>
+                                                <property 
name="width_chars">13</property>
+                                                <property 
name="max_width_chars">12</property>
+                                                <property 
name="placeholder_text" translatable="yes">14230460S534</property>
+                                                <property 
name="input_purpose">alpha</property>
                                                 <signal name="changed" 
handler="AG_identity_changed" swapped="no"/>
                                               </object>
                                               <packing>
@@ -618,15 +611,15 @@ Author: Christian Grothoff, Dennis Neufeld
                                         </child>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_ia_ssn_us_box">
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_ia_ssn_us_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="halign">start</property>
                                                 <property 
name="valign">center</property>
-                                                <property 
name="margin-left">20</property>
-                                                <property 
name="margin-start">20</property>
+                                                <property 
name="margin_left">20</property>
+                                                <property 
name="margin_start">20</property>
                                                 <property name="label" 
translatable="yes">Social security number:</property>
                                               </object>
                                               <packing>
@@ -639,11 +632,11 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkEntry" 
id="anastasis_gtk_ia_ssn_us_entry">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="max-length">11</property>
-                                                <property 
name="width-chars">12</property>
-                                                <property 
name="max-width-chars">11</property>
-                                                <property 
name="placeholder-text" translatable="yes">000-00-0000</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="max_length">11</property>
+                                                <property 
name="width_chars">12</property>
+                                                <property 
name="max_width_chars">11</property>
+                                                <property 
name="placeholder_text" translatable="yes">000-00-0000</property>
                                                 <signal name="changed" 
handler="AG_identity_changed" swapped="no"/>
                                               </object>
                                               <packing>
@@ -668,7 +661,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <property name="label" 
translatable="yes">Who are you?</property>
                                     <attributes>
                                       <attribute name="style" value="normal"/>
@@ -685,42 +678,42 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_b_authentication_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <property 
name="orientation">vertical</property>
                                         <child>
                                           <object class="GtkFrame">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
-                                            <property 
name="margin-right">50</property>
-                                            <property 
name="margin-end">50</property>
+                                            <property 
name="can_focus">False</property>
+                                            <property 
name="margin_right">50</property>
+                                            <property 
name="margin_end">50</property>
                                             <property 
name="hexpand">True</property>
-                                            <property 
name="label-xalign">0</property>
-                                            <property 
name="shadow-type">none</property>
+                                            <property 
name="label_xalign">0</property>
+                                            <property 
name="shadow_type">none</property>
                                             <child>
                                               <object class="GtkBox" 
id="anastasis_gtk_add_auth_button_box">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
-                                                <property 
name="margin-top">5</property>
-                                                <property 
name="margin-bottom">4</property>
+                                                <property 
name="can_focus">False</property>
+                                                <property 
name="margin_top">5</property>
+                                                <property 
name="margin_bottom">4</property>
                                                 <property 
name="spacing">8</property>
                                                 <property 
name="homogeneous">True</property>
                                                 <child>
                                                   <object class="GtkButton" 
id="anastasis_gtk_btn_add_auth_sms">
                                                     <property name="label" 
translatable="yes">SMS</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_btn_add_auth_sms_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -734,8 +727,8 @@ Author: Christian Grothoff, Dennis Neufeld
                                                   <object class="GtkButton" 
id="anastasis_gtk_btn_add_auth_email">
                                                     <property name="label" 
translatable="yes">Email</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_btn_add_auth_email_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -749,8 +742,8 @@ Author: Christian Grothoff, Dennis Neufeld
                                                   <object class="GtkButton" 
id="anastasis_gtk_btn_add_auth_question">
                                                     <property name="label" 
translatable="yes">Question</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <property 
name="image">image_question</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_btn_add_auth_question_clicked_cb" swapped="no"/>
                                                   </object>
@@ -765,8 +758,8 @@ Author: Christian Grothoff, Dennis Neufeld
                                                   <object class="GtkButton" 
id="anastasis_gtk_btn_add_auth_post">
                                                     <property name="label" 
translatable="yes">Post</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_btn_add_auth_post_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -779,8 +772,8 @@ Author: Christian Grothoff, Dennis Neufeld
                                                 <child>
                                                   <object class="GtkButton" 
id="anastasis_gtk_btn_add_auth_video">
                                                     <property name="label" 
translatable="yes">Video</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_btn_add_auth_video_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -795,7 +788,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child type="label">
                                               <object class="GtkLabel">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Which authorization method should be added?</property>
                                                 <attributes>
                                                   <attribute name="weight" 
value="bold"/>
@@ -813,30 +806,30 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_b_authentication_hbox">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkFrame">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
-                                                <property 
name="label-xalign">0</property>
-                                                <property 
name="shadow-type">none</property>
+                                                <property 
name="can_focus">False</property>
+                                                <property 
name="label_xalign">0</property>
+                                                <property 
name="shadow_type">none</property>
                                                 <child>
                                                   <object class="GtkAlignment">
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">False</property>
-                                                    <property 
name="left-padding">12</property>
+                                                    <property 
name="can_focus">False</property>
+                                                    <property 
name="left_padding">12</property>
                                                     <child>
                                                       <object 
class="GtkScrolledWindow">
                                                         <property 
name="visible">True</property>
-                                                        <property 
name="can-focus">True</property>
-                                                        <property 
name="shadow-type">in</property>
+                                                        <property 
name="can_focus">True</property>
+                                                        <property 
name="shadow_type">in</property>
                                                         <child>
                                                           <object 
class="GtkTreeView" id="anastasis_gtk_authentication_methods_list">
                                                             <property 
name="visible">True</property>
-                                                            <property 
name="can-focus">True</property>
+                                                            <property 
name="can_focus">True</property>
                                                             <property 
name="model">authentication_methods_liststore</property>
-                                                            <property 
name="enable-search">False</property>
-                                                            <property 
name="search-column">0</property>
+                                                            <property 
name="enable_search">False</property>
+                                                            <property 
name="search_column">0</property>
                                                             <child 
internal-child="selection">
                                                             <object 
class="GtkTreeSelection" id="anastasis_gtk_authentication_methods_selection">
                                                             <signal 
name="changed" handler="auth_method_selection_changed_cb" swapped="no"/>
@@ -848,8 +841,8 @@ Author: Christian Grothoff, Dennis Neufeld
                                                             <property 
name="title" translatable="yes">Type</property>
                                                             <property 
name="clickable">True</property>
                                                             <property 
name="reorderable">True</property>
-                                                            <property 
name="sort-indicator">True</property>
-                                                            <property 
name="sort-column-id">0</property>
+                                                            <property 
name="sort_indicator">True</property>
+                                                            <property 
name="sort_column_id">0</property>
                                                             <child>
                                                             <object 
class="GtkCellRendererText" id="type"/>
                                                             <attributes>
@@ -880,7 +873,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                                 <child type="label">
                                                   <object class="GtkLabel" 
id="anastasis_gtk_authorization_methods_label">
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">False</property>
+                                                    <property 
name="can_focus">False</property>
                                                     <property name="label" 
translatable="yes">Authorization methods configured so far:</property>
                                                     <attributes>
                                                       <attribute name="weight" 
value="bold"/>
@@ -898,14 +891,14 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkBox" 
id="anastasis_gtk_authorization_meta_button_box">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="orientation">vertical</property>
                                                 <child>
                                                   <object class="GtkButton" 
id="anastasis_gtk_edit_provider_list">
                                                     <property name="label" 
translatable="yes">Add provider</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
                                                     <property 
name="image">add_image</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_edit_provider_list_clicked_cb" swapped="no"/>
                                                   </object>
@@ -921,9 +914,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                                     <property 
name="label">gtk-delete</property>
                                                     <property 
name="visible">True</property>
                                                     <property 
name="sensitive">False</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
-                                                    <property 
name="use-stock">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
+                                                    <property 
name="use_stock">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_authentication_method_delete_button_clicked_cb" 
swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -951,7 +944,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkSeparator">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                           </object>
                                           <packing>
                                             <property 
name="expand">False</property>
@@ -966,7 +959,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <property name="label" 
translatable="yes">Configure authorization methods!</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -982,25 +975,25 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_b_policy_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="top-padding">10</property>
-                                    <property 
name="bottom-padding">10</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="top_padding">10</property>
+                                    <property 
name="bottom_padding">10</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkScrolledWindow">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">True</property>
-                                        <property 
name="shadow-type">in</property>
+                                        <property 
name="can_focus">True</property>
+                                        <property 
name="shadow_type">in</property>
                                         <child>
                                           <object class="GtkTreeView" 
id="anastasis_gtk_review_policy_treeview">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">True</property>
+                                            <property 
name="can_focus">True</property>
                                             <property 
name="model">policy_review_treestore</property>
                                             <child internal-child="selection">
                                               <object 
class="GtkTreeSelection"/>
@@ -1063,10 +1056,10 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-start">5</property>
-                                    <property name="margin-top">5</property>
-                                    <property name="margin-bottom">5</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_start">5</property>
+                                    <property name="margin_top">5</property>
+                                    <property name="margin_bottom">5</property>
                                     <property name="label" 
translatable="yes">Review recovery policies</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -1083,29 +1076,29 @@ Author: Christian Grothoff, Dennis Neufeld
                             <child>
                               <object class="GtkFrame">
                                 <property 
name="name">anastasis_gtk_challenge_frame</property>
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <property 
name="orientation">vertical</property>
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_open_challenge_box">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkBox" 
id="anastasis_gtk_challenge_list_box">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
-                                                <property 
name="margin-top">5</property>
-                                                <property 
name="margin-bottom">5</property>
+                                                <property 
name="can_focus">False</property>
+                                                <property 
name="margin_top">5</property>
+                                                <property 
name="margin_bottom">5</property>
                                                 <child>
                                                   <placeholder/>
                                                 </child>
@@ -1128,7 +1121,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkLabel" 
id="anastasis_gtk_open_challenge_label">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <property name="label" 
translatable="yes">DYNAMIC TEXT EXPLAINING CHALLENGES NEEDED TO RECOVER 
SECRET.</property>
                                           </object>
                                           <packing>
@@ -1144,7 +1137,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
+                                    <property name="can_focus">False</property>
                                     <property name="label" 
translatable="yes">Select challenge to recover secret:</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -1160,30 +1153,30 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_enter_secret_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
-                                        <property 
name="margin-top">5</property>
-                                        <property 
name="margin-bottom">5</property>
+                                        <property 
name="can_focus">False</property>
+                                        <property 
name="margin_top">5</property>
+                                        <property 
name="margin_bottom">5</property>
                                         <property 
name="orientation">vertical</property>
                                         <child>
                                           <object class="GtkBox">
                                             <property 
name="name">anastasis_gtk_enter_secret_as_text_box</property>
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <child>
                                               <object class="GtkLabel">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Enter as text:</property>
                                               </object>
                                               <packing>
@@ -1196,9 +1189,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkEntry" 
id="anastasis_gtk_enter_secret_entry">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="primary-icon-stock">gtk-dialog-authentication</property>
-                                                <property 
name="input-purpose">password</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="primary_icon_stock">gtk-dialog-authentication</property>
+                                                <property 
name="input_purpose">password</property>
                                                 <signal name="changed" 
handler="anastasis_gtk_enter_secret_entry_changed_cb" swapped="no"/>
                                               </object>
                                               <packing>
@@ -1219,13 +1212,13 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkBox">
                                             <property 
name="name">anastasis_gtk_enter_secret_file_box</property>
-                                            <property 
name="can-focus">False</property>
-                                            <property 
name="margin-top">5</property>
-                                            <property 
name="margin-bottom">5</property>
+                                            <property 
name="can_focus">False</property>
+                                            <property 
name="margin_top">5</property>
+                                            <property 
name="margin_bottom">5</property>
                                             <child>
                                               <object class="GtkLabel">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Use file input:</property>
                                               </object>
                                               <packing>
@@ -1239,9 +1232,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                               <object class="GtkButton" 
id="anastasis_gtk_enter_secret_open_button">
                                                 <property 
name="label">gtk-open</property>
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="receives-default">True</property>
-                                                <property 
name="use-stock">True</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="receives_default">True</property>
+                                                <property 
name="use_stock">True</property>
                                                 <signal name="clicked" 
handler="anastasis_gtk_enter_secret_open_button_clicked_cb" swapped="no"/>
                                               </object>
                                               <packing>
@@ -1266,9 +1259,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-top">10</property>
-                                    <property 
name="margin-bottom">10</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_top">10</property>
+                                    <property 
name="margin_bottom">10</property>
                                     <property name="label" 
translatable="yes">Provide secret to backup:</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -1284,28 +1277,28 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_pay_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-top">5</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_top">5</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <child>
-                                          <object class="GtkBox">
+                                          <object class="GtkBox" 
id="anastasis_gtk_main_window_unpaid_box">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <property 
name="orientation">vertical</property>
                                             <child>
                                               <object class="GtkLabel">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Unpaid:</property>
                                               </object>
                                               <packing>
@@ -1318,20 +1311,20 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object 
class="GtkScrolledWindow">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">True</property>
-                                                <property 
name="vscrollbar-policy">never</property>
-                                                <property 
name="shadow-type">etched-out</property>
+                                                <property 
name="can_focus">True</property>
+                                                <property 
name="vscrollbar_policy">never</property>
+                                                <property 
name="shadow_type">etched-out</property>
                                                 <child>
                                                   <object class="GtkViewport">
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">False</property>
+                                                    <property 
name="can_focus">False</property>
                                                     <child>
                                                       <object 
class="GtkTreeView" id="unpaid_qr_treeview">
                                                         <property 
name="visible">True</property>
-                                                        <property 
name="can-focus">True</property>
+                                                        <property 
name="can_focus">True</property>
                                                         <property 
name="model">unpaid_qrcodes_liststore</property>
-                                                        <property 
name="headers-visible">False</property>
-                                                        <property 
name="enable-search">False</property>
+                                                        <property 
name="headers_visible">False</property>
+                                                        <property 
name="enable_search">False</property>
                                                         <child 
internal-child="selection">
                                                           <object 
class="GtkTreeSelection" id="unpaid_qr_treeselection">
                                                             <signal 
name="changed" handler="unpaid_qr_treeselection_changed_cb" swapped="no"/>
@@ -1372,12 +1365,12 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkBox">
                                             <property 
name="visible">True</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <property 
name="orientation">vertical</property>
                                             <child>
                                               <object class="GtkLabel">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Please pay with GNU Taler:</property>
                                               </object>
                                               <packing>
@@ -1390,7 +1383,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_pay_payto_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">payto://FIXME</property>
                                                 <property 
name="selectable">True</property>
                                                 <property 
name="ellipsize">end</property>
@@ -1408,17 +1401,17 @@ Author: Christian Grothoff, Dennis Neufeld
                                             </child>
                                             <child>
                                               <object class="GtkImage" 
id="anastasis_gtk_pay_qrcode_image">
-                                                <property 
name="width-request">400</property>
-                                                <property 
name="height-request">400</property>
+                                                <property 
name="width_request">400</property>
+                                                <property 
name="height_request">400</property>
                                                 <property 
name="visible">True</property>
                                                 <property 
name="sensitive">False</property>
-                                                <property 
name="can-focus">False</property>
-                                                <property name="tooltip-text" 
translatable="yes">Scan this QR code with your Taler wallet to pay.</property>
+                                                <property 
name="can_focus">False</property>
+                                                <property name="tooltip_text" 
translatable="yes">Scan this QR code with your Taler wallet to pay.</property>
                                                 <property 
name="halign">center</property>
-                                                <property 
name="margin-start">10</property>
-                                                <property 
name="margin-end">10</property>
-                                                <property 
name="margin-top">10</property>
-                                                <property 
name="margin-bottom">10</property>
+                                                <property 
name="margin_start">10</property>
+                                                <property 
name="margin_end">10</property>
+                                                <property 
name="margin_top">10</property>
+                                                <property 
name="margin_bottom">10</property>
                                                 <property 
name="stock">gtk-missing-image</property>
                                               </object>
                                               <packing>
@@ -1443,9 +1436,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-top">10</property>
-                                    <property name="margin-bottom">5</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_top">10</property>
+                                    <property name="margin_bottom">5</property>
                                     <property name="label" 
translatable="yes">Payment required:</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -1461,25 +1454,25 @@ Author: Christian Grothoff, Dennis Neufeld
                             </child>
                             <child>
                               <object class="GtkFrame" 
id="anastasis_gtk_completed_frame">
-                                <property name="can-focus">False</property>
-                                <property name="label-xalign">0</property>
-                                <property name="shadow-type">none</property>
+                                <property name="can_focus">False</property>
+                                <property name="label_xalign">0</property>
+                                <property name="shadow_type">none</property>
                                 <child>
                                   <object class="GtkAlignment">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-start">10</property>
-                                    <property name="margin-end">10</property>
-                                    <property name="margin-top">10</property>
-                                    <property 
name="margin-bottom">10</property>
-                                    <property name="left-padding">12</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_start">10</property>
+                                    <property name="margin_end">10</property>
+                                    <property name="margin_top">10</property>
+                                    <property 
name="margin_bottom">10</property>
+                                    <property name="left_padding">12</property>
                                     <child>
                                       <object class="GtkBox" 
id="anastasis_gtk_success_box">
                                         <property 
name="visible">True</property>
-                                        <property 
name="can-focus">False</property>
+                                        <property 
name="can_focus">False</property>
                                         <child>
                                           <object class="GtkLabel" 
id="anastasis_gtk_success_backup_label">
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <property name="label" 
translatable="yes">Your backup is complete.</property>
                                             <property 
name="justify">center</property>
                                           </object>
@@ -1493,12 +1486,12 @@ Author: Christian Grothoff, Dennis Neufeld
                                         <child>
                                           <object class="GtkBox" 
id="anastasis_gtk_success_recovery_box">
                                             <property 
name="name">anastasis_gtk_success_recovery_box</property>
-                                            <property 
name="can-focus">False</property>
+                                            <property 
name="can_focus">False</property>
                                             <property 
name="orientation">vertical</property>
                                             <child>
                                               <object class="GtkLabel" 
id="anastasis_gtk_success_recovery_label">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property name="label" 
translatable="yes">Your secret was recovered:</property>
                                               </object>
                                               <packing>
@@ -1510,15 +1503,15 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkBox">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <child>
                                                   <object class="GtkLabel" 
id="anastasis_gtk_secret_value_label">
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">False</property>
-                                                    <property 
name="tooltip-text" translatable="yes">The secret is shown here in Crockford 
Base32 encoding. When copying to the clipboard or saving to file, it will be 
decoded first.</property>
+                                                    <property 
name="can_focus">False</property>
+                                                    <property 
name="tooltip_text" translatable="yes">The secret is shown here in Crockford 
Base32 encoding. When copying to the clipboard or saving to file, it will be 
decoded first.</property>
                                                     <property name="label" 
translatable="yes">THE SECRET TEXT</property>
                                                     <property 
name="wrap">True</property>
-                                                    <property 
name="wrap-mode">word-char</property>
+                                                    <property 
name="wrap_mode">word-char</property>
                                                     <property 
name="ellipsize">end</property>
                                                   </object>
                                                   <packing>
@@ -1532,9 +1525,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                                   <object class="GtkButton" 
id="anastasis_gtk_secret_copy_button">
                                                     <property 
name="label">gtk-copy</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
-                                                    <property 
name="use-stock">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
+                                                    <property 
name="use_stock">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_secret_copy_button_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -1548,9 +1541,9 @@ Author: Christian Grothoff, Dennis Neufeld
                                                   <object class="GtkButton" 
id="anastasis_gtk_secret_save_as_button">
                                                     <property 
name="label">gtk-save-as</property>
                                                     <property 
name="visible">True</property>
-                                                    <property 
name="can-focus">True</property>
-                                                    <property 
name="receives-default">True</property>
-                                                    <property 
name="use-stock">True</property>
+                                                    <property 
name="can_focus">True</property>
+                                                    <property 
name="receives_default">True</property>
+                                                    <property 
name="use_stock">True</property>
                                                     <signal name="clicked" 
handler="anastasis_gtk_secret_save_as_button_clicked_cb" swapped="no"/>
                                                   </object>
                                                   <packing>
@@ -1570,7 +1563,7 @@ Author: Christian Grothoff, Dennis Neufeld
                                             <child>
                                               <object class="GtkImage" 
id="anastasis_gtk_secret_qr_image">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="can-focus">False</property>
+                                                <property 
name="can_focus">False</property>
                                                 <property 
name="stock">gtk-missing-image</property>
                                               </object>
                                               <packing>
@@ -1594,11 +1587,11 @@ Author: Christian Grothoff, Dennis Neufeld
                                 <child type="label">
                                   <object class="GtkLabel" 
id="anastasis_gtk_backup_success_label">
                                     <property name="visible">True</property>
-                                    <property name="can-focus">False</property>
-                                    <property name="margin-start">10</property>
-                                    <property name="margin-end">10</property>
-                                    <property name="margin-top">10</property>
-                                    <property 
name="margin-bottom">10</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="margin_start">10</property>
+                                    <property name="margin_end">10</property>
+                                    <property name="margin_top">10</property>
+                                    <property 
name="margin_bottom">10</property>
                                     <property name="label" 
translatable="yes">Success!</property>
                                     <attributes>
                                       <attribute name="weight" value="bold"/>
@@ -1635,12 +1628,12 @@ Author: Christian Grothoff, Dennis Neufeld
             </child>
             <child>
               <object class="GtkBox" id="anastasis_gtk_illustration_vbox">
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
                 <property name="vexpand">True</property>
                 <property name="orientation">vertical</property>
                 <child>
                   <object class="GtkImage" 
id="anastasis_gtk_continent_selection_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1652,8 +1645,8 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" 
id="anastasis_gtk_country_selection_image">
-                    <property name="width-request">100</property>
-                    <property name="can-focus">False</property>
+                    <property name="width_request">100</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1665,7 +1658,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" 
id="anastasis_gtk_user_attributes_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1677,7 +1670,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" 
id="anastasis_gtk_b_authentication_methods_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1689,7 +1682,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" id="anastasis_gtk_b_policies_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1701,7 +1694,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" 
id="anastasis_gtk_enter_secret_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1713,7 +1706,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" id="anastasis_gtk_pay_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1725,7 +1718,7 @@ Author: Christian Grothoff, Dennis Neufeld
                 </child>
                 <child>
                   <object class="GtkImage" id="anastasis_gtk_completed_image">
-                    <property name="can-focus">False</property>
+                    <property name="can_focus">False</property>
                     <property name="vexpand">True</property>
                     <property name="stock">gtk-missing-image</property>
                   </object>
@@ -1751,14 +1744,14 @@ Author: Christian Grothoff, Dennis Neufeld
         </child>
         <child>
           <object class="GtkBox" id="anastasis_gtk_main_control_vbox">
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <child>
               <object class="GtkButton" 
id="anastasis_gtk_main_window_prev_button">
                 <property name="label">gtk-go-back</property>
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
-                <property name="use-stock">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_main_window_back_clicked" swapped="no"/>
               </object>
               <packing>
@@ -1771,7 +1764,7 @@ Author: Christian Grothoff, Dennis Neufeld
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">True</property>
@@ -1783,9 +1776,9 @@ Author: Christian Grothoff, Dennis Neufeld
               <object class="GtkButton" 
id="anastasis_gtk_main_window_save_as_button">
                 <property name="label">gtk-save-as</property>
                 <property name="visible">True</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
-                <property name="use-stock">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_main_window_save_as_button_clicked_cb" swapped="no"/>
               </object>
               <packing>
@@ -1798,9 +1791,9 @@ Author: Christian Grothoff, Dennis Neufeld
             <child>
               <object class="GtkButton" 
id="anastasis_gtk_main_window_quit_button">
                 <property name="label">gtk-quit</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
-                <property name="use-stock">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_main_window_quit_button_clicked_cb" swapped="no"/>
               </object>
               <packing>
@@ -1813,7 +1806,7 @@ Author: Christian Grothoff, Dennis Neufeld
             <child>
               <object class="GtkSeparator">
                 <property name="visible">True</property>
-                <property name="can-focus">False</property>
+                <property name="can_focus">False</property>
               </object>
               <packing>
                 <property name="expand">True</property>
@@ -1826,9 +1819,9 @@ Author: Christian Grothoff, Dennis Neufeld
                 <property name="label">gtk-go-forward</property>
                 <property name="visible">True</property>
                 <property name="sensitive">False</property>
-                <property name="can-focus">True</property>
-                <property name="receives-default">True</property>
-                <property name="use-stock">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
                 <signal name="clicked" 
handler="anastasis_gtk_main_window_forward_clicked" swapped="no"/>
               </object>
               <packing>
@@ -1848,7 +1841,7 @@ Author: Christian Grothoff, Dennis Neufeld
         <child>
           <object class="GtkStatusbar" id="anastasis_gtk_statusbar">
             <property name="visible">True</property>
-            <property name="can-focus">False</property>
+            <property name="can_focus">False</property>
             <property name="orientation">vertical</property>
             <property name="spacing">8</property>
           </object>
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index c4c0294..a6d21ae 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -1071,11 +1071,11 @@ _LT_EOF
       # to the OS version, if on x86, and 10.4, the deployment
       # target defaults to 10.4. Don't you love it?
       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-       10.0,*86*-darwin8*|10.0,*-darwin[[912]]*)
+       10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
        10.[[012]][[,.]]*)
          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined 
${wl}suppress' ;;
-       10.*|11.*)
+       10.*)
          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 63e5aae..5ce1bf1 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -30,6 +30,8 @@ contrib/anastasis_gtk_auth_add_post.glade
 contrib/anastasis_gtk_auth_add_question.glade
 contrib/anastasis_gtk_auth_add_sms.glade
 contrib/anastasis_gtk_auth_add_video.glade
+contrib/anastasis_gtk_challenge_code.glade
+contrib/anastasis_gtk_challenge_question.glade
 contrib/anastasis_gtk_edit_providers.glade
 contrib/anastasis_gtk_main_window.glade
 contrib/anastasis_gtk_open_file_dialog.glade
diff --git a/src/anastasis/Makefile.am b/src/anastasis/Makefile.am
index b738dd3..6942eb9 100644
--- a/src/anastasis/Makefile.am
+++ b/src/anastasis/Makefile.am
@@ -20,6 +20,8 @@ anastasis_gtk_SOURCES = \
   anastasis-gtk_handle-auth-delete-button-clicked.c \
   anastasis-gtk_handle-auth-edit-provider-clicked.c \
   anastasis-gtk_handle-backup-button-clicked.c \
+  anastasis-gtk_handle-challenge-code.c \
+  anastasis-gtk_handle-challenge-question.c \
   anastasis-gtk_handle-continent-activated.c \
   anastasis-gtk_handle-continent-unselected.c \
   anastasis-gtk_handle-country-activated.c \
diff --git a/src/anastasis/anastasis-gtk_action.c 
b/src/anastasis/anastasis-gtk_action.c
index 77cd4ec..b0cb8f5 100644
--- a/src/anastasis/anastasis-gtk_action.c
+++ b/src/anastasis/anastasis-gtk_action.c
@@ -70,7 +70,7 @@ action_continent_selecting (void)
         gtk_list_store_insert_with_values (continent_liststore,
                                            NULL,
                                            -1,
-                                           0, json_string_value (continent),
+                                           AG_CMC_CONTINENT_NAME, 
json_string_value (continent),
                                            -1);
       }
     }
@@ -114,18 +114,17 @@ action_country_selecting (void)
       GtkTreeIter iter;
       const char *code;
 
-      /* FIXME: use proper enum for columns instead of 0/1/2 */
       code = json_string_value (json_object_get (country,
                                                  "code"));
       gtk_list_store_insert_with_values (
         country_liststore,
         &iter,
         -1,
-        0,
+        AG_CCMC_COUNTRY_NAME,
         json_string_value (json_object_get (country, "name")),
-        1,
+        AG_CCMC_COUNTRY_CODE,
         code,
-        2,
+        AG_CCMC_COUNTRY_CURRENCY,
         json_string_value (json_object_get (country, "currency")),
         -1);
       if ( (NULL != selected_country) &&
@@ -599,13 +598,13 @@ action_authentications_editing (void)
                      GNUNET_JSON_parse (am,
                                         spec,
                                         NULL, NULL));
-      // FIXME: use proper enum
-      gtk_list_store_insert_with_values (ls,
+      gtk_list_store_insert_with_values (
+                                         ls,
                                          NULL,
                                          -1,
-                                         0, type,
-                                         1, instructions,
-                                         2, (guint) index,
+                                         AG_AMMC_TYPE, type,
+                                         AG_AMMC_VISUALIZATION, instructions,
+                                         AG_AMMC_INDEX, (guint) index,
                                          -1);
       have_auth = true;
     }
@@ -731,7 +730,7 @@ action_policies_reviewing (void)
                                        &piter,
                                        NULL, /* no parent */
                                        -1, /* append */
-                                       2,
+                                       AG_PRMC_COST,
                                        TALER_amount2s (&recovery_cost),
                                        -1);
 
@@ -793,13 +792,13 @@ action_policies_reviewing (void)
                                            &miter,
                                            &piter, /* parent */
                                            -1, /* append */
-                                           0,
+                                           AG_PRMC_POLICY_NAME,
                                            instructions,
-                                           1,
+                                           AG_PRMC_METHOD_TYPE,
                                            type,
-                                           2,
+                                           AG_PRMC_COST,
                                            TALER_amount2s (&recovery_cost),
-                                           3,
+                                           AG_PRMC_PROVIDER_URL,
                                            provider,
                                            -1);
         if (NULL == summary)
@@ -824,7 +823,7 @@ action_policies_reviewing (void)
     {
       gtk_tree_store_set (ts,
                           &piter,
-                          0, summary,
+                          AG_PRMC_POLICY_NAME, summary,
                           -1);
       GNUNET_free (summary);
     }
@@ -1041,9 +1040,9 @@ action_truths_paying (void)
       gtk_list_store_insert_with_values (ls,
                                          NULL,
                                          -1, /* append */
-                                         0, pb,
-                                         1, payto,
-                                         2, "",
+                                         AG_UQRMC_QR_IMAGE, pb,
+                                         AG_UQRMC_URL, payto,
+                                         AG_UQRMC_PROVIDER, "",
                                          -1);
     }
     if (0 == index)
@@ -1125,9 +1124,9 @@ action_policies_paying (void)
       gtk_list_store_insert_with_values (ls,
                                          NULL,
                                          -1, /* append */
-                                         0, pb,
-                                         1, payto,
-                                         2, provider,
+                                         AG_UQRMC_QR_IMAGE, pb,
+                                         AG_UQRMC_URL, payto,
+                                         AG_UQRMC_PROVIDER, provider,
                                          -1);
     }
     if (0 == index)
@@ -1176,6 +1175,316 @@ action_backup_finished (void)
 }
 
 
+/**
+ * The user clicked one of the challenge buttons,
+ * select the challenge.
+ *
+ * @param button the button that was clicked
+ * @param user_data a `json *` with the challenge
+ */
+static void
+challenge_button_clicked_cb (GtkButton *button,
+                             gpointer user_data)
+{
+  json_t *challenge = user_data;
+  json_t *uuid = json_object_get (challenge,
+                                  "uuid");
+  json_t *args = json_pack ("{s:O}",
+                                   "uuid",
+                                   uuid);
+
+  GNUNET_assert (NULL != uuid);
+  GNUNET_assert (NULL != args);
+  AG_freeze ();
+  ra = ANASTASIS_redux_action (redux_state,
+                               "select_challenge",
+                               args,
+                               &AG_action_cb,
+                               NULL);
+  json_decref (args);
+}
+
+
+/**
+ * Removes @a child from the container in @a user_data.
+ *
+ * @param child a child to remove
+ * @param user_data a `GtkContainer` to remove child from
+ */
+static void
+remove_child (GtkWidget *child,
+              gpointer user_data)
+{
+  GtkContainer *c = user_data;
+
+  gtk_container_remove (c,
+                        child);
+}
+
+
+static void
+action_challenge_selecting (void)
+{
+  json_t *challenges;
+  size_t index;
+  json_t *challenge;
+  GtkBox *box;
+  
+  AG_hide_all_frames ();
+  AG_show ("anastasis_gtk_challenge_frame");
+  challenges = json_object_get (redux_state,
+                                "challenges");
+  box = GTK_BOX (GCG_get_main_window_object (
+                                             
"anastasis_gtk_open_challenge_box"));
+  gtk_container_foreach (GTK_CONTAINER (box),
+                         &remove_child,
+                         box);
+  json_array_foreach (challenges, index, challenge)
+  {
+    GtkButton *b;
+    const char *instructions;
+    struct TALER_Amount cost;
+    struct GNUNET_JSON_Specification spec[] = {
+      GNUNET_JSON_spec_string ("instructions",
+                               &instructions),
+      TALER_JSON_spec_amount ("cost",
+                               &cost),
+      GNUNET_JSON_spec_end ()
+    };
+ 
+    if (GNUNET_OK !=
+        GNUNET_JSON_parse (challenge,
+                           spec,
+                           NULL, NULL))
+    {
+      GNUNET_break (0);
+      continue;
+    }
+    {
+    char *ins_str;
+
+    GNUNET_asprintf (&ins_str,
+                     "#%u: %s",
+                     (unsigned int) index,
+                     instructions);
+    b = gtk_button_new_with_label (ins_str);
+    GNUNET_free (ins_str);
+  }
+    {
+          char *cost_str;
+
+    GNUNET_asprintf (&cost_str,
+                     _("Price: %s"),
+                     TALER_amount2s (&cost));
+    gtk_widget_set_tooltip_text (GTK_WIDGET (b),
+                                 cost_str);
+    GNUNET_free (cost_str);
+    }
+    g_object_connect (G_OBJECT (b),
+                      "signal::clicked",
+                      &challenge_button_clicked_cb,
+                      challenge,
+                      NULL);
+    gtk_container_add (GTK_CONTAINER (box),
+                       GTK_WIDGET (b));
+    
+  }
+  AG_show ("anastasis_gtk_main_control_vbox");
+  AG_show ("anastasis_gtk_main_window_save_as_button");
+  AG_hide ("anastasis_gtk_main_window_quit_button");
+  AG_hide ("anastasis_gtk_main_window_prev_button");
+  AG_hide ("anastasis_gtk_main_window_forward_button");
+}
+
+
+static void
+action_challenge_paying (void)
+{
+  json_t *pprs;
+  size_t index;
+  json_t *ppr;
+
+  // FIXME: json parser is wrong here!
+  AG_hide_all_frames ();
+  pprs = json_object_get (redux_state,
+                          "challenge_payment_requests");
+  json_array_foreach (pprs, index, ppr)
+  {
+    const char *provider;
+    const char *payto;
+    struct GNUNET_JSON_Specification spec[] = {
+      GNUNET_JSON_spec_string ("provider",
+                               &provider),
+      GNUNET_JSON_spec_string ("payto",
+                               &payto),
+      GNUNET_JSON_spec_end ()
+    };
+    GdkPixbuf *pb;
+
+    if (GNUNET_OK !=
+        GNUNET_JSON_parse (ppr,
+                           spec,
+                           NULL, NULL))
+    {
+      GNUNET_break (0);
+      continue;
+    }
+    pb = setup_qrcode ("anastasis_gtk_pay_qrcode_image",
+                       payto);
+    if (NULL == pb)
+    {
+      GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+                  _ ("Failed to initialize QR-code pixbuf for `%s'\n"),
+                  payto);
+      continue;
+    }
+
+    if (0 == index)
+    {
+      GtkImage *image;
+      json_t *args;
+
+      image = GTK_IMAGE (GCG_get_main_window_object (
+                           "anastasis_gtk_pay_qrcode_image"));
+      gtk_image_set_from_pixbuf (image,
+                                 pb);
+      GNUNET_assert (NULL == ra);
+      args = json_pack ("{s:s}",
+                        "payto_uri",
+                        payto);
+      ra = ANASTASIS_redux_action (redux_state,
+                                   "await_payment",
+                                   args,
+                                   &AG_action_cb,
+                                   NULL);
+      json_decref (args);
+    }
+    g_object_unref (pb);
+  }
+  AG_show ("anastasis_gtk_pay_frame");
+  AG_show ("anastasis_gtk_pay_image");
+  AG_show ("anastasis_gtk_main_control_vbox");
+  AG_hide ("anastasis_gtk_main_window_unpaid_box");
+  AG_sensitive ("anastasis_gtk_main_window_prev_button");
+  AG_show ("anastasis_gtk_main_window_prev_button");
+  AG_hide ("anastasis_gtk_main_window_forward_button");
+}
+
+
+/**
+ * Open dialog to allow user to answer security question.
+ *
+ * @param details details about the challenge
+ * @return the dialog object, or NULL on error
+ */
+static GtkDialog *
+diag_question (const json_t *details)
+{
+  GtkBuilder *builder;
+  GtkDialog *ad;
+  GtkLabel *label;
+  const char *instructions;
+
+  builder = GNUNET_GTK_get_new_builder 
("anastasis_gtk_challenge_question.glade",
+                                        NULL);
+  if (NULL == builder)
+  {
+    GNUNET_break (0);
+    return NULL;
+  }
+  ad = GTK_DIALOG (gtk_builder_get_object (builder,
+                                           "anastasis_gtk_c_question_dialog"));
+  label = GTK_LABEL (gtk_builder_get_object (builder,
+                                             "security_question_label"));
+  instructions = json_string_value (json_object_get (details,
+                                                     "instructions"));
+  gtk_label_set_text (label,
+                      instructions);
+  return ad;
+}
+
+
+static GtkDialog *
+diag_code (const json_t *details)
+{
+  GtkBuilder *builder;
+  GtkDialog *ad;
+  GtkLabel *label;
+  const char *instructions;
+
+  builder = GNUNET_GTK_get_new_builder ("anastasis_gtk_challenge_code.glade",
+                                        NULL);
+  if (NULL == builder)
+  {
+    GNUNET_break (0);
+    return NULL;
+  }
+  ad = GTK_DIALOG (gtk_builder_get_object (builder,
+                                           "anastasis_gtk_c_code_dialog"));
+  label = GTK_LABEL (gtk_builder_get_object (builder,
+                                             "challenge_instructions_label"));
+  instructions = json_string_value (json_object_get (details,
+                                                     "instructions"));
+  gtk_label_set_text (label,
+                      instructions);
+  return ad;
+}
+
+
+static void
+action_challenge_solving (void)
+{
+  static struct
+  {
+    const char *type;
+    GtkDialog *(*ctor)(const json_t *details);
+  } type_map [] = {
+    { .type = "question",
+      .ctor = &diag_question },
+    { .type = "sms",
+      .ctor = &diag_code },
+    { .type = "post",
+      .ctor = &diag_code },
+    { .type = "email",
+      .ctor = &diag_code },
+    { .type = NULL,
+      .ctor = NULL }
+  };
+  const char *type;
+  GtkDialog *diag;
+  json_t *challenge = NULL; // FIXME...
+
+  type = json_string_value (json_object_get (challenge,
+                                             "type"));
+  if (NULL == type)
+  {
+    GNUNET_break (0);
+    return;
+  }
+  /* create dialog based on challenge type */
+  for (unsigned int i = 0; NULL != type_map[i].type; i++)
+  {
+    if (0 != strcmp (type_map[i].type,
+                     type))
+      continue;
+    diag = type_map[i].ctor (challenge);
+    break;
+  }
+  /* show dialog */
+  {
+    GtkWidget *toplevel;
+    GtkBox *box;
+    
+    box = GTK_BOX (GCG_get_main_window_object (
+                                             
"anastasis_gtk_open_challenge_box"));
+    toplevel = gtk_widget_get_toplevel (GTK_WIDGET (box));
+    gtk_window_set_transient_for (GTK_WINDOW (diag),
+                                  GTK_WINDOW (toplevel));
+    gtk_window_present (GTK_WINDOW (diag));
+  }
+}
+
+
 static void
 action_recovery_finished (void)
 {
@@ -1232,6 +1541,12 @@ AG_action_cb (void *cls,
       .action = &action_policies_paying },
     { .state = "BACKUP_FINISHED",
       .action = &action_backup_finished },
+    { .state = "CHALLENGE_SELECTING",
+      .action = &action_challenge_selecting },
+    { .state = "CHALLENGE_PAYING",
+      .action = &action_challenge_paying },
+    { .state = "CHALLENGE_SOLVING",
+      .action = &action_challenge_solving },
     { .state = "RECOVERY_FINISHED",
       .action = &action_recovery_finished },
     { .state = NULL,
diff --git a/src/anastasis/anastasis-gtk_handle-auth-delete-button-clicked.c 
b/src/anastasis/anastasis-gtk_handle-auth-delete-button-clicked.c
index cd871a4..b8da026 100644
--- a/src/anastasis/anastasis-gtk_handle-auth-delete-button-clicked.c
+++ b/src/anastasis/anastasis-gtk_handle-auth-delete-button-clicked.c
@@ -57,7 +57,7 @@ anastasis_gtk_authentication_method_delete_button_clicked_cb 
(GObject *object,
   }
   gtk_tree_model_get (model,
                       &iter,
-                      2, &index,
+                      AG_AMMC_INDEX, &index,
                       -1);
   AG_freeze ();
   args = json_pack ("{s:I}",
diff --git a/src/anastasis/anastasis-gtk_handle-auth-edit-provider-clicked.c 
b/src/anastasis/anastasis-gtk_handle-auth-edit-provider-clicked.c
index d6def4d..adbcd67 100644
--- a/src/anastasis/anastasis-gtk_handle-auth-edit-provider-clicked.c
+++ b/src/anastasis/anastasis-gtk_handle-auth-edit-provider-clicked.c
@@ -50,7 +50,7 @@ url_add_button_clicked_cb (GtkButton *button,
   gtk_list_store_insert_with_values (ls,
                                      NULL,
                                      -1,
-                                     0, url,
+                                     AG_PMC_PROVIDER_URL, url,
                                      -1);
   gtk_entry_set_text (entry,
                       "");
@@ -119,7 +119,7 @@ edit_provider_dialog_response_cb (GtkDialog *dialog,
 
       gtk_tree_model_get (tm,
                           &iter,
-                          0, &url,
+                          AG_PMC_PROVIDER_URL, &url,
                           -1);
       if (NULL == json_object_get (providers,
                                    url))
@@ -185,7 +185,7 @@ anastasis_gtk_edit_provider_list_clicked_cb (GtkButton 
*object,
       gtk_list_store_insert_with_values (ls,
                                          NULL,
                                          -1,
-                                         0, url,
+                                         AG_PMC_PROVIDER_URL, url,
                                          -1);
     }
   }
diff --git a/src/anastasis/anastasis-gtk_handle-challenge-code.c 
b/src/anastasis/anastasis-gtk_handle-challenge-code.c
new file mode 100644
index 0000000..1628c60
--- /dev/null
+++ b/src/anastasis/anastasis-gtk_handle-challenge-code.c
@@ -0,0 +1,91 @@
+/*
+     This file is part of anastasis-gtk.
+     Copyright (C) 2021 Anastasis SARL
+
+     Anastasis is free software; you can redistribute it and/or modify
+     it under the terms of the GNU General Public License as published
+     by the Free Software Foundation; either version 3, or (at your
+     option) any later version.
+
+     Anastasis is distributed in the hope that it will be useful, but
+     WITHOUT ANY WARRANTY; without even the implied warranty of
+     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+     General Public License for more details.
+
+     You should have received a copy of the GNU General Public License
+     along with Anastasis; see the file COPYING.  If not, write to the
+     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+     Boston, MA 02110-1301, USA.
+*/
+
+/**
+ * @file src/anastasis/anastasis-gtk_handle-challenge-code.c
+ * @brief Handle dialogs for code returned to challenge address (Email, SMS, 
POST)
+ * @author Christian Grothoff
+ */
+#include <gnunet/platform.h>
+#include <gnunet/gnunet_util_lib.h>
+#include "anastasis-gtk_action.h"
+#include "anastasis-gtk_helper.h"
+#include "anastasis-gtk_handle-identity-changed.h"
+#include <jansson.h>
+
+
+/**
+ * Function called from the secure question challenge dialog upon completion.
+ *
+ * @param dialog the pseudonym selection dialog
+ * @param response_id response code from the dialog
+ * @param user_data the builder of the dialog
+ */
+void
+anastasis_gtk_c_code_dialog_response_cb (GtkDialog *dialog,
+                                         gint response_id,
+                                         gpointer user_data)
+{  
+  GtkBuilder *builder = GTK_BUILDER (user_data);
+  GtkEntry *q;
+  const char *qs;
+  json_t *args;
+
+  if (GTK_RESPONSE_OK != response_id)
+  {
+    gtk_widget_destroy (GTK_WIDGET (dialog));
+    g_object_unref (G_OBJECT (builder));
+    return;
+  }
+  q = GTK_ENTRY (gtk_builder_get_object (builder,
+                                         "anastasis_gtk_c_code_entry"));
+  qs = gtk_entry_get_text (q);
+  args = json_pack ("{s:s}",
+                    "solution",
+                    qs);
+  gtk_widget_destroy (GTK_WIDGET (dialog));
+  g_object_unref (G_OBJECT (builder));
+  AG_freeze ();
+  ra = ANASTASIS_redux_action (redux_state,
+                               "solve_challenge",
+                               args,
+                               &AG_action_cb,
+                               NULL);
+  json_decref (args);
+}
+
+
+void
+anastasis_gtk_c_code_dialog_answer_entry_changed_cb (GtkEntry *entry,
+                                                     gpointer user_data)
+{
+  GtkBuilder *builder = GTK_BUILDER (user_data);
+  GtkEntry *a;
+  const char *as;
+
+  a = GTK_ENTRY (gtk_builder_get_object (builder,
+                                         "anastasis_gtk_c_code_entry"));
+  as = gtk_entry_get_text (a);
+  gtk_widget_set_sensitive (
+                            GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                
"anastasis_gtk_c_code_dialog_btn_ok")),
+                            (NULL != as) &&
+                            (0 < strlen (as)));
+}
diff --git a/src/anastasis/anastasis-gtk_handle-challenge-question.c 
b/src/anastasis/anastasis-gtk_handle-challenge-question.c
new file mode 100644
index 0000000..a62bdc4
--- /dev/null
+++ b/src/anastasis/anastasis-gtk_handle-challenge-question.c
@@ -0,0 +1,91 @@
+/*
+     This file is part of anastasis-gtk.
+     Copyright (C) 2021 Anastasis SARL
+
+     Anastasis is free software; you can redistribute it and/or modify
+     it under the terms of the GNU General Public License as published
+     by the Free Software Foundation; either version 3, or (at your
+     option) any later version.
+
+     Anastasis is distributed in the hope that it will be useful, but
+     WITHOUT ANY WARRANTY; without even the implied warranty of
+     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+     General Public License for more details.
+
+     You should have received a copy of the GNU General Public License
+     along with Anastasis; see the file COPYING.  If not, write to the
+     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+     Boston, MA 02110-1301, USA.
+*/
+
+/**
+ * @file src/anastasis/anastasis-gtk_handle-challenge-question.c
+ * @brief Handle dialogs for secure question
+ * @author Christian Grothoff
+ */
+#include <gnunet/platform.h>
+#include <gnunet/gnunet_util_lib.h>
+#include "anastasis-gtk_action.h"
+#include "anastasis-gtk_helper.h"
+#include "anastasis-gtk_handle-identity-changed.h"
+#include <jansson.h>
+
+
+/**
+ * Function called from the secure question challenge dialog upon completion.
+ *
+ * @param dialog the pseudonym selection dialog
+ * @param response_id response code from the dialog
+ * @param user_data the builder of the dialog
+ */
+void
+anastasis_gtk_c_question_dialog_response_cb (GtkDialog *dialog,
+                                             gint response_id,
+                                             gpointer user_data)
+{
+  GtkBuilder *builder = GTK_BUILDER (user_data);
+  GtkEntry *q;
+  const char *qs;
+  json_t *args;
+
+  if (GTK_RESPONSE_OK != response_id)
+  {
+    gtk_widget_destroy (GTK_WIDGET (dialog));
+    g_object_unref (G_OBJECT (builder));
+    return;
+  }
+  q = GTK_ENTRY (gtk_builder_get_object (builder,
+                                         
"anastasis_gtk_c_question_dialog_answer_entry"));
+  qs = gtk_entry_get_text (q);
+  args = json_pack ("{s:s}",
+                    "solution",
+                    qs);
+  gtk_widget_destroy (GTK_WIDGET (dialog));
+  g_object_unref (G_OBJECT (builder));
+  AG_freeze ();
+  ra = ANASTASIS_redux_action (redux_state,
+                               "solve_challenge",
+                               args,
+                               &AG_action_cb,
+                               NULL);
+  json_decref (args);
+}
+
+
+void
+anastasis_gtk_c_question_dialog_answer_entry_changed_cb (GtkEntry *entry,
+                                                         gpointer user_data)
+{
+  GtkBuilder *builder = GTK_BUILDER (user_data);
+  GtkEntry *a;
+  const char *as;
+
+  a = GTK_ENTRY (gtk_builder_get_object (builder,
+                                         
"anastasis_gtk_c_question_dialog_answer_entry"));
+  as = gtk_entry_get_text (a);  
+  gtk_widget_set_sensitive (
+                            GTK_WIDGET (gtk_builder_get_object (builder,
+                                                                
"anastasis_gtk_c_question_dialog_btn_ok")),
+                            (NULL != as) &&
+                            (0 < strlen (as)));
+}
diff --git a/src/anastasis/anastasis-gtk_handle-continent-activated.c 
b/src/anastasis/anastasis-gtk_handle-continent-activated.c
index ad5d066..5637380 100644
--- a/src/anastasis/anastasis-gtk_handle-continent-activated.c
+++ b/src/anastasis/anastasis-gtk_handle-continent-activated.c
@@ -58,7 +58,7 @@ anastasis_gtk_continent_activated (GtkTreeView *tree_view,
   }
   gtk_tree_model_get (model,
                       &iter,
-                      0, &continent_name,
+                      AG_CMC_CONTINENT_NAME, &continent_name,
                       -1);
   arguments = json_pack ("{s:s}",
                          "continent",
diff --git a/src/anastasis/anastasis-gtk_handle-main-window-forward-clicked.c 
b/src/anastasis/anastasis-gtk_handle-main-window-forward-clicked.c
index 7da3f40..9eb33fc 100644
--- a/src/anastasis/anastasis-gtk_handle-main-window-forward-clicked.c
+++ b/src/anastasis/anastasis-gtk_handle-main-window-forward-clicked.c
@@ -56,9 +56,9 @@ AG_forward_country_selecting (void)
   }
   gtk_tree_model_get (model,
                       &iter,
-                      0, &country_name,
-                      1, &country_code,
-                      2, &country_currency,
+                      AG_CCMC_COUNTRY_NAME, &country_name,
+                      AG_CCMC_COUNTRY_CODE, &country_code,
+                      AG_CCMC_COUNTRY_CURRENCY, &country_currency,
                       -1);
   arguments = json_pack ("{s:s, s:s, s:s}",
                          "country", country_name,
diff --git a/src/anastasis/anastasis-gtk_helper.h 
b/src/anastasis/anastasis-gtk_helper.h
index a340a52..c346cef 100644
--- a/src/anastasis/anastasis-gtk_helper.h
+++ b/src/anastasis/anastasis-gtk_helper.h
@@ -33,6 +33,114 @@
 #include "anastasis-gtk.h"
 
 
+/**
+ * Columns of the continent_liststore.
+ */
+enum AG_ContinentsModelColumns
+  {
+   /**
+    * A gchararray.
+    */
+   AG_CMC_CONTINENT_NAME = 0
+  };
+
+
+/**
+ * Columns of the provider_liststore.
+ */
+enum AG_ProviderModelColumns
+  {
+   /**
+    * A gchararray.
+    */
+   AG_PMC_PROVIDER_URL = 0
+  };
+
+/**
+ * Columns of the country_liststore.
+ */
+enum AG_CountryCodeModelColumns
+  {
+   /**
+    * A gchararray.
+    */
+   AG_CCMC_COUNTRY_NAME = 0,
+   /**
+    * A gchararray.
+    */
+   AG_CCMC_COUNTRY_CODE = 1,
+   /**
+    * A gchararray.
+    */
+   AG_CCMC_COUNTRY_CURRENCY = 2
+  };
+
+/**
+ * Columns of the authentication_methods_liststore.
+ */
+enum AG_AuthenticationMethodsModelColumns
+  {
+   /**
+    * A gchararray.
+    */
+   AG_AMMC_TYPE = 0,
+   /**
+    * A gchararray.
+    */
+   AG_AMMC_VISUALIZATION = 1,
+   /**
+    * A guint.
+    */
+   AG_AMMC_INDEX = 2
+  };
+
+
+/**
+ * Columns of the unpaid_qrcodes_liststore.
+ */
+enum AG_UnpaidQrcodesModelColumns
+  {
+   /**
+    * A GdkPixbuf.
+    */
+   AG_UQRMC_QR_IMAGE = 0,
+   /**
+    * A gchararray.
+    */
+   AG_UQRMC_URL = 1,
+   /**
+    * A gchararray.
+    */
+   AG_UQRMC_PROVIDER = 2
+  };
+
+  
+/**
+ * Columns of the policy_review_treestore.
+ */
+enum AG_PolicyReviewModelColumns
+  {
+   /**
+    * A gchararray.
+    */
+   AG_PRMC_POLICY_NAME = 0,
+   /**
+    * A gchararray.
+    */
+   AG_PRMC_METHOD_TYPE = 1,
+   /**
+    * A gchararray.
+    */
+   AG_PRMC_COST = 2,
+   /**
+    * A gchararray.
+    */
+   AG_PRMC_PROVIDER_URL = 3
+  };
+
+
+
+
 /**
  * Hide widget of the given @a name of the main window
  *

-- 
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]