diff options
author | trizen <trizen@protonmail.com> | 2020-12-08 21:29:50 +0200 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2020-12-15 14:19:02 -0500 |
commit | 8bfb2063364b6ae5ef673c4c9b06fda5b1f0162a (patch) | |
tree | af81f453d256367f165c4642660fc686b3d6217a | |
parent | 8cf51536d781623cba4ffffb7d6ac46d484065ee (diff) | |
download | fair-viewer-8bfb2063364b6ae5ef673c4c9b06fda5b1f0162a.tar.lz fair-viewer-8bfb2063364b6ae5ef673c4c9b06fda5b1f0162a.tar.xz fair-viewer-8bfb2063364b6ae5ef673c4c9b06fda5b1f0162a.zip |
gtk: added the boolean `autoscroll_to_end` option (disabled by default).
When enabled, the treeview list will be scrolled to the end after clicking "next page".
Signed-off-by: Jesús <heckyel@hyperbola.info>
-rwxr-xr-x | bin/gtk-fair-viewer | 10 |
1 files changed, 10 insertions, 0 deletions
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) = @_; |