Implement favorites and recent folders #12

Open
opened 2026-01-27 07:08:46 +00:00 by maj · 0 comments
Owner

Implement a persistence layer to store user's favorite folders and track recently used folders.

Tasks

  • Create shared/include/nextcloud/folder_history.hpp
  • Implement favorites storage
  • Implement recent folders tracking (LRU cache)
  • Make max recent folders configurable
  • Save/load from JSON file
  • Handle file I/O errors gracefully
  • Write unit tests

JSON Format

{
  "favorites": [
    "/Photos",
    "/Screenshots",
    "/Videos"
  ],
  "recent": [
    "/Photos/2026",
    "/Screenshots",
    "/Documents"
  ]
}

Acceptance Criteria

  • Can add/remove favorites
  • Recent folders LRU working
  • Persists to JSON file
  • Loads correctly on startup
  • Max recent folders respected
  • Unit tests passing
Implement a persistence layer to store user's favorite folders and track recently used folders. ## Tasks - [ ] Create `shared/include/nextcloud/folder_history.hpp` - [ ] Implement favorites storage - [ ] Implement recent folders tracking (LRU cache) - [ ] Make max recent folders configurable - [ ] Save/load from JSON file - [ ] Handle file I/O errors gracefully - [ ] Write unit tests ## JSON Format ```json { "favorites": [ "/Photos", "/Screenshots", "/Videos" ], "recent": [ "/Photos/2026", "/Screenshots", "/Documents" ] } ``` ## Acceptance Criteria - [ ] Can add/remove favorites - [ ] Recent folders LRU working - [ ] Persists to JSON file - [ ] Loads correctly on startup - [ ] Max recent folders respected - [ ] Unit tests passing
maj added this to the Milestone 2: Shared Library (libnextcloud) milestone 2026-01-27 07:08:46 +00:00
maj added the priority:lowfeaturelibrary labels 2026-01-27 07:08:46 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: maj/nextcloud-share#12