Skip to content

added series sort option for date content last added, and more localization stuff#324

Merged
RadicalMuffinMan merged 3 commits intoMoonfin-Client:mainfrom
broken-droid:feature/sort-option-and-more-localization
Mar 16, 2026
Merged

added series sort option for date content last added, and more localization stuff#324
RadicalMuffinMan merged 3 commits intoMoonfin-Client:mainfrom
broken-droid:feature/sort-option-and-more-localization

Conversation

@broken-droid
Copy link
Contributor

@broken-droid broken-droid commented Mar 11, 2026

Mostly localization stuff, but added in an option for #321

Pull Request

Summary

Added a sort option for tvshows, date_content_last added
Added some more translated strings
Changed more details/nav bar strings to use localized ones
Changed a few date related things to use system format instead of forcing am/pm 12/24hr

Related Issues

#321

Type of Change

  • Bug fix
  • New feature
  • Refactor
  • Performance improvement
  • UI/UX update
  • Documentation update
  • Build/CI change
  • Other (describe): mostly localization

Changes Made

modified LibraryBrowseViewmodel.kt

modified strings.xml and variants

  • new strings for eng/fr/de/es

modified ItemDetailsFragment.kt

  • convert more strings to localized
  • formatDuration uses a localized formatted string
  • getEndsAt uses the system time format instead of forcing am/pm or 12/24 hr clock for the
  • end time
  • PersonalDetailsContent uses localized datetime format

modified LeftSidebarNavigation.kt

  • use localized shuffle/settings string
  • use stringResource instead of context.getString in a few places

modified MainToolbar.kt

  • use localized shuffle/settings string

Testing

  • Tested on emulator
  • Tested on physical device
  • Manual testing completed
  • Not tested (explain why):

Test Steps

Screenshots (if applicable)

Checklist

  • Code builds successfully
  • Code follows project style and conventions
  • No unnecessary commented-out code
  • No new warnings introduced
  • Documentation updated (if needed)

@broken-droid broken-droid force-pushed the feature/sort-option-and-more-localization branch from 8fae782 to 4485f16 Compare March 13, 2026 19:14
add(SortOption(R.string.lbl_date_added, ItemSortBy.DATE_CREATED, SortOrder.DESCENDING))
}
if (folder?.collectionType == CollectionType.TVSHOWS) {
add(SortOption(R.string.lbl_date_episode_added, ItemSortBy.DATE_LAST_CONTENT_ADDED, SortOrder.DESCENDING))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not add this under line 114?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I was focused on adding one and then then threw the other in there, I can change that

val resumeTime = item.userData?.playbackPositionTicks?.let { formatDuration(it) } ?: ""
DetailActionButton(
label = "Resume",
label = stringResource(R.string.lbl_resume_from),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
label = stringResource(R.string.lbl_resume_from),
label = stringResource(R.string.lbl_resume_from, resumeTime),

The string is defined as "Resume from %1$s" but here it's used as a plain label without passing the time position. This will render as "Resume from %1$s" literally on screen. This was it'll return back Resume from 1h 23m

item {
Text(
text = "Tracks",
text = stringResource(R.string.lbl_track),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we need a new lbl_tracks for multiple since now lbl_track is being used for singular and plural

@RadicalMuffinMan
Copy link
Contributor

I really appreciate your contributions by the way

@broken-droid
Copy link
Contributor Author

I can't build currently, so I can't try anything out. This is left over from my merge attempt after emby got added. Not sure how you generated the emby sdk.

@RadicalMuffinMan
Copy link
Contributor

pull latest and you'll have the fix

…alization changes

modified strings.xml and variants
- new strings for eng/fr/de/es

modified ItemDetailsFragment.kt
- convert more strings to localized
- formatDuration uses a localized formatted string
- getEndsAt uses the system time format instead of forcing am/pm or 12/24 hr clock for the end time
- PersonalDetailsContent uses localized datetime format

modified LeftSidebarNavigation.kt
- use localized shuffle/settings string
- use stringResource instead of context.getString in a few places

modified MainToolbar.kt
- use localized shuffle/settings string
added en/de/fr/es versions
changed lbl_track to 'lbl_tracks'
changed 'Resume from' label to pass in argument
@broken-droid broken-droid force-pushed the feature/sort-option-and-more-localization branch from 4485f16 to 461dc3c Compare March 16, 2026 15:59
@broken-droid
Copy link
Contributor Author

pull latest and you'll have the fix

There's a reference to emby-client that android studio can't find, and I don't know the parameters or generator used to get it to match. Unless I'm missing something.
image

@RadicalMuffinMan
Copy link
Contributor

Odd, I had someone pull latest after this commit and it fixed it. I'll take a look

@RadicalMuffinMan RadicalMuffinMan merged commit 55f0996 into Moonfin-Client:main Mar 16, 2026
1 check failed
@RadicalMuffinMan
Copy link
Contributor

There's a reference to emby-client that android studio can't find

please pull latest, added it as emby-client JAR

@broken-droid broken-droid deleted the feature/sort-option-and-more-localization branch March 17, 2026 06:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants