From 8bfb2063364b6ae5ef673c4c9b06fda5b1f0162a Mon Sep 17 00:00:00 2001 From: trizen Date: Tue, 8 Dec 2020 21:29:50 +0200 Subject: gtk: added the boolean `autoscroll_to_end` option (disabled by default). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When enabled, the treeview list will be scrolled to the end after clicking "next page". Signed-off-by: Jesús --- bin/gtk-fair-viewer | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bin/gtk-fair-viewer b/bin/gtk-fair-viewer index f00d648..7051a12 100755 --- a/bin/gtk-fair-viewer +++ b/bin/gtk-fair-viewer @@ -219,6 +219,8 @@ my %CONFIG = ( fullscreen => 0, audio_only => 0, + autoscroll_to_end => 0, + # hypervideo support ytdl => 1, ytdl_cmd => undef, # auto-detect @@ -994,9 +996,17 @@ sub new_image_from_pixbuf { # Treeview signals { $treeview->signal_connect('button_press_event', \&menu_popup); + $treeview->signal_connect('size-allocate', \&treeview_scroll_to_end) if $CONFIG{autoscroll_to_end}; $users_treeview->signal_connect('button_press_event', \&users_menu_popup); } +# Scroll treeview to end +sub treeview_scroll_to_end { + my ($widget) = @_; + my $adj = $widget->get_vadjustment; + $adj->set_value($adj->get_upper - $adj->get_page_size); +} + # Menu popup sub menu_popup { my ($treeview, $event) = @_; -- cgit v1.2.3