From ed490f6252e40d33f30a0abaaff7367e75ef0527 Mon Sep 17 00:00:00 2001 From: Qball Cow Date: Sat, 23 Oct 2010 14:55:01 +0200 Subject: [PATCH] Scroll per row --- src/plugin.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/plugin.c b/src/plugin.c index 3aa8d06..af3d112 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -177,11 +177,11 @@ static gboolean albumview_scroll_event(GtkWidget *event_box, GdkEventScroll *eve if(self->priv->current_item == NULL) return FALSE; if(event->direction == GDK_SCROLL_UP) { - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-self->priv->supported_columns; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-1;//self->priv->supported_columns; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; }else if(event->direction == GDK_SCROLL_DOWN) { - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+self->priv->supported_columns; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+1;//self->priv->supported_columns; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; } @@ -193,20 +193,20 @@ static gboolean albumview_key_press_event(GtkWidget *event_box, GdkEventKey *eve if(self->priv->current_item == NULL) return FALSE; if(event->keyval == GDK_Up){ - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-self->priv->supported_columns; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-1;//self->priv->supported_columns; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; }else if (event->keyval == GDK_Down){ - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+self->priv->supported_columns; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+1;//self->priv->supported_columns; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; }else if (event->keyval == GDK_Page_Up) { - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-self->priv->supported_columns*self->priv->supported_rows; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))-/*self->priv->supported_columns**/self->priv->supported_rows; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; }else if (event->keyval == GDK_Page_Down) { - int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+self->priv->supported_columns*self->priv->supported_rows; + int value = gtk_range_get_value(GTK_RANGE(self->priv->slider_scale))+/*self->priv->supported_columns**/self->priv->supported_rows; gtk_range_set_value(GTK_RANGE(self->priv->slider_scale), value); return TRUE; @@ -651,7 +651,7 @@ static GtkWidget * create_button(AlbumViewPlugin *self, MpdData_real *complete_l gtk_widget_set_has_tooltip(GTK_WIDGET(item), FALSE); gmpc_metaimage_set_squared(GMPC_METAIMAGE(item), TRUE); - gmpc_metaimage_update_cover_from_song_delayed(GMPC_METAIMAGE(item), complete_list_iter->song); + gmpc_metaimage_update_cover_from_song/*_delayed*/(GMPC_METAIMAGE(item), complete_list_iter->song); gtk_box_pack_start(GTK_BOX(vbox), item, TRUE, TRUE, 0); /* Set artist name */ @@ -742,7 +742,8 @@ static void filter_list(GtkEntry *entry, gpointer data) { gtk_widget_set_sensitive(GTK_WIDGET(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); + MAX(items/self->priv->supported_columns, 1)); +// ((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_WIDGET(self->priv->slider_scale), FALSE); @@ -755,7 +756,7 @@ static void filter_list(GtkEntry *entry, gpointer data) static void position_changed(GtkRange *range, gpointer data) { AlbumViewPlugin *self = ALBUM_VIEW_PLUGIN(data); - gint i=0,value = (int)gtk_range_get_value(range); + gint i=0,value = ((int)gtk_range_get_value(range))*self->priv->supported_columns; self->priv->current_item = g_list_first(self->priv->current_item); for(i=0;ipriv->current_item && self->priv->current_item->next; self->priv->current_item = self->priv->current_item->next){i++;} update_view(self); @@ -798,11 +799,12 @@ 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); - if((items-self->priv->supported_rows*self->priv->supported_columns) > 0) + if((items-self->priv->supported_rows) > 0) { gtk_widget_set_sensitive(GTK_WIDGET(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); + MAX(items/self->priv->supported_columns, 1)); + // ((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_WIDGET(self->priv->slider_scale), FALSE); -- 2.11.4.GIT