[Xfce4-commits] [xfce/xfce4-settings] 02/02: settings-manager: Improve search by including keywords (Bug #10694)
noreply at xfce.org
noreply at xfce.org
Fri Feb 28 22:06:44 CET 2020
This is an automated email from the git hooks/post-receive script.
o c h o s i p u s h e d a c o m m i t t o b r a n c h m a s t e r
in repository xfce/xfce4-settings.
commit 8f1c9f36cb79ec7ae128061cd5ab272d772cebcd
Author: Simon Steinbeiss <simon.steinbeiss at elfenbeinturm.at>
Date: Fri Feb 28 22:03:59 2020 +0100
settings-manager: Improve search by including keywords (Bug #10694)
---
xfce4-settings-manager/xfce-settings-manager-dialog.c | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/xfce4-settings-manager/xfce-settings-manager-dialog.c b/xfce4-settings-manager/xfce-settings-manager-dialog.c
index 612adb9..889c9a6 100644
--- a/xfce4-settings-manager/xfce-settings-manager-dialog.c
+++ b/xfce4-settings-manager/xfce-settings-manager-dialog.c
@@ -1249,10 +1249,12 @@ xfce_settings_manager_dialog_menu_reload (XfceSettingsManagerDialog *dialog)
GList *lnext;
GarconMenuDirectory *directory;
GList *items, *lp;
+ GList *keywords, *kli;
gint i = 0;
gchar *item_text;
gchar *normalized;
gchar *filter_text;
+ GString *item_keywords;
DialogCategory *category;
g_return_if_fail (XFCE_IS_SETTINGS_MANAGER_DIALOG (dialog));
@@ -1298,10 +1300,19 @@ xfce_settings_manager_dialog_menu_reload (XfceSettingsManagerDialog *dialog)
items = g_list_sort (items, xfce_settings_manager_dialog_menu_sort);
for (lp = items; lp != NULL; lp = lp->next)
{
- /* create independent search string */
- item_text = g_strdup_printf ("%s\n%s",
+ /* create independent search string based on name, comment and keywords */
+ keywords = garcon_menu_item_get_keywords (lp->data);
+ item_keywords = g_string_new (NULL);
+ for (kli = keywords; kli != NULL; kli = kli->next)
+ {
+ g_string_append (item_keywords, kli->data);
+ }
+ item_text = g_strdup_printf ("%s\n%s\n%s",
garcon_menu_item_get_name (lp->data),
- garcon_menu_item_get_comment (lp->data));
+ garcon_menu_item_get_comment (lp->data),
+ item_keywords->str);
+ g_string_free (item_keywords, FALSE);
+ g_list_free (kli);
normalized = g_utf8_normalize (item_text, -1, G_NORMALIZE_DEFAULT);
g_free (item_text);
filter_text = g_utf8_casefold (normalized, -1);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list