aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/misc/e-source-selector.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/misc/e-source-selector.c')
-rw-r--r--widgets/misc/e-source-selector.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/widgets/misc/e-source-selector.c b/widgets/misc/e-source-selector.c
index 1a0e0d1fbd..466930ed4f 100644
--- a/widgets/misc/e-source-selector.c
+++ b/widgets/misc/e-source-selector.c
@@ -53,6 +53,7 @@ struct _ESourceSelectorPrivate {
gboolean toggled_last;
gboolean checkboxes_shown;
gboolean toggle_selection;
+ gboolean select_new;
};
typedef struct {
@@ -276,6 +277,10 @@ rebuild_model (ESourceSelector *selector)
row_ref = g_hash_table_lookup (rebuild_data->remaining_uids, e_source_peek_uid (source));
if (!row_ref) {
+ if (selector->priv->select_new) {
+ select_source (selector, source);
+ rebuild_data->selection_changed = TRUE;
+ }
gtk_tree_store_append (GTK_TREE_STORE (tree_store), &child_iter, &iter);
gtk_tree_store_set (GTK_TREE_STORE (tree_store), &child_iter, 0, source, -1);
@@ -726,6 +731,7 @@ init (ESourceSelector *selector)
priv->toggled_last = FALSE;
priv->checkboxes_shown = TRUE;
+ priv->select_new = FALSE;
priv->selected_sources = create_selected_sources_hash ();
@@ -891,7 +897,7 @@ e_source_selector_selection_shown (ESourceSelector *selector)
* @selector:
* @state:
*
- * Set the source selectr behaviour, whether you can toggle the
+ * Set the source selector behaviour, whether you can toggle the
* current selection or not.
**/
void
@@ -903,6 +909,21 @@ e_source_selector_set_toggle_selection(ESourceSelector *selector, gboolean state
}
/**
+ * e_source_selector_set_select_new:
+ * @selector: An ESourceSelector widget
+ * @state: A gboolean
+ *
+ * Set whether or not to select new sources added to @selector.
+ **/
+void
+e_source_selector_set_select_new (ESourceSelector *selector, gboolean state)
+{
+ g_return_if_fail (E_IS_SOURCE_SELECTOR (selector));
+
+ selector->priv->select_new = state;
+}
+
+/**
* e_source_selector_select_source:
* @selector: An ESourceSelector widget
* @source: An ESource.