319 Commits

Author SHA1 Message Date
b5a41badcc
Replace content labels with text views
UITextView uses TextKit internally, unlike UILabel, so no additional
code is needed to keep the TextKit and view representations of the text
in sync since they are one and the same. This means that detecting which
character was tapped in a content text view is much more accurate, which
means link handling is substantially imrpoved.

Fixes #20
2020-01-18 16:05:00 -05:00
23de131290
Add preference to require attachment descriptions before posting
Closes #76
2020-01-17 21:55:21 -05:00
3928b2e88a
Store an array of logged-in accounts internally, get the active
MastodonController from the current UIScene

See #16
2020-01-07 21:29:15 -05:00
8dba15ca17
Switch to scene-based lifecycle events
See #16
2020-01-07 18:39:19 -05:00
29e0128a55
Fix broken file paths 2020-01-06 20:27:58 -05:00
2bdcb9b7f8
Replace global shared MastodonController instance with (mostly)
dependency injection

The places still using the .shared property are cases where there is no
view controller from which to (easily) get the appropriate instance,
such as user activity and X-Callback-URL handling. These uses will need
to be revisited once there are multiple MastodonControllers.

See #16
2020-01-05 15:25:07 -05:00
ad09e36907
Show follow requsts in notifications w/ accept/reject buttons
Closes #64
2020-01-04 23:13:23 -05:00
05cc3fd6d9
Add pinning/unpinning statuses
Closes #69
2020-01-04 19:31:35 -05:00
3ecbb1895c
Replace GMImagePicker with custom asset picker based on SheetController
Fixes #23
Closes #50
2020-01-04 16:25:15 -05:00
18c3c3c434
More UI testing setup and API mocks 2019-12-31 11:40:56 -05:00
49f58cf955
Initial UI testing setup 2019-12-30 16:00:14 -05:00
377b5f5c85
Add ability to save and view instance public timelines 2019-12-19 22:55:41 -05:00
ae6a0513e4
Add local saved hashtags
Closes #66
2019-12-19 21:20:29 -05:00
afc2bfcf6b
Add list editing 2019-12-17 22:56:53 -05:00
270cbc2a6c
Add lists to Explore tab
Closes #63
2019-12-17 21:10:30 -05:00
036791bd39
Replace Search tab with Explore tab
- Search controller (functionally the same, presents results on top of
explore menu)
- Add bookmarks screen

See #63
2019-12-17 00:22:25 -05:00
05d79d5d03
Use same nav delegate more options for context menu share sheet 2019-12-14 13:36:05 -05:00
4c0607af79
Add (un)bookmarking to status more options 2019-12-14 12:40:50 -05:00
eb6cfba9aa
Fix tablel view cells being re-selected on aborted nav swipe back 2019-12-14 11:59:31 -05:00
b47b08fa95
Store status collapse state in containing view controller
Also, copy the state between screens, so e.g. expanding a status in the
timeline and then opening that conversation already has that status
expanded.

This intentionally doesn't store the sensitive attachment visibility
state, since showing text when not necessary is less dangerous than for
images. (Possibly a preference for this in the future?)

Closes #55
2019-11-28 18:36:58 -05:00
24a1e7ceb9
Unify most of TimelineStatus and ConverastionMainStatus cell code
Closes #54
2019-11-19 12:08:11 -05:00
8fb3b211b6
Add button to conversation table view to collapse/expand all posts
This needs a refactor once StatusTableViewCell and
ConversationMainStatusTableViewCell are merged. See #54
2019-11-18 22:28:47 -05:00
150adeb581
Use custom navigation controller for preferences to override
viewWillDisappear method and send preferences changed notification

Workaround for #36
2019-11-17 14:31:07 -05:00
5076aec54e
Use ObservedObject for binding to prefs in SwiftUI instead of custom property wrappers 2019-11-14 19:53:00 -05:00
c84b042c33
Modify font descriptor traits when applying bold/italic formatting
instead of replacing font entirely.

Fixes #51
2019-09-22 19:30:15 -04:00
f0c0376f80
Add home screen shortcuts 2019-09-19 16:55:15 -04:00
df8e0dedd4
Add instance selector 2019-09-15 15:01:35 -04:00
fc2aea04c3
Add hashtags to search 2019-09-14 21:24:43 -04:00
e121dd37b8
Add Search tab
Closes #31
2019-09-14 20:47:08 -04:00
88344c67e8 Merge timeline tabs
Closes #46
2019-09-14 15:59:32 -04:00
905b6a0a21
Add preference for default notifications display mode 2019-09-14 13:02:33 -04:00
8bb6e9403d Add toggle to control whether Notifications tab shows all or just mentions
Closes #45
2019-09-14 12:04:20 -04:00
d52875cf25 Allow Pleroma instances to exceed Mastodon attachment limits
Closes #35
2019-09-11 16:57:42 -04:00
9522509f8f
Remove unnecessary XIBs 2019-09-06 17:45:49 -04:00
d9abf3ec09
Show list of accounts based on grouped notifications 2019-09-05 23:16:45 -04:00
76bc6a665c
Show list of accounts for grouped follow notifications 2019-09-05 22:30:58 -04:00
a363308147
Follow notification grouping
Closes #28
2019-09-05 19:35:19 -04:00
1618313742
Fav/reblog notification grouping
#28
2019-09-05 17:45:45 -04:00
e53b14c729
Reorganize Pachyderm code 2019-09-05 14:40:35 -04:00
b60688f4b8
Show share sheet with custom activities instead of alert controller for account actions 2019-09-05 12:49:17 -04:00
84cfa923ca
Use Notification for updating view appearance on preferences change 2019-08-02 18:05:47 -06:00
51a03553a9
Add preference for how reply CWs are copied 2019-07-31 21:25:44 -06:00
d9b21a0196
Represent timelines internally as segments
Primarily in preparation for timeline position persistence and split
timelines
2019-07-31 17:42:19 -06:00
5f5ff68b80
Merge branch 'swiftui-preferences' 2019-07-27 21:59:21 -04:00
50d641eb59
Block gab.* domains from logging in 2019-06-19 19:12:42 -04:00
55fc032f36
Extract attachment layout to it's own view
Use AutoLayout + stack views instead of manual frames, fixes attachments
sometimes not using the whole width
2019-06-16 19:02:18 -04:00
e6c6293c10
Add multi-image gallery
Closes #18
2019-06-14 17:23:40 -07:00
f2e3870850
Start rewriting preferences in SwiftUI 2019-06-13 17:53:17 -07:00
9d4782c63c
Add SF Symbols icons 2019-06-11 10:21:22 -07:00
b3b9d566b7
iOS 13 Dark Mode Support 2019-06-04 13:31:05 -04:00
66bb1050a5
Add support for additional formatting
Italics, bold, strikethrough, monospace, and (un)ordered lists
2019-04-04 21:45:48 -04:00
9c0624b79e
Clean up warnings 2019-04-01 17:58:44 -04:00
2a11a09c91
Convert to Swift 5 2019-04-01 17:51:40 -04:00
779f04b62f
Add README 2019-02-10 10:41:54 -05:00
07ce3d41a8
Remove old tab customization code 2019-02-10 10:32:13 -05:00
ef6047fcb1
Replace TTTAttributedLabel with custom LinkLabel 2019-02-03 11:39:27 -05:00
55ed2f5d26
Get rid of AppRouter 2019-01-19 14:31:31 -05:00
b8430be00c
Initial rewrite/redesign of compose screen
Still pending:
- Posting videos
- Image resizing
- Attachment drawer thing
2019-01-14 21:59:42 -05:00
fe85e3c1d6
Redo app navigation/tab bar 2019-01-05 12:59:55 -05:00
e3d27e0720
Add undo scroll-to-top 2018-11-10 11:48:09 -05:00
f684591888
Use Gifu for GIF playback 2018-11-09 15:48:08 -05:00
86d064dc6e
Don't cache attachments to disk, only avatars and headers 2018-11-07 19:24:52 -05:00
82d4fe22cf
Cleanup visibility selection 2018-10-25 21:54:07 -04:00
ba55540712
Add Behavior preferences section 2018-10-25 21:29:13 -04:00
df6976df2f
Add post drafts 2018-10-22 22:09:11 -04:00
7e8f22c471
Refactor view controller creation/navigation into AppRouter 2018-10-20 22:07:04 -04:00
35de20fe40
Cleanup 2018-10-20 15:38:17 -04:00
eb9e1276df
Replace most storyboards with XIBs 2018-10-20 12:13:41 -04:00
9e7e16b3fc
Start adding Siri Shortcuts 2018-10-20 10:55:01 -04:00
fda4ca4d11
Target iOS 12.0 2018-10-19 19:54:43 -04:00
0b6459a806
Add 3d touch peek/pop navigation 2018-10-11 21:52:41 -04:00
57b4e67cc2
Allow tabs to be enabled/disabled and reordered 2018-10-06 11:03:55 -04:00
0f37843a5b
Fix crash on follow notification 2018-10-05 19:25:48 -04:00
b796f288c8
Merge branch 'image-caching' 2018-10-03 08:53:17 -04:00
982e42ca2f
Refactor AvatarCache to ImageCache
Use Cache library (https://github.com/hyperoslo/Cache) for caching
2018-10-03 08:45:03 -04:00
a6373f7e10
Extract Appearance preferences into separate controller 2018-10-02 19:39:39 -04:00
57cbebecbd
Merge branch 'master' of github.com:shadowfacts/Tusker 2018-10-02 18:28:38 -04:00
697873c045
Xcode suggested changes 2018-10-02 08:34:41 -04:00
f7a2576842
Use child view controller for loading 2018-10-01 21:25:10 -04:00
3d39087980
Replace ActiveLabel-based implementation with TTTAttributedLabel 2018-10-01 19:50:03 -04:00
139a214d2f
Move StatusTableViewCellDelegate methods to TuskerNavigationDelegate 2018-09-30 19:29:52 -04:00
728a5a4ff1
Add preferences UI for silent XCB actions 2018-09-30 19:05:06 -04:00
db1be505e0
Switch to new text view placeholder implementation 2018-09-30 19:04:58 -04:00
d1b45ddf7b
Pachyderm: Add CharacterCounter 2018-09-29 21:57:10 -04:00
813ed27d29
Refactor XCB actions code, add JSON responses 2018-09-25 21:41:12 -04:00
9a41d44e9f
Add getCurrentUser XCB action, refactor XCB support some more 2018-09-23 21:35:33 -04:00
af0d0612ba
Add silent x-callback-url actions
User confirmation is required the first time a source app attempts to
run an action silently. Rejecting will always display the UI for the
given action (as if the silent parameter had been false).
2018-09-23 19:04:45 -04:00
d74f86418e
Add initial x-callback-url implementation 2018-09-23 12:01:23 -04:00
0d902f7d37
Xcode suggestions 2018-09-23 12:00:30 -04:00
a10b990073
Cache accounts 2018-09-18 12:59:07 -04:00
a6d23d12eb
Add shared status cache 2018-09-17 21:57:46 -04:00
6ec0ae5489
Refactor swipe actions into TableViewSwipeActionProvider 2018-09-15 13:11:58 -04:00
6f424666d8
Add post progress view 2018-09-12 09:19:51 -04:00
17d072c5b2
Fix upload media 2018-09-11 13:45:48 -04:00
c59a2b32a2
Merge branch 'progress-view' 2018-09-11 12:52:01 -04:00
1119a861d8
Replace MastodonKit with Pachyderm 2018-09-11 10:52:21 -04:00
a1cd9496e9
Start progress view 2018-09-11 08:15:10 -04:00
d4a451fadb
Favorites and reblogs 2018-09-08 21:35:40 -04:00
b340fb9df7
Add default post visibility preference UI 2018-09-03 21:44:44 -04:00
bd1f8fa20a
Reorganize sources 2018-09-03 17:10:26 -04:00
db54922040
Add notifications screen 2018-09-03 16:54:03 -04:00
e523d69e33
Large image view 2018-09-02 16:59:20 -04:00
834b6cfc42
Show timestampts on statuses 2018-08-31 13:46:33 -04:00
fc69b9684b
Initial implementation Compose UI 2018-08-30 22:30:19 -04:00
7fda5ae9fe
Add option to strip custom emoji from display names 2018-08-28 21:18:58 -04:00
9d70018508
Add avatar style preference 2018-08-28 19:49:31 -04:00
093820ae9d
Start preferences 2018-08-28 19:16:17 -04:00
b85894b198
Don't open redundant VCs 2018-08-28 16:22:49 -04:00
0f1a13d2a7
Conversation view 2018-08-28 14:29:06 -04:00
05c895db88
Profile pages 2018-08-27 21:27:34 -04:00
b655c20e3d
Move StatusTableViewCell to separate nib 2018-08-27 16:32:59 -04:00
62bc57e169
Fix link detection 2018-08-26 14:49:22 -04:00
4adc501073
Initial avatars implementation 2018-08-21 19:23:27 -04:00
c42f5ee396
Multiple timeline views 2018-08-21 17:17:25 -04:00
8d268fad18
Start OAuth 2018-08-19 16:14:04 -04:00
24d30d36b7
Start home timeline 2018-08-16 22:39:16 -04:00
7ad6f65891
Fix password auth 2018-08-16 20:11:56 -04:00
f59b16cc9d
Initial commit 2018-08-16 07:46:19 -04:00
232a2106d9
Initial Commit 2018-08-15 22:27:48 -04:00