Commit Graph
52 Commits
Author SHA1 Message Date
Drew Weymouth cbbdad3a10 add debouncing for gridview loading 2025-02-21 07:58:56 -08:00
Drew Weymouth e10d167350 fix loading dots not dismissing when clearing search field before completion 2025-02-13 19:31:22 -03:00
Drew Weymouth 61bfbeb349 more fyne.Do updates 2025-02-08 08:35:34 -03:00
Drew Weymouth 0f74bee746 hook up tap handling and action dispatch 2024-12-28 20:06:15 -08:00
Drew Weymouth f702ef5c31 hook up favorite status with GridView items 2024-12-28 16:37:59 -08:00
Drew Weymouth ff3b1addf8 show full OpenSubsonic date where available 2024-12-23 17:23:26 -08:00
Drew Weymouth 800a15683d fix scrolling performance of grid views when not showing album year 2024-12-21 11:13:12 -08:00
ericwyn 6ab3b20a90 i18n: update i18n references on menu labels, update chinese translation 2024-07-25 15:16:47 +08:00
Drew Weymouth c79da457bb fix some missed localizations 2024-07-24 19:46:51 -07:00
Drew Weymouth edf85a4162 add option to show album years in grid views 2024-06-27 17:44:41 -07:00
Drew Weymouth b7af1e716c use radio icon for image placeholder for radio stations 2024-06-01 17:42:40 -07:00
Drew Weymouth 0c7c1f10ab add new icon for Play Next menu item 2024-04-13 08:05:42 -07:00
Tanguy Rossel 63bdfb5f87 WIP: feat: add "Play next" MenuItem 2024-04-04 08:39:14 +02:00
Drew Weymouth 469369081f use Fyne 2.5 ColumnCount() API for GridWrap 2024-03-31 09:28:30 -07:00
Michael Manganiello 66658b1401 misc: Migrate Artists page to GridView
Remove custom page implementation for Artists, and instead rely on the
generic `GridView` approach. This also simplifies adding new
sorting/filtering options as next improvements.

The new `ArtistFilter` is a dummy implementation without any real
filters at the moment.

Also, the `go-jellyfin` upgrade is needed to correctly display the album
count for each artist.
2024-03-30 12:42:48 -03:00
Michael Manganiello a220243279 misc: Decouple Grid view from Albums
The Grid view and related components were highly coupled to Albums,
including the filter button that is currently used only for album
filtering.

As part of the migration of Artists to Grid view, this is the smallest
possible change to convert many of the existing code to
generics/interfaces that will allow different media to be displayed and
filtered by using Grid views.

The main changes in this diff are:

* Introduction of generics for Media types (`M`) and Filter options
  (`F`), which can be later extended to other entities besides Albums.
* Complete decoupling of `GridViewPage` and related components from
  Albums (making these pages also generic).
* Refactoring of Subsonic/Jellyfin specific code to understand these new
  generics when dealing with filtering logic.
2024-03-11 00:44:20 -03:00
Michael Manganiello a6fefc992d Refactor and temporarily disable sharing artists 2024-03-03 21:01:48 -03:00
Michael Manganiello 9d3725cb51 feat: Add Share option for artists, albums, and tracks
This feature is only available on the Subsonic media provider. Using a
Jellyfin server will make Supersonic hide the "Share" option.

* Artists: Option available in grid view and in Artist view.
* Albums: Option available in grid view and in Album view.
* Tracks: Option available in tracklist, when a single track is selected.
2024-03-03 20:44:58 -03:00
Drew Weymouth daac2c8566 fix keyboard scrolling weirdness by updating Fyne fork 2024-02-22 17:25:46 -08:00
Drew Weymouth 8d038ced64 unfocus grid view items when tapping between them 2024-02-18 09:19:37 -08:00
Drew Weymouth 268860b3ea Fix #327: show loading dots when search in progress but no results yet 2024-02-17 11:17:06 -08:00
Drew Weymouth a46b9559bf make sure to always update itemForID maps for focus traversal 2024-02-17 08:22:21 -08:00
Drew Weymouth 0cc497efde reset itemForIndex map properly in GridView 2024-02-15 17:21:18 -08:00
Drew Weymouth 93863ad753 fix nil itemForIndex map in initialization of GridView from state 2024-02-15 17:09:43 -08:00
Drew Weymouth 7943b17199 fix regression with not updating grid view items occasionally 2024-02-02 08:55:38 -08:00
Drew Weymouth 7e8a4d6d37 Updates #22: add focus arrow key navigation to grid view 2024-02-02 08:44:52 -08:00
Drew Weymouth e4342ac135 Add icons to menu items 2024-01-06 16:24:23 -08:00
Drew Weymouth 7d7d315d74 refactor: move ImageLoader to ui/util 2023-11-05 14:30:57 -08:00
Drew Weymouth e10b751a4f some work on the quick search dialog + image load refactoring 2023-11-05 14:07:52 -08:00
Drew Weymouth b24321ee40 use disabled list to avoid builtin focus handling 2023-11-02 19:24:52 -07:00
Drew Weymouth af95d150e8 switch to GridWrap widget in Fyne instead of Fyne-x 2023-11-02 19:08:54 -07:00
Drew Weymouth 4f002574c2 handle multiple artists properly in UI 2023-10-22 11:40:06 -07:00
Drew Weymouth cf09912474 fix bug where album card on artist page would occasionally show artist name instead of year 2023-08-02 15:32:30 -06:00
Drew Weymouth a53a270730 limit concurrent image fetches from server 2023-08-01 17:21:38 -07:00
Drew Weymouth 4febad12b7 fix regression with shuffle context menu on gridview 2023-07-14 16:54:53 -07:00
Drew Weymouth 2239023e0f move grid view context menu to GridView instead of GridViewItem for reuse 2023-07-12 17:18:54 -07:00
Drew Weymouth 203070328c reuse grid view across several pages 2023-07-09 14:14:23 -07:00
Drew Weymouth 1c771b0832 reuse grid view for searching on albums page 2023-07-08 15:18:37 -07:00
Drew Weymouth 5622554842 move gridview mutex out of state 2023-07-08 11:58:22 -07:00
natilou 0dfbe685e1 Ability to download from grid
- Adding the option to download the album or tracks in grid view from Artist and Album pages.
2023-06-20 12:35:59 -03:00
Michael Manganiello 7b15fe95e4 Use GridWrap from fyne-x
With https://github.com/fyne-io/fyne-x/pull/56 merged, the local
implementation can be removed to rely on the upstream version.
2023-06-14 22:08:01 -07:00
Drew Weymouth 8b238fd239 fix missing icon in album grid cover placeholder 2023-06-02 08:38:22 -07:00
Drew Weymouth de7a16639e switch GridView to icon placeholder 2023-05-23 17:35:26 -07:00
Drew Weymouth 8f4f13733a Fix #161: ensure gridview doesn't have concurrent fetch tasks on reset 2023-05-18 17:35:52 -07:00
Drew Weymouth fd106560d0 more refactoring - compiles now but not extensively tested 2023-05-14 20:50:06 -07:00
Drew Weymouth b2dce99714 fix race condition index out of bound crash in gridview 2023-05-11 16:43:10 -07:00
Drew Weymouth 2ef0282c0b update module import paths 2023-05-07 09:53:34 -07:00
Drew Weymouth 073de9499e move GridWrap widget out of Fyne fork 2023-05-04 17:14:44 -07:00
Drew Weymouth 76657b5c1c Fix #136: add context menu to album and playlist grid views 2023-05-02 17:50:35 -07:00
Drew Weymouth 9b1349b0ac add grid view option to playlists page 2023-04-28 19:28:20 -07:00