Commit Diff


commit - e75cff3b66887e210a690a05183719b9ff2ce0bc
commit + e7b3d49450c49c0c58020ebc32625f5ae726aba7
blob - 959fd8f2aeed514cc84b055385ed2d1411a8b0b8
blob + 4bd824afb7a33902e078d4841402f100152751a2
--- src/db.rs
+++ src/db.rs
@@ -268,7 +268,8 @@ impl LibraryDb {
         let effective_limit = if limit == 0 { usize::MAX } else { limit };
         let mut results = Vec::new();
 
-        // Iterate time index in reverse (most recent first)
+        // Iterate time index in reverse to collect the most recent entries first,
+        // then reverse so newest prints at the bottom.
         for item in self.time_tree.iter().rev() {
             if results.len() >= effective_limit {
                 break;
@@ -302,6 +303,7 @@ impl LibraryDb {
             }
         }
 
+        results.reverse();
         Ok(results)
     }
 
@@ -325,7 +327,7 @@ impl LibraryDb {
             }
         }
 
-        results.sort_by_key(|b| std::cmp::Reverse(b.1.timestamp));
+        results.sort_by_key(|b| b.1.timestamp);
         results.truncate(limit);
         Ok(results)
     }
@@ -350,7 +352,7 @@ impl LibraryDb {
             }
         }
 
-        results.sort_by_key(|b| std::cmp::Reverse(b.1.timestamp));
+        results.sort_by_key(|b| b.1.timestamp);
         results.truncate(limit);
         Ok(results)
     }
@@ -389,7 +391,7 @@ impl LibraryDb {
             }
         }
 
-        results.sort_by_key(|b| std::cmp::Reverse(b.1.timestamp));
+        results.sort_by_key(|b| b.1.timestamp);
         results.truncate(limit);
         Ok(results)
     }