* Remove empty string
* Update and add missing localizations
* Revert empty string removal
* Mark "parent view for EditTagGroupView" as translated
* Remove the text dedicated only for Preview
* Fix settings done button logic
With the new customizable tab bar, "Settings" can be rendered directly
as the root view of a tab bar entry instead of as a "modal" presented
from the root view. The "Done" button to dismiss the modal should be
hidden if `isModal` is `false`.
* Hide Settings secondary column button for iPad when presented as a modal
* add a setting to disable the account popover on hover
- not entirely pleased with the AnyView() cast but don't really know of a less invasive change
* Fixes
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
* Allow the user to customize the thread indentation
The user can now select if they want to indent threads/replies, and how much
the replies should be indented.
* Make the wording clearer
The wording is now clearer since "thread" is replaced by "reply".
* Fix localizations
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
* refactor data of `EditTagGroupView`
* lower case tags before saving because API is case-insensitive
* fix: "add new tag" `TextField` is not focused after adding the first tag (on both macOS and iOS)
* perf: improve symbol search performance
* improve layout and animation of symbol search
* fix: sort tags and remove duplicate tags
* fix: crash when open timeline for an empty tag group
* fix: revert concurrency code because performance issue at 1d3f271 is a false alarm
* add warning labels to help the users
* fix: state `tagGroup`
* fix: selecting symbol logic and warning labels
* refactor `EditTagGroupView.body`
* refactor warning labels
* Fix theme
* Move to its own folder
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>