Commit Graph

38 Commits

Author SHA1 Message Date
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
Thomas Ricouard
151154b335 Timeline: Enable jump to latest + in place refresh for all other timeline types 2023-02-25 19:32:47 +01:00
Thomas Ricouard
7a997ebd8a Make secondary column available on any size + add a toggle + faster macOS window resize 2023-02-21 13:37:31 +01:00
Quin
43b32ca3f7
Add accessibility labels to timeline headers. (#880) 2023-02-15 18:47:42 +01:00
Thomas Ricouard
363164d96d Bind tabs to client.id 2023-02-14 14:27:29 +01:00
Thomas Ricouard
eb6050a38f Swiftformat 2023-02-12 16:29:41 +01:00
David Davies-Payne
11167c35c3
Also sort tags and lists in profile view (#764)
* Add CurrentAccount.sortedLists and .sortedTags

Sorts alphabetically, ascending, lowercased on title and name respectively.

* TimelineTab uses CurrentAccount.sortedLists and .sortedTags

* Account detail sorts tags and lists

Alphabetically, ascending, lowercased via CurrentAccount.sortedTags, .sortedLists
2023-02-10 06:38:18 +01:00
Yusuke Arakawa
dae7b85d3d
Timeline: restore the selected timeline at the next startup (#694)
* Timeline: restore the selected timeline at the next startup

Signed-off-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>

* Rename: UserDefaultas label name

Signed-off-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>

* Timeline: RawRepresentable of TimelineFilter

Signed-off-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>

* Cleanup code

* Supports RemoteTimelineFilter

* Cleanup code

* Safe saves last viewed status

---------

Signed-off-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
2023-02-09 12:27:59 +01:00
Thomas Ricouard
5f76a8057c Filter remote local timeline 2023-02-06 12:24:48 +01:00
Thomas Ricouard
5afd2dc73c Add Jump to Latest to clear out cache and reload home timeline 2023-02-04 21:21:36 +01:00
Thomas Ricouard
d88d9db1dc Transition Timeline to List + stream post automatically + keep position + new counter UI 2023-01-30 21:41:42 +01:00
Thomas Ricouard
24504e3bc2 Various optimizations to speed things up 2023-01-30 19:14:43 +01:00
Thomas Ricouard
875d89c18e Fix account switching 2023-01-29 21:58:20 +01:00
Thomas Ricouard
e5b6e79fa9 Better viewId for some tabs 2023-01-29 11:52:11 +01:00
Thomas Ricouard
e811d5dd39 Bump version to 1.1.2 + More fixes for iPad logged out 2023-01-26 22:07:21 +01:00
Thomas Ricouard
845dad3750 Various hotfixes 2023-01-26 21:44:46 +01:00
Thomas Ricouard
2b3bd41928 Fix lists and tags sorting regardless of the casing 2023-01-25 13:07:53 +01:00
David Davies-Payne
06c7e0e324
Sort lists and tags in timeline filter button menus (#370)
Sorted alphabetically by list.title and tag.name
2023-01-25 12:55:07 +01:00
Gareth Simpson
ab4ac1b004
Local content settings close #338 (#362)
* Local settings for sensitive content.

* Local sensitive content settings

* Added the posting settings as well as the reading ones.

* Menu item / nav title mismatch

* Fixes

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-25 06:28:16 +01:00
Steve Kalkwarf
fb6b2b39fa
Adjusted file names to match content (#286) 2023-01-22 19:59:22 +01:00
Thomas Ricouard
fd28864063 Fix glitching themes on follow system fix #253 2023-01-22 06:53:18 +01:00
Thomas Ricouard
a79c5691e0 Run SwiftFormat 2023-01-22 06:38:30 +01:00
Thomas Ricouard
5321b2b8d8 Add a follow system colors option close #128 2023-01-20 21:58:57 +01:00
Thomas
980b9a5dd6
Implement Localization (#80)
* Implement localization

* Fix some localization keys

* Adapt to recent changes
2023-01-19 18:14:08 +01:00
Thomas Ricouard
23cf2a3751 Faster & Safer account switching on macOS 2023-01-18 13:51:24 +01:00
Thomas Ricouard
4143e82fbc Multi account sidebar + scaled font size on macOS + better iPad / macOS app UX 2023-01-17 19:41:46 +01:00
Romain Vincens
bb72327f52
Fixed typos & misspells (#88)
* Fixed typos and misspells

* Other typos
2023-01-17 15:14:50 +01:00
Thomas Ricouard
7f6419ebae Swiftformat 2023-01-17 11:36:01 +01:00
Thomas Ricouard
c21272f641 Fix account selector on iPad 2023-01-16 22:01:04 +01:00
Thomas Ricouard
9dc7fa00f9 Fix bugs in macOS app 2023-01-16 21:15:33 +01:00
Thomas Ricouard
c05768c793 The Mac App 2023-01-16 14:40:23 +01:00
Sean Goldin
75e9516089
Less chatty api calling (#79)
* Limit API calls for instance searching

* Limit api calls

* Fix empty/initial state

* Limit API calls

* Delegate empty view logic to viewmodel

* When you boosted, display You boosted
2023-01-16 06:43:53 +01:00
Thomas Ricouard
66efedbbda AppAccounts: Move to its own package to prepare widget work 2023-01-12 18:17:21 +01:00
Thomas Ricouard
150cb5a8c5 Suggest login on launch 2023-01-12 06:30:43 +01:00
Thomas Ricouard
2961793e87 Support server side default post visibility 2023-01-09 20:46:01 +01:00
David Walter
76d7d23379
Support In-App Safari (#44)
* Support In-App Safari

* Fix "View in Browser"

* Force external Safari on Account Creation

* Fix SafariRouteur issues

Attach to NavigationStack
Find top-most ViewController

* Make Preferred Browser a Picker choice
2023-01-08 19:56:16 +01:00
Thomas Ricouard
7f5330f284 Redesigned settings tab 2023-01-06 17:14:34 +01:00
Thomas Ricouard
f922ba344d Search & Pin remote local timeline + general polish 2023-01-06 12:14:05 +01:00