* Show verified URLs in account lists
This allows the user to quickly assess which account of multiple is the official
one, especially when searching for a person with multiple search results.
Fixes#1361
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Replace the verified urls text with a checkmark
This makes it easy for the user to directly see why the urls are listed.
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Swiftformat
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
---------
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Update Simplified Chinese localization
Simplified Chinese localization for Accessibility
* Update Simplified Chinese translation
"accessibility.status.media-viewer-action.label" = "打开媒体查看器"
* Add StatusRowView accessibility action to open media attachment viewer
Previously, there would be no way to open QuickLook from the timeline.
Now, we add a custom accessibility action to do this.
* Work around initial accessibility focus bug in StatusDetailView
Previously, (due to identity issues?) the focus would be set on the header view. However, moving to the next element in the focus order. would skip over a random number of elements, depending on the context of the detail view.
Now, we manually set the focus once, allowing the focus order to work as intended.
* Respect filters in Timeline combined accessibility label
* Add explicit action to show filtered warnings from `filterView`
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
* Fix bug affecting accessibillityRepresentation of type Toggle
Previously, the action on the button would not get executed. This is a SwiftUI bug, as views passed into `accessibilityRepresentation` should not have any behaviour.
Now, we set an equivalent `accessibilityValue` on|off to emulate the same functionality.
* Remove conditional ViewModifier in favour of inlined modifier
Since this view is part of the `StatusRowView` it’s better to err on the side of less branching with ModifiedContent<>
* Avoid combining StatusRowMediaPreviewView accessibility children
By combining the elements, the end result was that the intended action (opening QuickLook) was swallowed in favour of displaying the alt text alert of images.
* Fix the lag of the display setting sliders
The sliders in the display settings were laggy because changing the value in the
theme class needs comparatively much time. This writing to the class is now
only done when the user lets go of the slider, so sliding it is responsive. I
was unable to make writing to the class more responsive, the example post needs
therefore a short time before it accepts the new values. Furthermore, all
AppStorage keys are now realized with a ThemeKey to clean the class up.
Fixes#1341
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Remove unnecessary changes to theme
The changing of theme keys is unnecessary for the fix oft the lag, so it's
removed.
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Rework fix to be more similar to other lag fixes
The fix now uses the ...LocalValues class, which published updates only every
half a second.
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
---------
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
* Improve accessibility of StatusPollView
Previously, this view did not provide the proper context to indicate that it represented a poll.
Now, we’ve added
- A container that will stay “Active poll” or “Poll results” when the cursor first hits one of the options;
- A prefix to say “Option X of Y” before each option;
- A Selected trait on the selected option(s), if present
- Consolidating and adding an `.updatesFrequently` trait to the footer view with the countdown.
* Add poll description in StatusRowView combinedAccessibilityLabel
This largely duplicates the logic in `StatusPollView`.
* Improve accessibility of media attachments
Previously, the media attachments without alt text would not show up in the consolidated `StatusRowView`, nor would they be meaningfully explained on the status detail screen.
Now, they are presented with their attachment type.
* Change accessibilityRepresentation of AppAcountsSelectorView
* Change Notifications tab title view accessibility representation to Menu
Previously it would present as a button
* Hide layout `Rectangle`s from accessibility
* Consolidate `StatusRowDetailView` accessibility representation
* Improve readability of Poll accessibility label
* Ensure poll options don’t present as interactive when the poll is finished
* Improve accessibility of StatusRowCardView
Previously, it would present as four separate elements, including an image without a description, all interactive, none with an interactive trait.
Now, it presents as a single element with the `.link` trait
* Improve accessibility of StatusRowHeaderView
Previously, it had no traits and no actions except inherited ones.
Now it presents as a button, triggering its primary action.
It also has custom actions corresponding to its context menu
* Avoid applying the StatusRowView custom actions to every view when contained
* Provide context for the application name
* Add pauses to StatusRowView combinedAccessibilityLabel
* Hide `TimelineView.scrollToTopView` from accessibility
* Set appropriate font style on Notification header
After the change the Text needed a `.headline` style to match the prior appearance.
* Fix bug in accessibilityRepresentation of TimelineView nav bar title
Previously, it would not display the proper label for .remoteLocal filter options.
* Ensure that pop-up button nav bar titles are interactive
* Ensure TextView responds to Environment.sizeCategory
This resolves#1309
* Fix button
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
The switching of icons didn't work on the iPad anymore (See
https://norden.social/@betamax65/110088664994961476). This might be a temporary
fix, depending on what caused the bug (which I couldn't determine). For now,
one icon in the set seemingly must have a complete iPad icon set, which is
achieved with the standard icon. Furthermore, an assert statement helps to
determine the problem with the icons. This statement won't be compiled into
release builds.
Signed-off-by: Paul Schuetz <pa.schuetz@web.de>