aboutsummaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/gtk-straw-viewer23
-rwxr-xr-xbin/straw-viewer23
2 files changed, 23 insertions, 23 deletions
diff --git a/bin/gtk-straw-viewer b/bin/gtk-straw-viewer
index bd21d26..4e181b5 100755
--- a/bin/gtk-straw-viewer
+++ b/bin/gtk-straw-viewer
@@ -3304,9 +3304,9 @@ sub comments_row_activated {
if (defined($url) and $url =~ m{^https?://}) { # load more comments
- #my $token = $feeds_liststore->get($iter, 2);
+ my $token = $feeds_liststore->get($iter, 2);
$feeds_liststore->remove($iter);
- my $results = $yv_obj->next_page($url);
+ my $results = $yv_obj->next_page_with_token($url, $token);
if ($yv_utils->has_entries($results)) {
display_comments($results);
@@ -3382,6 +3382,7 @@ sub display_comments {
my $url = $results->{url};
my $video_id = $results->{results}{videoId};
my $comments = $results->{results}{comments} // [];
+ my $continuation = $results->{results}{continuation} // [];
foreach my $comment (@{$comments}) {
@@ -3452,15 +3453,15 @@ sub display_comments {
#~ }
}
- #~ if (exists $res->{nextPageToken}) {
- #~ my $iter = $feeds_liststore->append;
- #~ $feeds_liststore->set(
- #~ $iter,
- #~ 0 => "<big><b>LOAD MORE</b></big>",
- #~ 1 => $url,
- #~ 2 => $res->{nextPageToken},
- #~ );
- #~ }
+ if (defined $continuation) {
+ my $iter = $feeds_liststore->append;
+ $feeds_liststore->set(
+ $iter,
+ 0 => "<big><b>LOAD MORE</b></big>",
+ 1 => $url,
+ 2 => $continuation,
+ );
+ }
return 1;
}
diff --git a/bin/straw-viewer b/bin/straw-viewer
index d31e9ed..f904e1d 100755
--- a/bin/straw-viewer
+++ b/bin/straw-viewer
@@ -2263,6 +2263,7 @@ sub general_options {
my $callback = $args{sub};
my $results = $args{res};
my $info = $args{info};
+ my $token = $args{token};
if (not defined($option)) {
return;
@@ -2272,26 +2273,22 @@ sub general_options {
main_quit(0);
}
elsif ($option =~ /^(?:n|next)\z/ and defined $url) {
- if (defined $info->{nextPageToken}) {
- my $request = $yv_obj->next_page($url, $info->{nextPageToken});
+ if (defined $token) {
+ my $request = $yv_obj->next_page_with_token($url, $token);
$callback->($request);
}
else {
- warn_last_page();
+ my $request = $yv_obj->next_page($url);
+ $callback->($request);
}
}
+ elsif ($option =~ /^(?:b|back|p|prev|previous)\z/ and defined $url) {
+ my $request = $yv_obj->previous_page($url);
+ $callback->($request);
+ }
elsif ($option =~ /^(?:R|refresh)\z/ and defined $url) {
@{$results} = @{$yv_obj->_get_results($url)->{results}{items}};
}
- elsif ($option =~ /^(?:b|back|p|prev|previous)\z/ and defined $url) {
- if (defined $info->{prevPageToken}) {
- my $request = $yv_obj->previous_page($url, $info->{prevPageToken});
- $callback->($request);
- }
- else {
- warn_first_page();
- }
- }
elsif ($option eq 'login') {
authenticate();
}
@@ -2631,6 +2628,7 @@ sub print_comments {
my $url = $results->{url};
my $comments = $results->{results}{comments} // [];
+ my $token = $results->{results}{continuation} // [];
my $i = 0;
foreach my $comment (@{$comments}) {
@@ -2689,6 +2687,7 @@ sub print_comments {
info => $results,
mode => 'comments',
args => [$videoID],
+ token => $token,
)
) {
## ok