[epiphany] clear-data-view: Remove timespan combo box



commit 6d364e2009d797d4f188999753d45272fb8f69ff
Author: Yetizone <andreii lisita gmail com>
Date:   Tue Jun 30 20:48:02 2020 +0300

    clear-data-view: Remove timespan combo box
    
    Implicitly use forever timespan instead
    We do this because cookies don't work with timespans

 src/preferences/clear-data-view.c    | 80 ++----------------------------------
 src/resources/gtk/clear-data-view.ui | 29 +------------
 2 files changed, 5 insertions(+), 104 deletions(-)
---
diff --git a/src/preferences/clear-data-view.c b/src/preferences/clear-data-view.c
index bd0a88f29..45ec63d1c 100644
--- a/src/preferences/clear-data-view.c
+++ b/src/preferences/clear-data-view.c
@@ -29,23 +29,13 @@
 #include "ephy-history-service.h"
 #include "ephy-embed-shell.h"
 
-typedef enum {
-  TIMESPAN_HOUR,
-  TIMESPAN_DAY,
-  TIMESPAN_WEEK,
-  TIMESPAN_MONTH,
-  TIMESPAN_FOREVER
-} Timespan;
-
 struct _ClearDataView {
   EphyDataView parent_instance;
 
   GtkWidget *treeview;
   GtkTreeModel *treestore;
   GtkTreeModelFilter *treemodelfilter;
-  GtkWidget *timespan_combo;
 
-  Timespan timespan;
   GCancellable *cancellable;
 };
 
@@ -94,28 +84,6 @@ get_website_data_manger (void)
   return webkit_web_context_get_website_data_manager (web_context);
 }
 
-static inline GTimeSpan
-get_timespan_for_combo_value (Timespan timespan)
-{
-  switch (timespan) {
-    case TIMESPAN_HOUR:
-      return G_TIME_SPAN_HOUR;
-    case TIMESPAN_DAY:
-      return G_TIME_SPAN_DAY;
-    case TIMESPAN_WEEK:
-      return G_TIME_SPAN_DAY * 7;
-    case TIMESPAN_MONTH:
-      return G_TIME_SPAN_DAY * 7 * 4;
-    case TIMESPAN_FOREVER:
-      return 0;
-    default:
-      break;
-  }
-
-  g_assert_not_reached ();
-  return 0;
-}
-
 static void
 website_data_fetched_cb (WebKitWebsiteDataManager *manager,
                          GAsyncResult             *result,
@@ -166,7 +134,7 @@ website_data_fetched_cb (WebKitWebsiteDataManager *manager,
                                          ACTIVE_COLUMN, data_entries[i].initial_state,
                                          NAME_COLUMN, webkit_website_data_get_name (data),
                                          DATA_COLUMN, webkit_website_data_ref (data),
-                                         SENSITIVE_COLUMN, clear_data_view->timespan == TIMESPAN_FOREVER,
+                                         SENSITIVE_COLUMN, TRUE,
                                          -1);
       empty = FALSE;
     }
@@ -196,13 +164,10 @@ on_clear_all_clicked (ClearDataView *clear_data_view)
   WebKitWebsiteDataTypes types_to_clear = 0;
   GList *data_to_remove = NULL;
   WebKitWebsiteDataTypes types_to_remove = 0;
-  GTimeSpan timespan;
 
   if (!gtk_tree_model_get_iter_first (clear_data_view->treestore, &top_iter))
     return;
 
-  timespan = get_timespan_for_combo_value (clear_data_view->timespan);
-
   do {
     guint type;
     gboolean active;
@@ -212,9 +177,9 @@ on_clear_all_clicked (ClearDataView *clear_data_view)
                         TYPE_COLUMN, &type,
                         ACTIVE_COLUMN, &active,
                         -1);
-    if (active && (timespan || all_children_visible (clear_data_view->treestore, &top_iter, 
clear_data_view->treemodelfilter))) {
+    if (active && all_children_visible (clear_data_view->treestore, &top_iter, 
clear_data_view->treemodelfilter)) {
       types_to_clear |= type;
-    } else if (!timespan && gtk_tree_model_iter_children (clear_data_view->treestore, &child_iter, 
&top_iter)) {
+    } else if (gtk_tree_model_iter_children (clear_data_view->treestore, &child_iter, &top_iter)) {
       gboolean empty = TRUE;
 
       do {
@@ -242,7 +207,7 @@ on_clear_all_clicked (ClearDataView *clear_data_view)
 
   if (types_to_clear) {
     webkit_website_data_manager_clear (get_website_data_manger (),
-                                       types_to_clear, timespan,
+                                       types_to_clear, 0,
                                        NULL, NULL, NULL);
   }
 
@@ -326,38 +291,6 @@ item_toggled_cb (GtkCellRendererToggle *renderer,
   gtk_tree_path_free (path);
 }
 
-static gboolean
-update_item_sensitivity (GtkTreeModel  *model,
-                         GtkTreePath   *path,
-                         GtkTreeIter   *iter,
-                         ClearDataView *clear_data_view)
-{
-  if (!gtk_tree_model_iter_has_child (model, iter)) {
-    gtk_tree_store_set (GTK_TREE_STORE (model), iter,
-                        SENSITIVE_COLUMN, clear_data_view->timespan == TIMESPAN_FOREVER,
-                        -1);
-  }
-
-  return FALSE;
-}
-
-static void
-timespan_combo_changed_cb (GtkComboBox   *combo,
-                           ClearDataView *clear_data_view)
-{
-  gint active;
-  gboolean was_forever;
-
-  active = gtk_combo_box_get_active (combo);
-  was_forever = clear_data_view->timespan == TIMESPAN_FOREVER;
-  clear_data_view->timespan = active;
-  if (active == TIMESPAN_FOREVER || was_forever) {
-    gtk_tree_model_foreach (clear_data_view->treestore,
-                            (GtkTreeModelForeachFunc)update_item_sensitivity,
-                            clear_data_view);
-  }
-}
-
 static void
 search_text_changed_cb (ClearDataView *clear_data_view)
 {
@@ -427,9 +360,7 @@ clear_data_view_class_init (ClearDataViewClass *klass)
   gtk_widget_class_bind_template_child (widget_class, ClearDataView, treeview);
   gtk_widget_class_bind_template_child (widget_class, ClearDataView, treestore);
   gtk_widget_class_bind_template_child (widget_class, ClearDataView, treemodelfilter);
-  gtk_widget_class_bind_template_child (widget_class, ClearDataView, timespan_combo);
   gtk_widget_class_bind_template_callback (widget_class, item_toggled_cb);
-  gtk_widget_class_bind_template_callback (widget_class, timespan_combo_changed_cb);
   gtk_widget_class_bind_template_callback (widget_class, on_clear_all_clicked);
   gtk_widget_class_bind_template_callback (widget_class, search_text_changed_cb);
 }
@@ -444,9 +375,6 @@ clear_data_view_init (ClearDataView *clear_data_view)
                                           clear_data_view,
                                           NULL);
 
-  gtk_combo_box_set_active (GTK_COMBO_BOX (clear_data_view->timespan_combo),
-                            clear_data_view->timespan);
-
   ephy_data_view_set_is_loading (EPHY_DATA_VIEW (clear_data_view), TRUE);
 
   clear_data_view->cancellable = g_cancellable_new ();
diff --git a/src/resources/gtk/clear-data-view.ui b/src/resources/gtk/clear-data-view.ui
index 064d7260b..963b837b9 100644
--- a/src/resources/gtk/clear-data-view.ui
+++ b/src/resources/gtk/clear-data-view.ui
@@ -45,15 +45,6 @@
                 <property name="margin_top">6</property>
                 <property name="margin_bottom">6</property>
                 <property name="spacing">12</property>
-                <child>
-                  <object class="GtkLabel">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">You can select a period of time to clear data 
for all websites modified in that period. If you choose from the beginning of time, then you can also clear 
data only for particular websites.</property>
-                    <property name="xalign">0</property>
-                    <property name="wrap">True</property>
-                    <property name="justify">left</property>
-                  </object>
-                </child>
                 <child>
                   <object class="GtkBox">
                     <property name="visible">True</property>
@@ -69,32 +60,14 @@
                         <child>
                           <object class="GtkLabel">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Clear selected personal data 
_from:</property>
+                            <property name="label" translatable="yes">Clear selected personal 
data:</property>
                             <property name="use-underline">True</property>
-                            <property name="mnemonic-widget">timespan_combo</property>
                             <property name="halign">start</property>
                             <property name="xalign">0</property>
                             <property name="wrap">True</property>
                             <property name="justify">left</property>
                           </object>
                         </child>
-                        <child>
-                          <object class="GtkComboBoxText" id="timespan_combo">
-                            <property name="visible">True</property>
-                            <property name="halign">end</property>
-                            <signal name="changed" handler="timespan_combo_changed_cb"/>
-                            <items>
-                              <item translatable="yes">the past hour</item>
-                              <item translatable="yes">the past day</item>
-                              <item translatable="yes">the past week</item>
-                              <item translatable="yes">the past four weeks</item>
-                              <item translatable="yes">the beginning of time</item>
-                            </items>
-                          </object>
-                          <packing>
-                            <property name="expand">False</property>
-                          </packing>
-                        </child>
                       </object>
                     </child>
                     <child>


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