vitorpamplona / amethyst

Nostr client for Android
MIT License
1.17k stars 158 forks source link

Re-enable translations for all languages button in application settings #1168

Closed davotoula closed 3 days ago

davotoula commented 2 weeks ago

Several users have reported (#684) that once you set a language as "never translate from" it's not possible to revert it.

This is a simple solution by adding a button in the application preferences to reset ALL languages to be translated again.

Changes:

Testing:

It's not pretty but UI is not my forte: button_in_settings

A different approach would be to allow a reset of a specific language via the note drop-down. I didn't see a straightforward way to pass the note language code to the dropdown so didn't choose this approach.

KotlinGeekDev commented 2 weeks ago

I was thinking that the UI for this could be an entry, to open language-specific settings for the app. The position of this button would remain the same there. Please, what do you think @davotoula @vitorpamplona ?

davotoula commented 2 weeks ago

I'm not a fan of nested settings but maybe that's where amethyst has to go since it is getting more complex.

Saying that, this enhancement would get the feature out quickly to users.

I'm not good at UI so maybe somebody else could build a new settings UI. I could however collaborate with somebody that provides pretty UI screens...

There is a second option I would consider if @vitorpamplona insists... Trying to make the reset of translation for a specific language in the note drop down. And skipping the new button in settings...

vitorpamplona commented 2 weeks ago

Yeah, we will need to build a settings menu for all Account-based settings. The only issue here is that the top items will affect all users, while the button is unique to the active account. :(

davotoula commented 2 weeks ago

the top items will affect all users, while the button is unique to the active account

Ah yes, not ideal but I can clarify it in the button description. Also I think most often users would want to reset the current logged in account as that's the one that has the issue.

I'm happy to look into a solution that would reset a single language in the note drop down (or pop-up).

KotlinGeekDev commented 2 weeks ago

Maybe we could do a header-content style approach to the Settings page(maybe implementing a section as a drop-down(in line with @davotoula 's idea?) ).

davotoula commented 2 weeks ago

Marked as draft because I'm looking into a solution in the note dropdown. Allowing to reset single language at a time and avoiding changing the settings page.

vitorpamplona commented 6 days ago

@davotoula the next version of Amethyst will save these local settings encrypted in the relay as well. So, it will be more important to have a way to reset them. :)

davotoula commented 6 days ago

I've been distracted by other amethyst work 😆

There is a cleaner way to do the language reset in the note drop down. I implemented a way to detect the disabled language in the note view, just need a way to communicate it to the drop down... just like private bookmark and edit draft gets updated in the drop-down WatchBookmarksFollowsAndAccount.

work in progress!

davotoula commented 3 days ago

Deleting this pull request as a "per note" solution will be cleaner.