342 Commits

Author SHA1 Message Date
66fe861442
Merge branch 'master' into multiple-accounts 2020-01-18 19:33:01 -05:00
11f9642cba
Actually fix link interaction 2020-01-18 19:32:39 -05:00
6421d4dc12
Merge branch 'master' into multiple-accounts 2020-01-18 18:56:36 -05:00
38085eee37
Fix not being able to collapse/expand statuses
Instead of simply returning the content text view from hitTest(_:with:),
we need to call the super method so that the system still performs its
own checks.
2020-01-18 18:38:00 -05:00
e19364abdf
Fix content text view text color in dark mode 2020-01-18 18:21:01 -05:00
fa358a3e97
Remove xtra padding from content text view 2020-01-18 16:27:18 -05:00
5d86b35672
Enable text selection in conversation main status 2020-01-18 16:18:32 -05:00
784c71342d
Fix preformatted text not being displayed correctly 2020-01-18 16:05:44 -05:00
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
8178a1f339
Fix crash when tapping more actions buttons on iPad
Fixes #78
2020-01-17 21:29:53 -05:00
53702a8324
Add pinned status refreshing
Closes #82
2020-01-17 21:13:17 -05:00
bb86e1aafd
Allow rotaion in the attachment gallery
Closes #77
2020-01-07 22:19:38 -05:00
db4312ee34
Fix refreshing multiple times with no new data not working
When the requested range has no results, no pagination data is returned,
so the existing `newer` request range is replaced with nil. As there
was no new data, the existing request range is still correct and should
not be replaced.

Fixes #75
2020-01-07 21:54:19 -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
ec2062ad42
Fix not being able to sign into Mastodon instances not in the
recommended list
2020-01-06 22:14:17 -05:00
1e066ac28e
Add installation instructions to readme 2020-01-06 20:35:11 -05:00
29e0128a55
Fix broken file paths 2020-01-06 20:27:58 -05:00
0255483f97
Make MastodonCache specific to each API controller
See #16
2020-01-05 19:54:28 -05:00
e3be424f5a
Fix instance public timelines not loading 2020-01-05 19:45:12 -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
a18bcac8b8
Pachyderm: Change Client request methods to be static, like all other
models

Tusker: Add run method to MastodonController and no-longer expose API
client object
2020-01-05 14:00:39 -05:00
787dc9f24f
Fix crash decoding statuses sent from certain applications
If an application provides its URL as an empty string, decoding it would
cause throw an error because Foundation's URL class does not accept
empty strings. Instead, during parsing, consume the invalid URL and
replace it with a `nil` app URL.
2020-01-04 23:13:55 -05:00
ad09e36907
Show follow requsts in notifications w/ accept/reject buttons
Closes #64
2020-01-04 23:13:23 -05:00
c31916d67e
Remove references to old images 2020-01-04 23:04:45 -05:00
05cc3fd6d9
Add pinning/unpinning statuses
Closes #69
2020-01-04 19:31:35 -05:00
b70256c525
Remove old icons 2020-01-04 19:22:16 -05:00
3ecbb1895c
Replace GMImagePicker with custom asset picker based on SheetController
Fixes #23
Closes #50
2020-01-04 16:25:15 -05:00
b2956b6118
Convert HEIC images to JPEG before upload
Fixes #60
2019-12-31 16:41:56 -05:00
6ef643e374
Fix custom instances not showing up when typed into the instance
selector search field

With Combine Cancellables are automatically cancelled on deinit, so the
instance selector needs to hold on to a reference to pipeline
cancellable for its lifetime, otherwise it's cancelled immediately after
creation.

Closes #59
2019-12-31 11:45:34 -05:00
18c3c3c434
More UI testing setup and API mocks 2019-12-31 11:40:56 -05:00
b9e359ba83
Fix custom instance domains not being parsed correctly 2019-12-31 00:13:09 -05:00
edb86fc503
Add theme toggle separate from system appearance
Closes #67
2019-12-31 00:12:18 -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
f92a2acc97
Show list edit screen immediately upon creation 2019-12-19 21:37:47 -05:00
ae6a0513e4
Add local saved hashtags
Closes #66
2019-12-19 21:20:29 -05:00
6831ab5385
Pachyderm: Fix request bodies form parameters not being percent-escaped
Fixes #65
2019-12-18 21:59:08 -05:00
afc2bfcf6b
Add list editing 2019-12-17 22:56:53 -05:00
76a7c5bdf8
Add list deletion 2019-12-17 21:40:08 -05:00
19f15d8fa9
Add list creation 2019-12-17 21:18:32 -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
382decd7da
Fix search section titles 2019-12-16 22:23:12 -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
c26657bafa
Use synchronized MastodonCache to prevent race condition crashes 2019-12-14 11:31:14 -05:00
0c78af7d4f
Store in reply to status in drafts 2019-12-14 11:30:35 -05:00