From b9233790620261a98ea823eb169bf1e02cfa542b Mon Sep 17 00:00:00 2001 From: Qball Cow Date: Sun, 10 May 2009 16:35:44 +0200 Subject: [PATCH] Make the slider range more logic --- src/plugin.c | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/src/plugin.c b/src/plugin.c index df74357..5a2b444 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -553,8 +553,16 @@ static void filter_list(GtkEntry *entry, gpointer data) } if(self->priv->current_item) g_list_free(self->priv->current_item); self->priv->current_item = g_list_first(list); - - gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0, (items>0)?items:1); + if((items-self->priv->supported_rows*self->priv->supported_columns) > 0) + { + gtk_widget_set_sensitive(GTK_RANGE(self->priv->slider_scale), TRUE); + gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0, + ((items-self->priv->supported_rows*self->priv->supported_columns)>0)?(items-self->priv->supported_rows*self->priv->supported_columns):1); + } + else{ + gtk_widget_set_sensitive(GTK_RANGE(self->priv->slider_scale), FALSE); + gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0,1); + } gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), 0); update_view(self); } @@ -605,7 +613,16 @@ static gboolean update_view_real(AlbumViewPlugin *self) self->priv->current_item = g_list_append(self->priv->current_item, complete_list_iter); } self->priv->current_item = g_list_first(self->priv->current_item); - gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0, items); + if((items-self->priv->supported_rows*self->priv->supported_columns) > 0) + { + gtk_widget_set_sensitive(GTK_RANGE(self->priv->slider_scale), TRUE); + gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0, + ((items-self->priv->supported_rows*self->priv->supported_columns)>0)?(items-self->priv->supported_rows*self->priv->supported_columns):1); + } + else{ + gtk_widget_set_sensitive(GTK_RANGE(self->priv->slider_scale), FALSE); + gtk_range_set_range(GTK_RANGE(self->priv->slider_scale), 0,1); + } gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), 0); } -- 2.11.4.GIT