From 774a8bd8b4ed4f65f4f3170dd2a934d516e3d7c2 Mon Sep 17 00:00:00 2001 From: Simon Steinbeiss Date: Thu, 26 Jan 2017 01:14:29 +0100 Subject: [PATCH] Try to fix selection for identified windows in tree --- src/process-tree-view.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/process-tree-view.c b/src/process-tree-view.c index 0687048..e8745c0 100644 --- a/src/process-tree-view.c +++ b/src/process-tree-view.c @@ -799,6 +799,28 @@ xtm_process_tree_view_highlight_pid (XtmProcessTreeView *treeview, guint pid) { gtk_tree_path_free (path); break; } - valid = gtk_tree_model_iter_next (model, &iter); + + if (tree && gtk_tree_model_iter_has_child (model, &iter)) + { + GtkTreeIter parent_iter = iter; + + valid = gtk_tree_model_iter_children (model, &iter, &parent_iter); + } + else if (tree && !gtk_tree_model_iter_has_child (model, &iter)) + { + GtkTreeIter child_iter = iter; + + if (!gtk_tree_model_iter_next (model, &iter)) + { + gtk_tree_model_iter_parent (model, &iter, &child_iter); + gtk_tree_model_iter_next (model, &iter); + } + else + valid = TRUE; + } + else + { + valid = gtk_tree_model_iter_next (model, &iter); + } } }