- my ($self, $opts) = @_;
- my $qs = '';
- my $srch = search($self);
- if (!$opts->{offset}) {
- # this complicated bit cuts /$INBOX/ loading time by
- # over 400ms on my system:
- my ($min, $max) = mm($self)->minmax;
- my $n = $max - $opts->{limit};
- $n = $min if $n < $min;
- for (; $qs eq '' && $n >= $min; --$n) {
- my $smsg = $srch->lookup_article($n) or next;
- $qs = strftime('d:%Y%m%d..', gmtime($smsg->ts));
+ my ($self, $opts, $after, $before) = @_;
+ search($self)->{over_ro}->recent($opts, $after, $before);
+}
+
+sub modified {
+ my ($self) = @_;
+ if (my $srch = search($self)) {
+ my $msgs = $srch->{over_ro}->recent({limit => 1});
+ if (my $smsg = $msgs->[0]) {
+ return $smsg->{ts};