Commit Graph

1658 Commits

Author SHA1 Message Date
Chris Kolbu 7391c12644
Accessibility fix for Timeline `StatusRowView` and Status detail (#1355)
* 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>
2023-04-04 08:12:25 +02:00
Ico Davids 4351cec117
Translated accessibility strings for toggles (#1350) 2023-04-04 08:04:07 +02:00
Xabi 0c7adca0cf
Update EU localisation (#1353)
New:
- status.editor.camera-picker
- filter.expired
- filter.expiry-%@
- accessibility.general.toggle.on
- accessibility.general.toggle.off
- accessibility.status.poll.option-prefix-%lld-of-%lld
- accessibility.status.poll.active.label
- accessibility.status.poll.finished.label
- accessibility.status.poll.selected.label
- accessibility.media.supported-type.image.label
- accessibility.media.supported-type.gifv.label
- accessibility.media.supported-type.video.label
- accessibility.media.supported-type.audio.label
- accessibility.status.contains-media.label-%@
- accessibility.status.application.label

Improved:
- account.favorited-by
- account.follow-requests.pending-requests
- account.follow-requests.instructions
- notifications.label.favorite.push

'account.follow-requests.instructions' has been changed to: "*The users above*…" instead of "*Those users*…"
2023-04-04 08:03:58 +02:00
Thomas Ricouard 2601764b28 Poll: Support hidden votesCount close #1354 2023-04-04 08:03:33 +02:00
Thomas Ricouard ab5c6643b3 Fix a crash when deleting an uploading image 2023-04-04 07:51:46 +02:00
Thomas Ricouard 573497ed52 Disable take photo option on macOS 2023-04-04 07:44:29 +02:00
Thomas Ricouard 9ba18a8ca3 Fix camera photo upload 2023-04-03 14:48:32 +02:00
Thomas Ricouard 477dd520b9 Editor: Add Take Photo option close #1339 2023-04-03 13:54:16 +02:00
Thomas Ricouard ab51d57648 Cleanup debounce 2023-04-03 13:53:41 +02:00
Thomas Ricouard 14e91a680e Bump to 1.6.14 2023-04-03 13:53:29 +02:00
Chris Kolbu f728ea652e
Accessibility bug fixes (#1348)
* 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.
2023-04-03 11:14:44 +02:00
Chris Kolbu db81486f14
Restore HTMLString link parsing (#1347) 2023-04-01 15:47:12 +02:00
Yusuke Arakawa 00ee8c2373
Update Localizable.strings (#1346) 2023-04-01 15:47:00 +02:00
Yusuke Arakawa 6af794dc72
Update Localizable.strings (#1343) 2023-03-31 15:34:37 +02:00
Paul Schuetz 59b16d86a7
Fix the lag of the display setting sliders (#1342) close #1341
* 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>
2023-03-31 15:34:24 +02:00
Thomas Ricouard d3e71cea74 Fix screenshots sharing on iOS 16.4 2023-03-31 14:52:39 +02:00
Thomas Ricouard eb3cbfe6f6 Bump to 1.6.13 2023-03-31 09:08:59 +02:00
Thomas Ricouard d3888d8c40 Accessibility: Disable links parsing for now 2023-03-30 16:29:44 +02:00
Thomas Ricouard dda6ee8f8f Bump to 1.6.12 2023-03-30 08:47:55 +02:00
Andrzej Rózga 501af24cf5
Polish localization update (#1328) 2023-03-30 08:04:28 +02:00
Jerry 1f5960b257
Update Simplified Chinese localization (#1330)
* Line Spacing Chinese localization

* Filter Settings Chinese localization

* Accessibility Chinese localization
2023-03-30 08:04:19 +02:00
Yusuke Arakawa 6c304df78f
Update Localizable.strings (#1333) 2023-03-30 08:04:12 +02:00
Chanhwi Joo c390a2ee10
Update Korean localization (#1335)
* Remove unnecessary comments

* Translate VoiceOver strings

* Read poll options better
2023-03-30 08:04:04 +02:00
J-rg 92a30b7575
Update German localization (#1288) 2023-03-29 09:48:48 +02:00
Jair Henrique 14d86d9b98
Improve pt_BR translations (#1325) 2023-03-28 18:49:39 +02:00
Ico Davids e1e32fdb97
Updated NL localization (#1326)
* Line Spacing

* Post Edit Summary

* Various filter and accessibility strings

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-03-28 18:49:31 +02:00
Chris Kolbu 9e347c75b9
Timeline & Timeline detail accessibility uplift (#1323)
* 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>
2023-03-28 18:48:58 +02:00
sh95014 59af600945
zh-Hant localization updates (#1324)
* checkpoint

* checkpoint

* plurals and a couple of minor fixes

* Update Localizable.strings

* Update Localizable.strings
2023-03-28 09:00:02 +02:00
Andrzej Rózga d759bf9ece
Polish localization update (#1322) 2023-03-28 08:59:49 +02:00
Jair Henrique 409437841d
Improve pt_BR translations (#1320) 2023-03-28 08:59:41 +02:00
Chanhwi Joo 9d23e05d49
Add 2 missing localization strings (#1319)
* Add 2 missing localization strings

* Add a Korean translation for the line spacing setting
2023-03-28 08:59:31 +02:00
Xabi c498ab9b2d
Update EU localisation (#1315)
Added:
- settings.display.font.line-spacing-%@
- status.summary.edit-history

Improved:
- settings.display.navigation-title
- settings.general.display
- settings.general.translate
- settings.translation.navigation-title
2023-03-28 08:59:22 +02:00
Yusuke Arakawa 942dfa1de7
Update Localizable.strings (#1317) 2023-03-28 08:59:13 +02:00
Cthulhux 9e0c77a48f
Update Localizable.strings (#1314) 2023-03-28 08:59:03 +02:00
Thomas Ricouard efb255eb62 Display settings: keep example post on the top 2023-03-26 19:19:59 +02:00
Thomas Ricouard 92e15fdcc9 Settings: Add line spacing option which apply to only posts content for now 2023-03-26 18:51:15 +02:00
Thomas Ricouard 69e5ba251c Bump to 1.6.11 2023-03-26 18:33:08 +02:00
Jerry d35de0013c
Update Simplified Chinese localization (#1307) 2023-03-26 14:19:42 +02:00
Paul Schuetz 731ee4c3ac
Fix icon switching on iPad (#1310)
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>
2023-03-26 14:19:34 +02:00
Andrzej Rózga a0fa559d60
Polish localization update (#1305) 2023-03-26 10:17:49 +02:00
Cthulhux 69e3f798bb
Update Localizable.strings (#1306) 2023-03-26 10:17:43 +02:00
Cthulhux 2d5f096887
Update Localizable.strings (#1298) 2023-03-25 17:16:44 +01:00
Xabi 6ecc56f39a
Update Basque localisation (#1300) 2023-03-25 17:16:36 +01:00
Chanhwi Joo 50ce63e800
Update Korean localization (#1301) 2023-03-25 17:16:29 +01:00
Chanhwi Joo 3d63ea4642
Make "Edit History" navigation title localizable (#1302) 2023-03-25 17:16:22 +01:00
Yusuke Arakawa 3c26b7fceb
Update Localizable.strings (#1303) 2023-03-25 17:16:13 +01:00
Paul Schuetz 0874be89f8
Add an edit button to the remote timeline settings (#1304) 2023-03-25 17:16:07 +01:00
Thomas Ricouard 356b58bf67 Use the new iOS 16.4 sheet background for app selection sheet (You'll need to use Xcode 14.3 going forward) 2023-03-24 13:53:42 +01:00
Thomas Ricouard 65431dc727 Bump to 1.6.10 2023-03-24 13:53:06 +01:00
Chris Kolbu b2f594f174
Accessibility tweaks + Notifications and Messages tab uplift (#1292)
* Improve StatusRowView accessibility actions

Previously, there was no way to interact with links and hashtags.

Now, these are added to the Actions rotor

* Hide `topPaddingView`s from accessibility

* Fix accessible header rendering in non-filterable TimelineViews

Previously, all navigation title views were assumed to be popup buttons.

Now, we only change the representation for timelines that are filterable.

* Combine tagHeaderView text elements

Previously, these were two separate items

* Prefer shorter Quote action label

* Improve accessibility of StatusEmbeddedView

Previously, this element would be three different ones, and include all the actions on the `StatusRowView` proper. Now, it presents as one element with no actions.

* Add haptics to StatusRowView accessibility actions

* Improve accessibility of ConversationsListRow

This commit adds:
- A combined representation of the component views
- “Unread” as the first part of the label (if this is the case)
- All relevant actions as custom actions
- Reply as magic tap

* Remove StatusRowView accessibilityActions if viewModel.showActions is false

* Hide media attachments from accessibility if the view is not focused

* Combine NotificationRowView accessibility elements; add user actions

Previously, there was no real way to interact with these notifications.

Now, the notifications that show the actions row have the appropriate StatusRowView-derived actions, and new followers notifications have more actions that let you see each user’s profile.

* Prefer @Environment’s `accessibilityEnabled` over `isVoiceOverRunning`

This way we can cater for Voice Control, Full Keyboard Access and Switch Control as well.

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-03-24 07:52:29 +01:00