1905 Commits

Author SHA1 Message Date
ec75906bc1 Add favorites screen
Closes #327
2023-02-04 13:21:58 -05:00
137a537f68 Extract loading and local updating handling code from bookmarks VC into separate VC 2023-02-04 13:14:08 -05:00
91123fd24a Make username label on profile copyable 2023-02-04 11:10:01 -05:00
597dd56032 Fix crash on split VC collapse/expand while in explore tab
Also fix iPad explore VC resetting when leaving/reopening the app

Closes #351
2023-02-03 18:30:37 -05:00
37847a2f9f Fix accent color circles not showing on iOS 15 2023-02-02 23:36:47 -05:00
471d3459a6 Apply non-pure-black dark mode to preferences screen 2023-02-02 23:29:44 -05:00
512eec09a8 Merge branch 'develop' into non-pure-black-mode 2023-02-02 23:14:27 -05:00
af8a9faaeb Cleanup PreferencesView 2023-02-02 23:14:19 -05:00
20c4c4bb2f Start adding non-pure-black dark mode 2023-02-02 23:02:11 -05:00
76268e7a14 Make attachment description selectable in gallery 2023-01-31 14:17:59 -05:00
29596180a1 Using async/await for ImageCache implementation 2023-01-31 09:56:13 -05:00
ebfd8b3efd Fix bookmarks VC sometimes going haywire 2023-01-30 10:07:34 -05:00
509acbde19 Fix status action account list VC not resizing on rotation 2023-01-29 16:02:47 -05:00
1940368c43 Load account lists in pages of 40 2023-01-28 23:07:38 -05:00
49c9c69b5a Fix flicker when opening status action account list in split nav
The container VC background needs to match the content VC
2023-01-28 22:59:30 -05:00
ff29f2768b Tweak follow count button colors
Try to make it clearer that it's a button
2023-01-28 18:18:53 -05:00
942df433b3 Allow refreshing bookmarks list 2023-01-28 15:30:41 -05:00
5e2b551045 Update bookmarks VC on bookmarked state changes
Closes #318
2023-01-28 15:30:41 -05:00
2e64500c35 Rewrite bookmarks VC using UICollectionView 2023-01-28 15:30:41 -05:00
7b7c05ff68 Fix timeline position sync not working due to LazilyDecoding cache not being invalidated upon remote change 2023-01-28 13:41:22 -05:00
aec5c0b787 Update Sentry SDK 2023-01-28 00:16:11 -05:00
d8901b38f5 Load timeline posts in pages of 40 2023-01-28 00:16:11 -05:00
9d7c876e3c Remove old sleeps 2023-01-27 21:48:47 -05:00
455273f322 Show more posts in report status screen 2023-01-27 21:45:02 -05:00
16347b2ad0 Automatic retry during onboarding, better UI while waiting 2023-01-27 20:52:34 -05:00
0e1cbce10d Revoke token and destroy stores when logging out 2023-01-27 18:53:20 -05:00
8bd6f53f01 Allow pinning instance public timelines 2023-01-27 18:12:54 -05:00
1f337613be Add animation when compose toolbar buttons (dis)appear 2023-01-26 22:33:47 -05:00
3f4a62f5f9 Fix changes being published during SwiftUI view update 2023-01-26 22:18:03 -05:00
b506704716 Move Drafts button to nav bar when current composed post doesn't have any content 2023-01-26 22:17:49 -05:00
edd1e55cbb Unify haptic feedback
Closes #154
2023-01-26 21:52:12 -05:00
f1facea929 Fix status URLs with fragments not being resolved 2023-01-26 21:15:02 -05:00
d638ea054b Add gif/alt badges to attachments
Closes #255, #338
2023-01-26 19:16:34 -05:00
e11784904b Add menu action to hide/show reblogs
Closes #206
2023-01-26 18:50:05 -05:00
9f1d3804d9 Apply Mastodon's link truncation
Closes #344
2023-01-26 18:38:31 -05:00
333295367a Add preference to hide link preview cards
Closes #329
2023-01-26 17:18:27 -05:00
e9d14c6cbf Tweak status card background color in dark mode 2023-01-26 15:17:17 -05:00
5a9513bb30 Add tip jar 2023-01-25 23:58:51 -05:00
e45459e556 Add support link to about screen 2023-01-25 18:54:09 -05:00
8b546daeaa Workaround for issues signing in to m.s 2023-01-25 09:56:24 -05:00
125f91257a Fix status notifications not being shown 2023-01-25 09:56:24 -05:00
507d9c23e7 xcconfig Fixes
* Ensure that all bundle prefixes are replaced correctly for all targets and in entitlements files too
2023-01-25 09:42:36 +04:00
2ee34acbad Fix remove attachment menu item not being marked destructive 2023-01-24 15:02:11 -05:00
6eee97759e Add context menu action to remove pinned timeline
Closes #334
2023-01-24 10:19:04 -05:00
f88bf552af Reuse client ID/secret when trying to sign in to the same account again
Workaround for mastodon.social signins being flaky
2023-01-23 17:43:41 -05:00
d2c7664073 Add profile suggestions to Explore on iPad 2023-01-23 17:10:26 -05:00
e91249a876 Detect Misskey links properly 2023-01-23 16:59:24 -05:00
1eab964c0b Parse HTML in trending link card descriptions 2023-01-23 15:15:43 -05:00
2933ac491b Fix Open in Safari action not working 2023-01-23 10:35:23 -05:00
2958d2b1ac Change TrendingLinkCardCollectionViewCell to use CachedImageView 2023-01-22 18:21:58 -05:00
3262fe002b Add hover interaction to trending link cards 2023-01-22 17:37:41 -05:00
521e5ad5fc Make trend history view respond to preferred content size category 2023-01-22 17:23:22 -05:00
2b651b0bc4 Fix trending hashtag cells not adjusting to dynamic type 2023-01-22 17:23:19 -05:00
99b3532e64 Add description to trending link cards, fix not responding to dynamic type 2023-01-22 17:23:19 -05:00
2ea8e9cf1e Fix preview action on iPad Explore screen not working 2023-01-22 15:44:36 -05:00
e8b7446117 Fix split view expand breaking when transferring trending statuses/hashtags/links VCs 2023-01-22 14:01:44 -05:00
a47b9c0c75 Move trending statuses to Explore on iPad
See #171
2023-01-22 13:57:37 -05:00
a75862b5cc Mask trending link card previews with same corner radius as cells 2023-01-22 12:08:22 -05:00
0738683ee3 Add search scopes
Closes #328
2023-01-22 11:41:38 -05:00
155f4036f9 Handle authentication required error for instance timelines 2023-01-22 11:18:43 -05:00
6328627a97 Fix extra spacing above content in conversation main status 2023-01-21 20:27:20 -05:00
c6043d60ee Fix crash when inserting present items in empty timeline 2023-01-21 16:31:52 -05:00
2229b332e0 Try to resolve statuses from links that match known patterns 2023-01-21 14:03:21 -05:00
63ed3b6e10 Add loading indicator to conversation screen 2023-01-21 13:17:11 -05:00
ccd1672e72 Show highlight on expand thread cell selection 2023-01-21 13:14:16 -05:00
addcc2dacc Rewrite conversation screen to use UICollectionView 2023-01-21 11:26:51 -05:00
b1421767dd Fix tapping expand thread cell not working 2023-01-20 14:17:15 -05:00
8ee916411e Further card tweaks 2023-01-20 13:58:40 -05:00
9d845bf6c1 Show loading indicator when restoring timeline state 2023-01-20 13:47:14 -05:00
9a2c24942a Fix SegmentedPageViewController next sub-page shortcut not working 2023-01-20 11:38:31 -05:00
cca2a03b2f When routing the SplitNav responder chain through the root VC, go as deep into it as possible
Makes keyboard shortcuts from, e.g., TimelineVC accessible when the root is TimelinesPageVC

See #302
2023-01-20 11:34:44 -05:00
1a64bfcef8 Disallow keyboard focus in sidebar
Makes keyboard shortcuts from the split VC's primary content available

See #302
2023-01-20 11:33:28 -05:00
907810d98a Make link preview cards larger 2023-01-20 11:22:28 -05:00
23a4999196 Complete asynchronous swipe actions immediately
Fixes crash when the user things the action has failed and taps it
again, which results in an invalid completion handler later being called
2023-01-20 10:53:30 -05:00
3e0feba273 Fix collapse button disappearing when navigating away 2023-01-20 10:51:56 -05:00
468a559127 Fix crash when TimelinePosition's center status ID isn't in the list of IDs 2023-01-19 21:46:57 -05:00
a33be0b556 Remove unused background audio mode 2023-01-19 13:13:08 -05:00
6aee926f00 Fix table views being too far inset on iPhone 2023-01-19 13:13:01 -05:00
5123cf20c3 Rename Delete Status -> Delete Post 2023-01-18 15:05:12 -05:00
bf739b9f41 Add pagination to status actions account list 2023-01-18 15:02:56 -05:00
4211806b5f Add followers/following screen
Closes #323
2023-01-18 15:02:56 -05:00
88aada8d35 Add follower/ing counts to profile header 2023-01-18 14:02:23 -05:00
5623cedab3 Fix conversation reloading on appear 2023-01-18 13:59:42 -05:00
ccfc8331fb Fix avatars not un-grayscaling on timeline 2023-01-18 11:37:15 -05:00
10803408cd Post status deleted notifications when load fails with not found 2023-01-17 20:04:48 -05:00
fb7a7db6e8 Handle deleted statuses in status action account list 2023-01-17 20:02:03 -05:00
78cd1313fe Fix new conversation VC not responding to status bar taps 2023-01-17 19:36:12 -05:00
db1bbf7148 Add delete status action 2023-01-17 19:32:50 -05:00
5f19adf2d0 Only show report action for other people's posts 2023-01-17 19:15:54 -05:00
6f006adbc1 Show better message when opening conv for deleted status
Also split conversation loading out into separate view controller
2023-01-17 19:15:54 -05:00
39bff06897 Fix profile header buttons not adjusting height for dynamic type size
Closes #317
2023-01-17 11:51:14 -05:00
68682ee291 Maybe fix race condition between iCloud sync and state restoration 2023-01-17 10:50:36 -05:00
907cf08400 Fix expand thread cell not adjusting to accent color pref 2023-01-16 17:54:56 -05:00
e85d194e5f Make table and collection view focusable 2023-01-16 17:54:56 -05:00
cfeb87d2ba Fix status collection cells being too far inset 2023-01-16 17:54:56 -05:00
e4f3735c9f Don't use UIPageViewController for SegmentedPageViewController 2023-01-16 17:54:56 -05:00
baa9dfe0f1 More logging 2023-01-16 15:51:03 -05:00
5e73439e7b Fix statuses being inset too much on iPhones 2023-01-16 14:21:42 -05:00
4b2776ee81 Fix conversation non-main status collapse button not adjusting to accent color preference 2023-01-16 11:54:09 -05:00
0653d695d9 Fix various things not adjusting to accent color preference
Closes #325
2023-01-16 11:24:42 -05:00
4811747790 Fix crash when resuming search user activity in unloaded explore VC 2023-01-16 10:58:45 -05:00
ed2519848c Prevent all pinned timelines from being removed 2023-01-16 10:55:32 -05:00
b1374b12a3 More error reporting tweaks 2023-01-15 15:01:16 -05:00
c5a25eecf1 Fix row separators not being inset to readable content width 2023-01-15 12:45:41 -05:00
a4dbf3ddbb Add New List action to Add to List menu 2023-01-15 11:49:20 -05:00
be3a61ebc7 Fix Send Report button not adapting to accent color 2023-01-15 11:48:16 -05:00
ababa4b428 Add more logging around state restoration crash 2023-01-15 11:30:34 -05:00
d75c2558ca Capture strong references in ToggleFollowHashtagService retry actions 2023-01-15 10:33:06 -05:00
37563b6afd Fix @Published property being changed on background thread 2023-01-14 11:32:31 -05:00
937afc0dfd Add accent color preference 2023-01-14 11:32:31 -05:00
94c34e03dd Add reporting accounts and statuses 2023-01-14 11:03:39 -05:00
1ad556f9cf Fix crash when displaying poll finished notification 2023-01-13 15:27:48 -05:00
019f7d6d6a Fix crash if preferences change while there are cells that don't have statuses 2023-01-13 15:26:26 -05:00
b4384d11f5 Delete Relationship when Account is deleted
Prevents errors when accessing dangling relationships w/o accounts
2023-01-13 10:31:51 -05:00
2ed8d22899 Fix crash when trying to restore activity for non-pinned timeline 2023-01-09 12:39:35 -04:00
cce6413e2b Fix crash when trying to load deleted statuses for restoration 2023-01-08 17:56:21 -04:00
8fb0fb66e3 Start playing video attachments immediately on appear 2023-01-06 21:43:27 -04:00
1d9efc7fb5 Include status code in automatic mastodon error reports 2023-01-03 11:31:24 -05:00
b17b7b7a24 Fix crash when inserting present items when there are no existing items 2023-01-02 17:18:30 -05:00
18d7917756 Add subjects for activity item sources 2023-01-02 17:16:31 -05:00
cc401fce8c Allow sharing gifv attachments, improve share sheet behavior for images 2023-01-02 16:59:55 -05:00
a5fc35d0b1 More tweaks to automatic error reporting 2023-01-02 15:14:28 -05:00
acd48a6db4 When logging out, remove the scene's active account rather than the most-recently activated one, as they may not be the same 2023-01-02 11:41:47 -05:00
b45d3fb80a Use WebURL for status URLs 2023-01-02 11:36:06 -05:00
5898da3234 Maybe fix race condition when account is loaded as profile statuses VC is dealloc'd 2023-01-01 15:27:25 -05:00
9dd966f639 Fix duplicate saved instances not being uniqued correctly 2023-01-01 15:27:25 -05:00
854d48e54e Unique saved hashtag/instance items
This may happen when migrating to iCloud, if the same hashtag is saved
on multiple devices.
2023-01-01 14:49:04 -05:00
d4c560d7fc Add createdAt to AccountPreferences and TimelinePosition to guard against race conditions when creating/migrating 2023-01-01 12:58:44 -05:00
91b7ce3008 Add pointer interaction to ToastView 2023-01-01 12:35:40 -05:00
4dca231a06 Add loading animation while syncing timeline position 2023-01-01 12:25:44 -05:00
b81c83a250 Add iCloud env entitlement and ITSAppUsesNonExemptEncryption 2022-12-31 16:58:39 -05:00
f9e619d9e7 Deduplicate updated timeline positions when handling remote changes 2022-12-31 16:58:20 -05:00
ae7962ae50 Better Sentry messages 2022-12-31 16:57:43 -05:00
5027660b52 Maybe fix crash when restoring unloaded statuses due to race condition 2022-12-31 16:57:13 -05:00
358d81b5cf Fix crash when accessing SegmentedPageViewController before it's loaded 2022-12-31 16:46:00 -05:00
79b9108a8f Add CloudKit status indicator to advanced prefs 2022-12-31 11:24:42 -05:00
5ab22e742b Automatically report errors displayed to the user 2022-12-29 17:30:39 -05:00
4f655bb80a Change collection view deselect on appear to happen alongside nav pop 2022-12-28 15:01:21 -05:00
e4f1309e2d Make everything follow the readable width 2022-12-26 12:22:17 -05:00
bb40894778 Ensure all statuses are cached before returning 2022-12-26 12:09:57 -05:00
24b3fa1e3f Guard against race condition when loading card image 2022-12-26 11:27:58 -05:00
16cd045588 Show individual attachments uncropped inline in statuses 2022-12-25 14:13:59 -05:00
15a7cd5f65 Fix not being able to tap attachments in the timeline 2022-12-25 10:27:19 -05:00
e676075d5b Fix spacing on toolbar when visibility and local-only items visible 2022-12-25 10:03:07 -05:00
967bff063b Tweak iCloud timeline sync 2022-12-25 09:59:35 -05:00
3cba0bce34 Update pinned timelines when changed remotely 2022-12-24 12:20:13 -05:00
60b182ac18 Sync timeline position using iCloud 2022-12-23 16:37:42 -05:00
619878ac85 Don't show Hide Reblogs/Replies prefs in Preferences, only in Customize Timelines 2022-12-23 16:37:42 -05:00
169f1a0191 Add haptic feedback to profile follow button 2022-12-23 11:19:37 -05:00
fa31c28e92 Fix relationship change breaking header layout because the collection view wasn't resizing the cell 2022-12-22 18:51:55 -05:00
f815d4e2e4 Replace VisualEffectImageButton with ProfileHeaderButton 2022-12-22 18:47:53 -05:00
a3e5b29cfc Fix crash inserting present items when currentItems includes posts from since-unfollowed users 2022-12-22 17:57:17 -05:00
46cecde014 Add more prominent follow button to profile pages 2022-12-22 17:26:50 -05:00
86143c5887 Add window titles to main and compose scenes 2022-12-22 15:02:49 -05:00
0a1dc423d4 Fix compose attachment list buttons not using accent color on macOS 2022-12-22 14:54:41 -05:00
1cb0f1ae56 Fix non-mention notifications showing in Mentions tab on Pleroma
e0d97cd2a8 introduced a regression on Pleroma, because specifying the
allowed types of notifications in the Masto API was only added in 3.5
2022-12-22 14:41:56 -05:00
9f86158bb7 Add About screen 2022-12-22 13:59:39 -05:00
231b0ea830 Add Acknowledgements page 2022-12-21 11:59:40 -05:00
4dc108f782 Add pinned timeline customization 2022-12-20 23:37:12 -05:00
795146cde4 Cache lists in CoreData 2022-12-20 15:13:18 -05:00
975be17d13 Avoid doing unnecessary work for filtered statuses 2022-12-20 11:32:20 -05:00
32be76ebee Update UI in responds to remote changes of saved hashtags/instances 2022-12-19 13:56:46 -05:00
d13b517128 Sync saved hashtags and instances over iCloud
Closes #160
2022-12-19 10:58:14 -05:00
e0d97cd2a8 Fix unknown notifications appearing in the Mentions tab 2022-12-18 11:33:49 -05:00
8b718ce50b Only allow continuous scroll gestures to dismiss gallery 2022-12-17 17:55:05 -05:00
ce708e2d16 Hide reblogs and hide replies filters
Closes #202
2022-12-17 13:40:15 -05:00
01467574d0 Don't show reblog swipe action when reblogging is forbidden
Closes #313
2022-12-17 13:09:33 -05:00
97a2278634 Fix previewing link in conversation main status activating link
Closes #311
2022-12-17 13:05:50 -05:00
4b2a263889 Better accessibility label for conversation toggle collapse button 2022-12-14 22:05:17 -05:00
77c9fac3ce Fix preferences not checking current account correctly when multiple scenes open 2022-12-14 21:27:50 -05:00
a13d5d5a82 Fix crash when activating account in My Profile scene 2022-12-14 21:24:54 -05:00
23e4541eb7 Don't reload list timeline if edit screen is closed without making changes 2022-12-14 21:00:36 -05:00
d4b9f71fd3 Remove old, unused code 2022-12-14 20:54:41 -05:00
a9edeaf5b9 Apply filters to Trending Posts 2022-12-14 20:52:44 -05:00
1f6074e539 Fix monospace fonts not adjusting for Dynamic Type 2022-12-14 20:07:16 -05:00
df7b62e14b Use KVO to invalidate LazilyDecoding properties 2022-12-14 19:46:02 -05:00
cacc8a51cc Remove unused code 2022-12-14 10:15:15 -05:00
360db07ef2 Fix URLs getting pasted as broken attachments
Closes #309
2022-12-14 09:47:17 -05:00
ff4dff1147 Fix status icons flashing blue during expand/collapse
Closes #209
2022-12-13 20:56:08 -05:00
ba1eed7a85 Add pointer effect to custom alert actions
Closes #306
2022-12-13 20:36:18 -05:00
0c9f6e02bd Fix controls reappearing when swiping between pages in gallery 2022-12-13 14:14:13 -05:00
565d17970f Make attachment description scrollable beyond a certain height
Closes #168
2022-12-13 14:07:16 -05:00
dc3c2d027c Prevent statuses which are in the persisted timeline state from being pruned 2022-12-13 13:31:34 -05:00
ba2c34fdd6 Persist timeline state using CoreData, rather than NSUserActivity
This allows persisting state for all the primary timelines, and across
all accounts.

Closes #297
Closes #293
2022-12-13 13:31:34 -05:00
3691c3f483 Actually encode the swipe action prefs 2022-12-12 23:09:18 -05:00
9c103103e8 Fix ToastableViewController automatic scroll view detection not handling collection views 2022-12-12 22:57:33 -05:00
382d8ef2c8 Fix Trending Posts appearing to reload forever 2022-12-12 22:51:50 -05:00
2891f47cb3 Fix statuses from the wrong timeline being restored into Home (again) 2022-12-12 22:47:16 -05:00
3c80ec8b43 Allow saving or following hashtag from Add screen 2022-12-12 22:06:55 -05:00
478ba3db28 Include followed hashtags in Explore and sidebar 2022-12-12 22:02:07 -05:00
f96cd1b5e2 Copy showStatusesAutomatically when selecting conversation expand thread item
Closes #303
2022-12-12 21:06:05 -05:00
7f4ab57a1d Fix <li> bullets/numbers appearing black in dark mode
Closes #304
2022-12-12 21:00:12 -05:00
8caf93bf0a Add ScrollingSegmentedControl, and home/notifs/profiles to use it 2022-12-12 20:57:38 -05:00
9c4b68b09e Reorganize gestures 2022-12-12 20:56:14 -05:00
71a57e9859 Fix images copied from Safari pasting as URLs
Closes #301
2022-12-11 12:54:25 -05:00
081ef16e5e Fix My Profile item in sidebar not updating when avatar style changes
Closes #298
2022-12-10 19:41:45 -05:00
b3ec259ce9 Fix status bar scroll to top not working in single-column navigation on iPad
Closes #296
2022-12-10 19:40:05 -05:00
4f48514d1a Actually only restore existing statuses 2022-12-08 20:15:12 -05:00
f96acd33f2 Tweak timeline status VO labels to only include attachment text when not blurred 2022-12-06 22:29:03 -05:00
cde061c77a Fix custom emoji not being stripped from usernames in VoiceOver labels 2022-12-06 22:26:08 -05:00
a79b3cfd70 Fix gallery controls not being accessible, fix escape gesture not working
Closes #292
2022-12-06 22:21:59 -05:00
9a35f96c75 VoiceOver: Include attachment descriptions in timeline statuses
Closes #291
2022-12-06 22:14:23 -05:00
60767c6a7e Profile Directory screen VoiceOver improvements
Add label to filter button (and change icon to match other filters)

Make each profile a single accessibility element
2022-12-06 21:54:17 -05:00
57668886b2 Fix crash when scrolling through Local/Federated timeline with VoiceOver
It seems that the accessibility scroll mechanism does something like:
1. Find the next IndexPath to focus
2. Scroll to make it visible
3. Focus that cell

But because the timeline description cell is removed during the scroll,
the IndexPath that the accessibility system wants to focus becomes
invalid between steps 2 and 3, causing a crash when trying to focus it.

As a workaround, only remove the timeline description _item_ rather than
the header section so that section indices aren't affected.

Closes #290
2022-12-06 21:46:32 -05:00
ffb5c76f7c Add preference to never blur attachments 2022-12-06 21:12:58 -05:00
00e8dd6345 Fix crash when previeiwng non-HTTP(S) link 2022-12-06 10:58:13 -05:00
7904462920 Fix serializing the nodeinfo version instead of the software version in breadcrumb 2022-12-05 22:24:33 -05:00
bebe563e8f Further tweak persistent store migration 2022-12-05 19:32:59 -05:00
4be2258882 Fix saving expired filters not reenabling them
Closes #289
2022-12-05 19:01:32 -05:00
40ff8d0a2a VoiceOver: improve description of gap cell, add actions to specify direction 2022-12-05 18:43:32 -05:00
0dcb7e71c4 Also perform jump to present check when the timeline VC reappears onscreen 2022-12-05 18:27:23 -05:00
08878f2fb9 Re-add tusker:// scheme
Apparently it was accidentally removed in d661870401

Closes #287
2022-12-05 17:28:28 -05:00
3ea7e1057b Add preference to disable timeline state restoration 2022-12-05 17:24:01 -05:00
fc8fcb76fd Fix crash when TimelineViewController tries to apply snapshot while not visible 2022-12-05 17:17:34 -05:00
eac2a9b19f Move VoiceOver Jump to Present action to timeline pages segmented control 2022-12-05 17:13:45 -05:00
0ce57d1308 More fiddling with how Jump to Present works
Now, when loading present items, they're inserted into the data source
immediately along with a gap. If the user taps Jump to Present, then a
new snapshot _with only the present items_ will be applied (which allows
infinite scrolling to work properly when they scroll back down) and the
view scrolled-to-top. Tapping Go Back, then, applies the original
snapshot (i.e., the current one from when Jump to Present was tapped)
and restores the scroll position.
2022-12-05 17:09:11 -05:00
97dec0f9d2 Add accessibility hint for segmented controls 2022-12-05 16:25:16 -05:00
b64c748b73 Add Jump to Present VoiceOver action
Closes #288
2022-12-04 22:06:04 -05:00
77ab2c3753 Fix Trending Posts reloading on every appearance 2022-12-04 22:03:48 -05:00
b90262bfd0 Tweak fav/reblog counts pref text 2022-12-04 19:50:15 -05:00
581f4b24bd Add Sentry breadcrumb for instance software/version 2022-12-04 18:26:06 -05:00
5f3d9da9f8 Only try to restore statuses that exist in the cache
This could result in discontinuities in the restored timeline, but I'm
not sure there's anything better we could do.
2022-12-04 17:34:28 -05:00
41775e5d19 Actually migrate to new persistent store locations 2022-12-04 17:33:09 -05:00
f1b1732e5c Fix filter HTML to attributed string conversion optimization not being applied 🤦‍♂️ 2022-12-04 15:36:26 -05:00
1da2b17a76 Fix dynamic type not applying to timeline status content 2022-12-04 15:35:54 -05:00
669404d6f8 Copy local-only status from replied-to post
Closes #280
2022-12-04 14:03:12 -05:00
2e21742264 Add Cmd+Enter keyboard shortcut for sending post
Closes #283
2022-12-04 14:01:09 -05:00
7763d08816 VoiceOver: Fix not being able to select account from conversation main status cell 2022-12-04 13:51:05 -05:00
726be85223 VoiceOver: Fix profile relationship label not being read 2022-12-04 13:51:05 -05:00
19bf6cbf18 VoiceOver: Add show profile rotor action to timeline statuses
Closes #285
2022-12-04 13:51:05 -05:00
df07fa85d5 Fix unsatisfiable constraints warning for ZeroHeightCollectionViewCell 2022-12-04 12:17:31 -05:00
e3e55de55b Fix hide filter action not working on profiles 2022-12-04 12:11:52 -05:00
54857a3bf3 Avoid converting HTML to attributed string twice when displaying a status cell for the first time
Now, when Filterer performs the conversion, the status cell can reuse
the attributed string.
2022-12-04 12:08:22 -05:00
b28f616e85 Don't apply expired filters 2022-12-04 11:55:46 -05:00
97c7104dbc Don't update constraints in StatusContentContainer.setCollapsed unless the state actually changes 2022-12-04 11:14:19 -05:00
6501343f24 Reapply filters on when they change 2022-12-04 10:54:02 -05:00
fabe339215 VoiceOver: Indicate filtered posts, make double tapping expand them 2022-12-03 23:20:19 -05:00
e1886509d3 Filter statuses on profiles 2022-12-03 23:11:09 -05:00
75e9c9f986 Fix home/list filters not applying to lists 2022-12-03 23:11:09 -05:00
a17afe247c Better filter cell and animation for showing filtered post 2022-12-03 23:11:09 -05:00
81abcfcf7b Timeline filtering! 2022-12-03 22:16:43 -05:00
7e5d8675c2 Extract HTML to attributed string converter to separate helper 2022-12-03 18:58:19 -05:00
cde3109203 Rename StatusState to CollapseState 2022-12-03 18:21:49 -05:00
fcf95ba8c1 Filters view UI tweaks 2022-12-03 15:22:10 -05:00
f71804f094 Extract filter create/update/delete logic into separate services 2022-12-03 14:40:12 -05:00
83ca7f1321 Creating filters UI 2022-12-03 14:40:12 -05:00
16a1e4008b V2 filters API, CoreData, and editing UI 2022-12-03 12:29:11 -05:00
518a8eba0a Start doing filters UI 2022-12-02 22:03:28 -05:00
8d56a6450e Fix mute account time not being 1 week 2022-12-02 21:39:05 -05:00
8896bfbc59 Consistent "OK" capitalization 2022-12-02 18:06:15 -05:00
4ca57f8c76 Better case-insensitive sorting for lists 2022-12-01 18:26:48 -05:00
c9fa11cc3b Fetch filters and store in CoreData 2022-11-30 22:16:33 -05:00
0247c50650 Fix invalid names being used for persistent store 2022-11-30 21:35:52 -05:00
eca06cb14a Fix too much space on profile header view above description 2022-11-30 21:13:48 -05:00
c07e2cfdd8 Add more possibilities to relationship label on profile header 2022-11-30 17:05:18 -05:00
db7615d26f Fix Edit List Accounts search field being jammed in the corner on iPad 2022-11-30 16:53:11 -05:00
2f0acad866 Return to previous item when the selected list/hashtag/instance is removed from the sidebar 2022-11-30 16:47:06 -05:00
a2b3fc0628 Fix saved/followed hashtag lookups being case-sensitive 2022-11-30 16:46:18 -05:00
e005b70071 Fix creating list on iPad not showing Edit List screen immediately 2022-11-30 16:34:12 -05:00
b515664db3 Fix creating list on iPad overwriting previous item navigation stack 2022-11-30 16:34:05 -05:00
948eff1f7e Workaround for crash when pressing Cmd+1/2/... on macOS
See #253

The actions won't work, but it's better than crashing :/
2022-11-29 23:19:19 -05:00
f1a39c2faa Add follow/unfollow hashtag actions 2022-11-29 23:14:36 -05:00
ab8e498cee Refactor menu actions to allow presenting from menu bar items 2022-11-29 23:14:36 -05:00
c6da754875 Indicate when a followed hashtag caused a post to appear in the home timeline 2022-11-29 23:14:36 -05:00
97d5b955a0 Store followed hashtags
The followed hashtags may not load until after the timeline request
completes, and we want to be able to show the hashtag indicator (or at
least make a best effort attempt) immediately.
2022-11-29 23:14:36 -05:00
80f9800fd6 Completely replace all items when jumping to present 2022-11-29 20:53:00 -05:00
0485400c1f Tweak how InstanceFeatures is updated 2022-11-29 20:52:39 -05:00
811aac35d7 Fix timeline statuses not getting deselected when entering split nav
Closes #275
2022-11-29 10:29:40 -05:00
a77b090435 Fix mute screen layout on iPad
Closes #276
2022-11-29 10:23:00 -05:00
21874b0966 Organize expanded custom emoji picker by category
Closes #223
2022-11-28 22:13:06 -05:00
08c63a2f84 Add indicator for locked profiles 2022-11-28 21:53:45 -05:00
97f00e9d6f Indicate pending follow requests, feedback on successful async menu actions
Closes #265
2022-11-28 21:41:56 -05:00
a97a7e0aea Fix attachments disappearing from status cells in certain circumstances 2022-11-28 20:40:24 -05:00
cf870916c9 Fix links in conversation main status not being activatable with VoiceOver
Closes #272
2022-11-28 19:14:08 -05:00
7297566060 Fix some swipe actions getting called off the main thread 2022-11-28 19:14:08 -05:00
4f28fec62a Add links/mentions/hashtag to VoiceOver rotor in timelines
Closes #231
2022-11-28 19:14:08 -05:00
c01bc4d840 Compose screen VoiceOver improvements 2022-11-28 18:40:35 -05:00
ea6698a2d8 State restoration for non-home timeline pages 2022-11-28 16:33:19 -05:00
1e950b5ccb State restoration for presented and edited drafts
Closes #270
2022-11-28 16:09:29 -05:00
3e5a3c81b5 Add cache size info to Advanced prefs 2022-11-28 14:05:35 -05:00
a5506aeab6 Add more tracing for notifications missing statuses
See #274
2022-11-27 21:54:58 -05:00
23b76a7276 Better crash messages for sidebar collapse/expand failures 2022-11-27 21:46:21 -05:00
d8f503351b Limit edit list accounts search to accounts the user follows 2022-11-27 21:44:17 -05:00
d5887f1f02 Add post edited notifications
Closes #238
2022-11-27 11:50:14 -05:00
e04cdd16d6 Add preferences for status cell swipe actions
Closes #249
2022-11-26 20:26:26 -05:00
c256fb4cbd When refreshing timeline, hide activity indicator as soon as loadNewer completes 2022-11-26 17:33:58 -05:00
21299c8eb8 Fix error when refreshing timeline with no items 2022-11-26 17:33:07 -05:00
527706154a Fix long status table view cells not getting collapsed 2022-11-26 17:28:55 -05:00
07c86b6949 Fix gifv attachments not being centered
Closes #271
2022-11-25 13:20:31 -05:00
92cf938e99 Fix cells not being deselected in account list and status action account list 2022-11-24 12:30:56 -05:00
23f9e200dc Fix potential crash when trying to save timeline state 2022-11-24 12:14:19 -05:00
366834e2e4 Tweak timeline state restoration to maintain scroll position of center item 2022-11-24 11:05:56 -05:00
d409d26478 Fix pressing CW button in Compose not toggling field visibility
Bring back the wrapper view, turn's out it was load bearing. We need to
be able to observe both the ui state and the draft object, while also
updating the observed draft object when the ui state's draft changes,
and this seems like the most straightforward way of doing that.
2022-11-23 14:07:03 -05:00
40800f964d Fix jump to present not scrolling all the way to the top 2022-11-23 11:58:52 -05:00
9f7d16a70e Don't show duplicate actions in status cell more actions menu 2022-11-23 11:47:00 -05:00
c2cb0a0c5a Timeline state restoration 2022-11-23 11:35:25 -05:00
272f35417b Rewrite account list VC using UICollectionView 2022-11-22 15:38:40 -05:00
848c3dd950 Rewrite status action account list to use UICollectionView 2022-11-22 15:29:17 -05:00
dfeb39b31f Fix selecting draft not working
Closes #263
2022-11-22 14:00:41 -05:00
bab5226f2a Fix albums in asset picker not being sorted by name 2022-11-22 13:57:56 -05:00
88cfbfb1f3 Improve reblog indicator on statuses
Closes #225
2022-11-22 11:48:59 -05:00
49f1d6339f Fix crash when toggling collapse in Trending Posts
Closes #262
2022-11-22 11:47:57 -05:00
3e7cb443fa Correct post content type warning
Hometown does not support formatting
2022-11-22 11:39:47 -05:00
b5c8a38b9b Add preference for using twitter-style keyboard 2022-11-22 11:06:21 -05:00
ab19922530 Indicate verified profile links
Closes #241
2022-11-22 11:00:52 -05:00
45c844b065 Separate Shared Albums section in asset picker
Closes #244
2022-11-21 23:21:21 -05:00
47b838a386 Change timeline gap-filling to do a proper job of maintaining the bottom-relative scroll position 2022-11-21 22:47:44 -05:00
276691efbf Embiggen gallery share/close buttons
Closes #257
2022-11-20 21:37:57 -05:00
0a8d50cc27 Fix double-tap to zoom in gallery not working
Closes #256
2022-11-20 15:48:29 -05:00
11e81acbc1 Fix toasts not adjusting font for Dynamic Type 2022-11-20 14:15:21 -05:00
fb2c9b341c Fix custom alert action icon getting squished when Dynamic Type is on
Closes #254
2022-11-20 14:12:00 -05:00
810ae71832 Make poll options in Compose reorderable with drag/drop 2022-11-20 14:06:45 -05:00
001a73af3c Workaround for profile header changing size when statuses are loaded in the background
Closes #250
2022-11-20 13:57:51 -05:00
c8375b742a Make more actions button on profiles more prominent 2022-11-19 14:29:21 -05:00
9feef054fc Fix list timeline VC presenting edit screen repeatedly 2022-11-19 14:22:26 -05:00
bf87ae7a7d Add Add to List menu action to accounts
Closes #247
2022-11-19 14:22:26 -05:00
f8de6f9e10 Fix follow/block/mute actions showing up on user's own account 2022-11-19 14:10:19 -05:00
ab47fa776e Store lists on MastodonController 2022-11-19 14:08:39 -05:00
7178473f34 Fix compose toolbar being hidden by software keyboard on iPadOS 15
Closes #252
2022-11-19 13:35:34 -05:00
c8319d8af2 Remove old and debug code 2022-11-19 13:11:29 -05:00
9ff1452c68 Show jump to present toast if necessary when scene re-appears 2022-11-19 13:09:37 -05:00
ce534c4a05 Actual gap cell implementation 2022-11-19 11:15:14 -05:00
0fddf94292 Timeline jump to present 2022-11-18 20:49:15 -05:00
8276e99d27 Timeline gaps and gap filling 2022-11-18 17:29:55 -05:00
a5ad8e43b1 Disable attachment colorspace conversion on Mastodon v4 2022-11-15 21:45:42 -05:00
ce7ce3ac92 Fix crash when requests race with own account
If the notifications/etc load first, and the table view cells are
created, mastodonController.account may still be nil
2022-11-14 21:38:24 -05:00
99a1c76cb1 Clean up instance type/feature detection
Add akkoma detection
2022-11-14 21:17:08 -05:00
af2d9e7eb8 Fix pleroma version detection 2022-11-13 18:24:46 -05:00
06ad46e639 Fix confirm reblog alert not adjusting to Dynamic Type
Closes #246
2022-11-13 17:15:06 -05:00
71f97d41c4 Fix certain instance features not being detected properly 2022-11-13 17:08:15 -05:00
df131f32c6 Fix reblog visibility dropdown displaying even when unsupported 2022-11-13 17:07:57 -05:00
77dece36d0 Fix Hometown versions not being parsed correctly 2022-11-13 17:05:08 -05:00
1a767ff910 Fix crash when opening My Profile on iPad 2022-11-13 14:30:00 -05:00
220c8050b1 Re-add pointer effects to Compose toolbar buttons 2022-11-13 14:15:44 -05:00
d4fa9c96e8 Add context menu action to delete draft 2022-11-13 14:03:51 -05:00
22b5d62ba1 Make GIF attachments animate in the Compose screen 2022-11-13 14:01:54 -05:00
b9bdd29986 Fix GIFs dragged from Finder posting as static images
Closes #239
2022-11-13 13:46:19 -05:00
f848bbf7c4 Remove unneeded ComposeContainerView 2022-11-12 22:59:11 -05:00
0fe9edfdbc Fix crash when opening Drafts screen on macOS 2022-11-12 22:59:11 -05:00
6d2830cf78 Rewrite Compose toolbar with SwiftUI
Fixes buttons not being accessible with VoiceOver
Fixes content overflowing on small devices

Closes #232
Closes #218
2022-11-12 22:59:11 -05:00
7294ff6e1a Status VoiceOver improvements
Closes #229
Closes #230
2022-11-12 15:17:30 -05:00
3fd62552b3 Hide redundant info from VoiceOver in mute screen 2022-11-12 14:45:30 -05:00
fa5abc27f7 Make profile fields view VoiceOver accessible 2022-11-12 14:43:47 -05:00
ccc47e204d Fix InstanceFeatures not correctly using pleroma version 2022-11-12 14:34:57 -05:00
bf3f735062 Focus CW field immediately when CW enabled, move focus to main text view when return key pressed
Closes #226
2022-11-12 14:16:05 -05:00
de0198946e Fix keyboard reappearing after pressing Post button on Compose screen 2022-11-12 13:52:36 -05:00
072a77b58e Cleanup previewing actions code 2022-11-11 23:35:30 -05:00
eb7fe22863 Add mute action to profiles
Closes #201
2022-11-11 23:35:30 -05:00
f1511039ef Add domain block action to profiles 2022-11-11 22:44:58 -05:00
5c479e3bf0 Convert wide-gamut images to sRGB before uploading 2022-11-11 21:02:38 -05:00
0413f326a0 Add block action to accounts
Closes #208
2022-11-11 19:09:34 -05:00
802a0ac9ba Fix scope selector in Profile Directory being flipped 2022-11-11 18:30:09 -05:00
9da986e3b8 Tweak heuristic for showing profile fields in single column 2022-11-11 18:26:59 -05:00
e6a5b899be Add context menu action for deleting lists on iPad 2022-11-11 18:20:16 -05:00
60bf3b2e33 Fix potential crash when deleting list 2022-11-11 18:16:44 -05:00
b465838b71 Fix renaming list not updating UI
Closes #213
2022-11-11 18:08:44 -05:00
21bd716844 Fix crash when creating list fails
Closes #212
2022-11-11 17:54:25 -05:00
523fb91b21 Add scope to search following accounts when editing list
Also fixes crash when loading or editing list

Closes #216
Closes #221
2022-11-11 17:33:48 -05:00
d8bf770902 Instance selector tweaks
Closes #234
Closes #237
2022-11-10 17:05:51 -05:00
10aa32d9cc Don't use UIPageViewController for profiles
Closes #228
2022-11-10 17:00:46 -05:00
7474969969 Workaround for AVPlayerViewController controls not respecting safe area
Closes #176
2022-11-09 21:46:52 -05:00
319b5458fc Fix refreshing not loading initial when previous attempt failed
Closes #214
2022-11-09 19:15:08 -05:00
f7304a011c Fix images not being cached
Fixes #219
2022-11-09 18:56:59 -05:00
94dc5d3177 Fix not being able to tap links in profile fields
Closes #211
2022-11-09 18:51:27 -05:00
6d692c2730 Rewrite Drafts screen with SwiftUI 2022-11-09 18:18:31 -05:00
d0f8691560 Fix draft cells become untappably small 2022-11-09 17:20:56 -05:00
9a43ab5a13 Fix caret not scrolling into view when focusing compose text views
Closes #233
2022-11-09 17:18:17 -05:00
01124b76a3 Add Duckable package, make Compose screen duckable 2022-11-08 22:17:01 -05:00
7600954f4b Refactor ComposeView to use a single List for everything 2022-11-07 22:58:01 -05:00
5a5c67e445 Try to prevent pruning accounts that still have statuses referencing them 2022-11-07 18:47:46 -05:00
e40f4faa8e Rewrite TrendingStatusesViewController to use collection view 2022-11-05 15:13:20 -04:00
b56c6c37ec Fix crash when ProfileHeaderView tries to create observers after ProfileVC is deinit'd
Can happen if the network is slow and the user closes the profile screen before the header loads
2022-11-05 14:42:40 -04:00
999118798c Fix inserting pinned items that already exist when refreshing profile 2022-11-05 14:38:08 -04:00
84cf755332 Fix drawing VC background flickering in dark mode
Closes #199
2022-11-05 14:29:45 -04:00
5bd7c0ad2b Add preference to prevent blurring media behind CW
Closes #203
2022-11-05 13:20:55 -04:00
7fe06d42ce Consider content height, not just char count, when collapsing posts
Closes #205
2022-11-05 13:11:36 -04:00
20986ba3f0 Add preference for default reply visibility
Closes #207
2022-11-05 12:20:30 -04:00
97a95c435e Improve performance when displaying posts with many custom emojis
Closes #204
2022-11-05 11:00:14 -04:00
b9555cf7dd Dynamic type support in assorted places 2022-11-04 22:32:40 -04:00
590b9f0bcc Dynamic type support on notifications screen 2022-11-04 22:32:34 -04:00
ca2ceaea56 Remove now-unused confirm load more table view cell 2022-11-04 22:32:34 -04:00
96d8a79d42 Dynamic type support in Explore screen 2022-11-04 21:47:42 -04:00
11233f7d25 Dyanmic type support in profile header view 2022-11-04 21:39:47 -04:00
a991e0f429 Dynamic Type support in status cells 2022-11-04 16:52:37 -04:00
bfdce07d81 Fix compose reply avatar being wrongly aligned for 1-line statuses 2022-11-03 19:14:52 -04:00
f5953655c5 Set merge policy on managed object contexts and maybe fix some CoreData errors? 2022-11-03 18:56:06 -04:00
6bc4993d81 Fix favorite/reblog menu actions not working 2022-11-03 18:48:39 -04:00
68646c4b4d Fix objc associated objects not working in release builds 2022-11-03 18:37:32 -04:00
38b0d57118 Improve CoreData error reporting 2022-11-03 10:27:45 -04:00
7bdbd9f71a Handle task cancellation in MastodonController.run 2022-11-02 23:00:29 -04:00
b47876dc3d Fix retain cycle due to account follow action workaround 2022-11-02 22:59:44 -04:00
4644475bc7 Fix crashes when ProfileStatusesVC doesn't finish loading until ProfileVC is deinit'd 2022-11-02 22:53:07 -04:00
16ba292afa Remove debug print 2022-11-02 22:34:40 -04:00
c7f3bac330 Add sterner warning about post content type 2022-11-02 22:06:08 -04:00
abb8352c92 Fix ImageCache.get completion not being called when image isn't loaded 2022-11-02 22:06:08 -04:00
59d866aa23 Ditch custom image request grouping, rely on URLSession's 2022-11-02 22:06:08 -04:00
ba032412eb Fix timeline reloading every time VC appears
Caused by changes to TimelineLikeController required to let list
timelines reload from scratch
2022-11-02 22:06:07 -04:00
5de0c034f4 Remove old TimelineTableViewController 2022-11-01 21:11:13 -04:00
b1d83f2746 Switch hashtag/instance/list timelines to use new collection view impl 2022-11-01 21:10:41 -04:00
658c08010d Re-add undo scroll-to-top to timelines/profiles 2022-11-01 20:49:07 -04:00
6a5753fac8 Fix crash when tapping Load More button with Disable Infinite Scrolling 2022-10-31 17:45:36 -04:00
8da89986df Fix find instance VC requiring double dismiss 2022-10-31 17:39:57 -04:00
c7e39cb041 Use short descriptions in instance selector when available 2022-10-31 17:35:50 -04:00
b755607895 Fix crash when TimelineStatusTableViewCell outlives its containing VC 2022-10-31 17:33:33 -04:00
508eef8c07 Nothing to see here 2022-10-31 17:33:33 -04:00
a18dfc38af Fix crash when refreshing profile before it has loaded 2022-10-31 17:33:33 -04:00
95f9fad673 Tweak Sentry config 2022-10-31 17:33:33 -04:00
4857b507b1 Send CoreData saving errors to Sentry 2022-10-31 12:26:09 -04:00
cc33cf18f2 Workaround for follow menu item never resolving on macOS
See #198
2022-10-30 18:54:14 -04:00
c5921bc4cb Add option to disable automatic crash reporting 2022-10-30 18:17:53 -04:00
91450ced7c Use Sentry for crash reporting 2022-10-30 17:10:58 -04:00
5afd9e83eb Shhh 2022-10-30 14:47:36 -04:00
d05275020f Tweak timeline status cell spacing 2022-10-29 21:18:01 -04:00
c420c236d9 Whoops 2022-10-29 21:06:27 -04:00
d5433e9b91 Fix crash when opening profile view controller with uncached account
E.g., by tapping a mention in a status
2022-10-29 18:55:13 -04:00
cbbe9ec11f Fix crash in profile due to accessing data source before it exists
This could happen if an account is updated in the background while a
profile is on screen and the user has not visited all of the tabs.
2022-10-29 18:40:41 -04:00
0e06d47687 Fix status collapse changes not animating on profiles 2022-10-29 18:27:24 -04:00
10239d14c9 Fix selected segment not updating on profiles when switching tabs with keyboard shortcuts 2022-10-29 15:08:03 -04:00
2344275ff9 Enable blurhash in debug
Capping the size at 32x32 means this is fast enough even in un-optimized builds
2022-10-29 14:19:43 -04:00
e0ffa1d9c5 Cap blurhash image size at 32x32 2022-10-29 14:19:43 -04:00
77a6654ff2 Fix crash when generating blurhash image for AttachmentView that hasn't been laid out
It was passing a negative size into the blurhash decoder, which is invalid

Instead, cap the size at 32x32 (letting the image view scale it up when rendering)
2022-10-29 14:19:43 -04:00
43aee0ec67 Add pointer interaction to avatar in timeline status cell 2022-10-29 14:19:43 -04:00
d95ba82e5b Improve pointer interaction on new status cell action buttons
Closes #195
2022-10-29 14:19:43 -04:00
b6d8232951 Fix replies appearing multiple times in drafts 2022-10-29 14:19:43 -04:00
bb9cef55ea Don't remove persistent data when clearing cache 2022-10-29 14:19:43 -04:00
67718d8fe4 Fix wrong logs getting sent with crash reports 2022-10-29 14:19:43 -04:00
71a2029752 Switch everything to new profile view controller 2022-10-28 21:38:56 -04:00
6bb1f3b7dc Finish converting profiles to collection views 2022-10-28 21:31:18 -04:00
2469d285bc Initial implementation of profile switching with collection views 2022-10-28 19:17:33 -04:00
5f410213e2 Start converting profile statuses to collection view 2022-10-28 19:17:33 -04:00
bb3e1b44b1 Hide live text controls when other gallery controls are hidden
Closes #189
2022-10-28 19:16:00 -04:00
868df25417 Disable pruning offscreen rows in new timelines
I don't think this is actually necessary, the system should kill us
often enough that the amount of items in the data source doesn't become
unmanageable.

Making modifications to the data source in viewDidDisappear was causing
the collection view's contentOffset to change to be scrolled to top
(roughly) when the view became visible again.

Disabling it also fixes several issues caused by updating the data
source even when there were no changes.

Closes #193
Closes #192
Closes #187
Closes #186
2022-10-28 19:05:07 -04:00
2801f65e67 Fix reblog labels in new cells not being tappable
Closes #197
2022-10-28 18:48:30 -04:00
cccde29e6c Fix crash when long-pressing Send Report button on iPad
Closes #190
2022-10-27 23:11:21 -04:00
aa0629d202 Don't dismiss issue reporter when email is cancelled
Closes #191
2022-10-27 23:10:00 -04:00
ba209fa4d2 Protect DiskCache.fileStates with a lock
Closes #194
2022-10-27 23:06:50 -04:00
d224f47b8c Fix long content warnings getting truncated in new status cells
Closes #185
2022-10-11 17:04:31 -04:00
ffb0ceba20 Remove old XCB code 2022-10-11 10:10:55 -04:00
1ac72bc363 Fix collection view cells not deselecting in split nav controller on iPad 2022-10-10 18:58:07 -04:00
dcc8f38f3d Fix key commands not working inside split nav controller on iPad
Fixes #179
2022-10-10 18:58:07 -04:00
8cf217d2ba Fix crash when trying to prune rows before statuses have loaded 2022-10-10 16:21:08 -04:00
7d66117fab Fix mentions from Misskey opening browser instead of profile view 2022-10-10 14:31:26 -04:00
9c0c1f87f8 Fix links/mentions/hashtags in timeline statuses not being tappable 2022-10-10 14:26:47 -04:00
7a2d8e78eb Attempt the third at making debug logging work in TestFlight 2022-10-10 14:25:25 -04:00
c15a5fc90f Fix reblog statuses being selected in timeline 2022-10-10 14:23:27 -04:00
212ce69ffd Log when status unexpectedly doesn't have URL 2022-10-10 14:21:12 -04:00
d1b4b39e86 Fix MultiThreadDictionary crash on iOS 15 due to using existential types
See #178
2022-10-09 21:53:58 -04:00
035034430e Fix crash when hovering with the cursor over certain text views
Closes #183
2022-10-09 20:49:08 -04:00
a703b7cc0a Prune offscreen rows on new timeline 2022-10-09 20:11:00 -04:00
e78bec8409 Fix sensitive attachments not being hidden in new timeline 2022-10-09 19:15:41 -04:00
412e4a4dc5 Fix public timeline descriptions not working
Closes #182
2022-10-09 19:11:34 -04:00
81e10326d3 Add logging to persistent store 2022-10-09 17:09:55 -04:00
20f88ef161 Fix debug logs not working
Apparently only values in Info.plist do substitution
2022-10-09 16:46:40 -04:00
d661870401 Include log data in issue/crash reports 2022-10-09 14:26:44 -04:00
1b186725ce Re-add timeline context menus 2022-10-08 23:47:42 -04:00
164a8e26c4 Fix not being able to press attachments in new status cells 2022-10-08 19:10:21 -04:00
cadcc1a92a Don't navigate to profile when tapping name stack in timeline status
Otherwise it's too difficult to open short posts
2022-10-08 16:53:48 -04:00
bcb3c24027 Fix context menu presentation animation getting clipped in new status cells 2022-10-08 16:53:48 -04:00
fd6a4ba41c Fix update timestamp work item firing too frequently
A reconfiguration would schedule a new work item without cancelling the
old one, resulting in the timestamp updating multiple times in quick
succession (noticeable for statuses <60s old).
2022-10-08 16:53:48 -04:00
3ab82b2dbb Fix attachments/cards flickering in new cells on reconfiguration 2022-10-08 16:53:48 -04:00
1ed218d5e3 Fix new status cells not showing meta indicators or reblog button visibility 2022-10-08 16:53:48 -04:00
0fee770411 Fix crash when displaying new status cells with polls 2022-10-08 15:12:17 -04:00
5b116c0d4e More logging! 2022-10-08 15:12:10 -04:00
b7a4f7e30f Make tapping content warning label toggle expand/collapse 2022-10-08 15:03:50 -04:00
ba1300b1b7 Re-add status cell dragging 2022-10-08 15:01:23 -04:00
817ef0c2cc New timeline key commands 2022-10-08 14:53:21 -04:00
18ee621489 Status cell swipe actions 2022-10-08 14:33:07 -04:00
ddf5094acf Only show collapse button on collapsible statuses 2022-10-08 13:21:01 -04:00
133921848d Extract favoriting/reblogging to separate services
Allows displaying error popups and retrying
2022-10-08 13:19:32 -04:00
46db70d58b Fix building in release mode
When handleEvent dispatches to the other methods, it crashes the compiler
during an optimization pass. Seems to be related to:
https://github.com/apple/swift/issues/61350
2022-10-08 11:45:02 -04:00
21958eb77f Merge branch 'develop' into collection-timelines 2022-10-08 11:01:19 -04:00
b30f149dc9 Use mutex on iOS 15 instead of os_unfair_lock
See #178
2022-10-08 10:57:59 -04:00
9b83566482 Fix TuskerTests not compiling 2022-10-08 10:55:55 -04:00
b688631937 Update status cells on status changes 2022-10-06 22:36:55 -04:00
4d654358d7 Extract a bunch of common stuff to StatusCollectionViewCell protocol 2022-10-05 23:19:30 -04:00
24e90de672 Status cell interaction 2022-10-05 22:28:10 -04:00
780e8b09b7 Status cell UI 2022-10-05 21:39:58 -04:00
2196663d94 Make StatusContentContainer play nice with hiding subviews 2022-10-04 22:48:42 -04:00
7085ac01cb Timeline status collection view cell collapsing 2022-10-04 00:02:41 -04:00
81671d73c7 Start converting timeline status to UICollectionViewCell 2022-10-04 00:01:16 -04:00
a38c89a17f Re-add public timeline descriptions 2022-10-01 15:32:06 -04:00
253fb8d27d Extract more things to TimelineLikeCollectionViewController 2022-10-01 15:08:51 -04:00
a682c8f5cc Extract a bunch of timeline view controller stuff to separate protocol 2022-09-24 11:39:12 -04:00
d18a4b3c42 Fixing loadInitial happening multiple times 2022-09-24 11:31:52 -04:00
426b31d46c Initial TimelineLikeController + TimelineViewController implementation 2022-09-24 10:49:06 -04:00
5c09b1910f Cleanup/reorganize some things 2022-09-19 22:52:52 -04:00
fe72d8faec Remove x-callback-url support
Closes #1
2022-09-19 22:44:27 -04:00
b560bcd8dc Prevent loading indicator from potentially being added multiple times
Not sure how this could happen, but it's caused 1 crash in the wild so w/e
2022-09-19 22:35:27 -04:00
5ac76ef9c4 Revert "Maybe fix timeline discontinuities"
This reverts commit 43b4976ed7a7e2d94e61cd12147888f304f1fc43.

That commit reintroduced #166
2022-09-18 22:37:18 -04:00
d141ed7d03 Enable reblog with visibility on Pleroma 2022-09-18 22:01:57 -04:00
95e120afd6 Fix large image controls not being hidden on iPhone 14 Pro 2022-09-18 11:30:50 -04:00
ca8a214cf6 Add reblog with visibility menu to reblog confirmation alert 2022-09-18 11:28:33 -04:00
7161861d36 Add API param for reblog visibility 2022-09-18 11:28:33 -04:00
c6c8f63e39 Fix compose reply view not working after ContentTextView refactor, use named CoordinateSpace for calculating scroll offset in reply avatar view 2022-09-18 11:28:33 -04:00
e9962997a6 Show preview of status in reblog confirmation alert
Closes #121
2022-09-17 20:27:36 -04:00
f2ab1778c5 Replace expanded emoji picker with SwiftUI 2022-09-15 21:49:50 -04:00
0f71d61b88 Fix crash when there are duplicate emojis
Closes #164
2022-09-15 21:10:52 -04:00
80c4fcce82 Use AnyAccount instead of EitherAccount for compose autocomplete 2022-09-15 21:05:18 -04:00
43b4976ed7 Maybe fix timeline discontinuities
See #174
2022-09-15 20:54:28 -04:00
ff3681627b Fix reblog status cell not showing selection background in spacer
Closes #175
2022-09-15 20:45:45 -04:00