gui/sidebar: Restore expanded rows on startup
Fixes #94: Playlist heading not open by default Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
dc53ae271b
commit
e876f8125f
|
@ -110,6 +110,10 @@ bool __gui_playlist_init_idle()
|
||||||
gtk_tree_model_get_iter_first(filter, &iter);
|
gtk_tree_model_get_iter_first(filter, &iter);
|
||||||
gtk_tree_selection_select_iter(selection, &iter);
|
gtk_tree_selection_select_iter(selection, &iter);
|
||||||
|
|
||||||
|
do {
|
||||||
|
gui_sidebar_filter_set_expand(&iter);
|
||||||
|
} while (gtk_tree_model_iter_next(filter, &iter));
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -325,6 +325,24 @@ void gui_sidebar_filter_path_select(GtkTreePath *path)
|
||||||
g_free(name);
|
g_free(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void gui_sidebar_filter_set_expand(GtkTreeIter *iter)
|
||||||
|
{
|
||||||
|
gchar *name = __gui_sidebar_filter_iter_name(iter);
|
||||||
|
gchar *setting = g_strdup_printf("gui.sidebar.expand.%s", name);
|
||||||
|
GtkTreePath *path;
|
||||||
|
|
||||||
|
if (settings_get(setting) == true) {
|
||||||
|
path = gtk_tree_model_get_path(
|
||||||
|
GTK_TREE_MODEL(gui_sidebar_filter()), iter);
|
||||||
|
|
||||||
|
gtk_tree_view_expand_row(gui_sidebar_treeview(), path, false);
|
||||||
|
gtk_tree_path_free(path);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_free(setting);
|
||||||
|
g_free(name);
|
||||||
|
}
|
||||||
|
|
||||||
void gui_sidebar_filter_row_expanded(GtkTreeIter *iter, bool expanded)
|
void gui_sidebar_filter_row_expanded(GtkTreeIter *iter, bool expanded)
|
||||||
{
|
{
|
||||||
gchar *name = __gui_sidebar_filter_iter_name(iter);
|
gchar *name = __gui_sidebar_filter_iter_name(iter);
|
||||||
|
|
|
@ -44,6 +44,9 @@ void gui_sidebar_iter_update(GtkTreeIter *);
|
||||||
/* Called to set the playlist at the given iterator as the default. */
|
/* Called to set the playlist at the given iterator as the default. */
|
||||||
void gui_sidebar_filter_path_select(GtkTreePath *);
|
void gui_sidebar_filter_path_select(GtkTreePath *);
|
||||||
|
|
||||||
|
/* Called to expand or collapse sidebar rows from the user's settings. */
|
||||||
|
void gui_sidebar_filter_set_expand(GtkTreeIter *);
|
||||||
|
|
||||||
/* Called when a playlist treeview row is expanded or collapsed. */
|
/* Called when a playlist treeview row is expanded or collapsed. */
|
||||||
void gui_sidebar_filter_row_expanded(GtkTreeIter *, bool);
|
void gui_sidebar_filter_row_expanded(GtkTreeIter *, bool);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue