add hidden prefs to choose old or new style addr and folder matching
authorPaul <paul@claws-mail.org>
Wed, 5 Feb 2014 08:28:28 +0000 (08:28 +0000)
committerPaul <paul@claws-mail.org>
Wed, 5 Feb 2014 08:28:28 +0000 (08:28 +0000)
manual/advanced.xml
src/addr_compl.c
src/foldersel.c
src/prefs_common.c
src/prefs_common.h

index 53e927059b92aa5a7999c09574d5bca0dbd04c55..dfcd319ac71bdb63afdc8947fc668fc2b85f0c8e 100644 (file)
        url="http://www.claws-mail.org/clawsker.php">Clawsker page</ulink>.
     </para>
     <variablelist>
+      <varlistentry>
+       <term><literal>address_search_wildcard</literal></term>
+       <listitem>
+         <para>
+       TAB-address completion in the Compose window will match any part of the
+       string (1) or just the start of the string (0).
+         </para>
+       </listitem>
+      </varlistentry>
       <varlistentry>
        <term><literal>addressbook_use_editaddress_dialog</literal></term>
        <listitem>
          </para>
        </listitem>
       </varlistentry>
+      <varlistentry>
+       <term><literal>folder_search_wildcard</literal></term>
+       <listitem>
+         <para>
+       The type-ahead function in the Select Folder window will match any
+       part of the folder name (1) or just the start of the folder name (0).
+         </para>
+       </listitem>
+      </varlistentry>
       <varlistentry>
        <term><literal>folderview_vscrollbar_policy</literal></term>
        <listitem>
index 7472fc1addd9f4c1147efd6c145b2eef8c9d8cf4..407e6267fe12ff6fe5d2e142e30cf5d4606918c9 100644 (file)
@@ -179,7 +179,8 @@ static gint addr_completion_func(const gchar *needle, const gchar *haystack,
 static void init_all(void)
 {
        g_completion = g_completion_new(completion_func);
-       g_completion_set_compare(g_completion, addr_completion_func);
+       if (prefs_common.address_search_wildcard)
+               g_completion_set_compare(g_completion, addr_completion_func);
        cm_return_if_fail(g_completion != NULL);
 }
 
index a34d513f6e512fd134d018b49f74c892ab155798..02a0982128b8f656c3d2a8d44e4c39d37dfd9ab5 100644 (file)
@@ -288,8 +288,9 @@ static void foldersel_create(void)
        gtk_tree_view_set_enable_tree_lines(GTK_TREE_VIEW(treeview), FALSE);
        gtk_tree_view_set_search_column(GTK_TREE_VIEW(treeview),
                                        FOLDERSEL_FOLDERNAME);
-       gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(treeview),
-                       foldersel_search_name_func, NULL, NULL);
+       if (prefs_common.folder_search_wildcard)
+               gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(treeview),
+                               foldersel_search_name_func, NULL, NULL);
 
        selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview));
        gtk_tree_selection_set_mode(selection, GTK_SELECTION_BROWSE);
index 09680b313a229ef6f53c19142206c115a57897cd..e2c676b7a455d4c7f1f408e247c114e83fd58702 100644 (file)
@@ -1173,6 +1173,11 @@ static PrefParam param[] = {
        {"diff_hunk_color", "#a52a2a", &prefs_common.diff_hunk_color, P_COLOR,
         NULL, NULL, NULL},
 
+       {"folder_search_wildcard", "TRUE", &prefs_common.folder_search_wildcard, P_BOOL,
+        NULL, NULL, NULL},
+       {"address_search_wildcard", "TRUE", &prefs_common.address_search_wildcard, P_BOOL,
+        NULL, NULL, NULL},
+
        {NULL, NULL, NULL, P_OTHER, NULL, NULL, NULL}
 };
 
index 11b3e5578fec8448fbb9185cdf290f0fb5af1ffc..a0ce72152d2aad125f9dccbdd66ae40909b10581 100644 (file)
@@ -520,6 +520,9 @@ struct _PrefsCommon
        gulong diff_added_color;
        gulong diff_deleted_color;
        gulong diff_hunk_color;
+       
+       gboolean folder_search_wildcard;
+       gboolean address_search_wildcard;
 };
 
 extern PrefsCommon prefs_common;