Thomas Ricouard
4000dc3650
Switch to targeted Swift concurrency warnings + fix them
2023-02-18 22:51:44 +01:00
Thomas Ricouard
b1424aadd0
Fix two crashes
2023-02-18 17:08:32 +01:00
Yusuke Arakawa
8d8955ee13
Fix leak memory (Thread 1: EXC_BAD_ACCESS (code=EXC_I386_GPFLT)) ( #917 )
...
Closes : #829
Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
2023-02-18 08:53:11 +01:00
Thomas Ricouard
ca4e80101f
Swiftformat
2023-02-18 07:26:48 +01:00
Alex Grebenyuk
dcf03b0f88
Status as class (performance improvement) ( #925 )
...
* Status as class (performance improvement)
* Also make account class
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-18 07:15:57 +01:00
Gareth Simpson
c1205036a2
This simplifies the parser. Having read the spec more closely as part of investigating bug 855, I was overcomplicating it. The server promises to send html so we should render it that way, not with heuristics. ( #900 )
...
This puts in line breaks exclusively where there are <br>s and takes out other line breaks that are in the body text.
*Doesn't* fix bug 855
2023-02-17 06:31:24 +01:00
Thomas Ricouard
ac32410200
Proper threading UI
2023-02-16 17:07:52 +01:00
Yusuke Arakawa
7bbe3cbc41
Fixed non-existing Json key decoding error ( #832 )
...
Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
2023-02-14 12:19:23 +01:00
Thomas Ricouard
3d96d6997d
Better handling of notifications
2023-02-13 22:30:06 +01:00
Thomas Ricouard
eb6050a38f
Swiftformat
2023-02-12 16:29:41 +01:00
Thomas Ricouard
41058919bd
Reworked translate: Use Mastodon API when available + always show the action in the post context menu
2023-02-12 13:22:36 +01:00
Thomas Ricouard
dbdcf4c2d6
Fix reblog
2023-02-10 18:25:38 +01:00
Thomas Ricouard
feefb02456
Status detail: Switch to List container + refactor to something much better
2023-02-10 18:21:05 +01:00
Thomas Ricouard
195ab4cd65
Faster viewID for Status
2023-02-10 07:26:41 +01:00
Thomas Ricouard
22b4044dfd
Fix relative date
2023-02-09 19:25:12 +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
013410a80e
Faster / Cached ServerDate decoding
2023-02-09 09:12:44 +01:00
Gareth Simpson
a43a657f1e
Add translate button to the preview post in settings ( #724 )
...
* Add translate button to the preview post in settings
* Accidental outdent.
* Add share button to placeholder status and also preview status in settings.
2023-02-09 07:38:04 +01:00
Gareth Simpson
8f6e6853aa
Add a preview toot to the top of the display settings page. ( #716 )
...
* Add a preview toot tot the top of the display settings page.
* DisplayModel doesn't need to be @State
* Disable hitTest
* Example Post
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-08 19:09:24 +01:00
Sean Goldin
0c359f2b79
Add direct status highlighting ( #720 )
2023-02-08 18:47:09 +01:00
Thomas Ricouard
eb0b1043c7
Fix instance suggestions not loading
2023-02-08 07:25:05 +01:00
Peter-Josef Meisch
1c8fabbe59
Fix Conversation.lastStatus nullability issue ( #709 ) close #696
...
* Fix Conversation.lastStatus nullability issue
* Fix UI
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-08 06:27:44 +01:00
Gareth Simpson
7ef4b8eda7
Fix custom emoji with underscores ( #687 )
...
* Potential fix
* explainer :)
2023-02-07 07:06:30 +01:00
Thomas Ricouard
0af60c4b1e
Faster HTML String disk cache
2023-02-05 21:23:47 +01:00
Thomas Ricouard
6b285cdbcf
Cleanup
2023-02-04 17:17:38 +01:00
Thomas Ricouard
508b180a1d
Remove extra line break from spoiler text
2023-02-04 13:36:56 +01:00
Thomas Ricouard
3c0ffdb1ae
Prepare disk cache for Timeline
2023-02-04 12:17:16 +01:00
Thomas Ricouard
86937e65fe
Compose: Fix editing, now keep line breaks and link close #602
2023-02-04 11:21:30 +01:00
Gareth Simpson
624d4766fa
Newer, better, faster HTML to Markdown converter ( #610 )
...
* This is a more correct html to markdown implementation.
It removes all the hacks and just uses the SwiftSoup parser correctly
It will fix issue #576 and also an unlogged issue with the old implementation that could corrupt urls with underscores in them.
* Better <br> / linefeed handling
* Cleanup
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-04 08:16:19 +01:00
Thomas Ricouard
4de46610e0
Handle dynamic streaming URL
2023-02-03 19:44:55 +01:00
Sean Goldin
10946fef10
Timeline highlight mentions ( #595 )
...
* Introduce fetchPages
* Set up highlighting
* Implement highlighting stage 1
* Implement highlighting stage 2
* Implement highlighting.
* Fix merge
* Add protocol
* Remove debug prints
2023-02-02 06:39:03 +01:00
Thomas Ricouard
4e77669181
Swiftformat
2023-02-01 12:49:59 +01:00
Jérôme Danthinne
f3e21a714c
Consolidate new notifications with the latest one ( #563 )
2023-01-31 17:43:52 +01:00
Gareth Simpson
0a0e985e33
match intended mastodon presentation ( #557 )
...
strip out <span="invisible">blah</span>
append ellipsis to <span="ellipsis">blah</span>
2023-01-31 09:02:01 +01:00
Thomas Ricouard
16636b12a9
Swift format
2023-01-30 07:27:06 +01:00
Thomas Durand
c6c066564d
Better profile header ( #526 )
...
* Prevent opening quicklook for missing avatar or header. Fixes #127
* Using theme for missing header background in profile
* fix
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-30 07:15:18 +01:00
Thomas Ricouard
426d2e15b2
Change timeline icon + move OpenAI icon to the accessory bar
2023-01-29 15:08:41 +01:00
Jérôme Danthinne
2360c5f4db
Fix french localizations ( #476 )
...
* Fix french plurals
* Fix english
* More French translations fixes
* Switching relative date formatter
---------
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-28 18:40:23 +01:00
Gareth Simpson
1983ae0f48
This is a more conservative fix for #328 ( #462 ) close #328
...
Having checked the markdown -> attributedtext conversion, lots of things I was escaping before are actually ingored.
This change only escapes things that are definitely rendered and as far as I can tell doesn't break anything now.
Test post to look at with maximal Markdown: https://mas.to/@elbrux/109743775703438333
2023-01-28 09:01:37 +01:00
Roberto Pastor
4cdd0214f4
Spanish update 27-01 ( #450 )
...
* - Updated spanish localization with new keys
- Added missing NSLocalizedString for filters
* Fixed unresolved conflict
---------
Co-authored-by: Roberto Pastor <roberto.pastor@cabify.com>
2023-01-28 06:33:58 +01:00
Thomas Ricouard
b89221a535
Code cleanup / format / lint
2023-01-27 20:36:40 +01:00
Jérôme Danthinne
bec9ab8792
Consolidated notifications ( #443 ) close #231
...
* Group favorite and boost notifications
* Group notifications per page, not globally
2023-01-27 16:58:04 +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
72fbcff1dd
DM: Various UX fixes
2023-01-26 18:27:53 +01:00
Thomas Ricouard
5cd9ddd945
New account settings + create / edit server side filters
2023-01-25 21:18:34 +01:00
Jérôme Danthinne
9b3b3692ee
Support for follow requests ( #376 ) close #321
...
* Support for follow requests (#321 )
* Run SwiftFormat
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-25 13:02:28 +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
Thomas Ricouard
5b3afc72de
Fix some polls crashing at decoding
2023-01-24 21:19:14 +01:00
Thomas Ricouard
b1520c549e
Various fixes due to recent merges
2023-01-24 07:19:09 +01:00
Thomas Ricouard
dd5e6b91c0
oops
2023-01-24 06:56:28 +01:00
Gareth Simpson
ffe1a1dba0
Escape markdown markup characters on their way into HTMLToMarkdown to prevent them being rendered as styled text after they come out. ( #329 )
2023-01-24 06:38:38 +01:00
Steve Kalkwarf
a7c7dfd24e
Make spelling of "favorite" consistent ( #327 )
...
"Favorite" was spelled using both UK English and US English variations:
113 favourite
64 favorite
I made them consistent, using the US spelling.
2023-01-24 06:35:43 +01:00
Thomas Ricouard
11a7ade82d
Fix handling of Twitter link
2023-01-23 21:34:45 +01:00
Sean Goldin
6aea60b644
Fix twitter links ( #316 )
2023-01-23 20:51:16 +01:00
Thomas Ricouard
2a635eda21
Optimise Status models for SwiftUI
2023-01-22 20:23:41 +01:00
Thomas Ricouard
ce41e6b000
Always display relative date in the timeline
2023-01-22 20:14:05 +01:00
Thomas Ricouard
d6aa99eb57
New direct messages view close #122
2023-01-22 16:55:03 +01:00
Thomas Ricouard
eec5637c1c
Composer / Share sheet: add video upload support close #154
2023-01-22 09:09:35 +01:00
Thomas Ricouard
a79c5691e0
Run SwiftFormat
2023-01-22 06:38:30 +01:00
Thomas Ricouard
77c94e940a
Fix timeline failing to load because status card URL is invalid Fix #209
2023-01-21 12:13:20 +01:00
Thomas Ricouard
87471ed9c8
Safer HTML String decode
2023-01-21 11:32:47 +01:00
Thomas Ricouard
7b25240f59
Search: Completely revamp it! close #78 #90
2023-01-21 07:51:15 +01:00
Thomas Ricouard
0eaf2ebc60
Add a rate on the App Store button in the settings
2023-01-21 07:16:20 +01:00
Thomas Ricouard
d1034cd9a3
Do string manipulation at the decode time to keep the UI smooth fix #178
2023-01-20 18:27:00 +01:00
Renan Guilherme
3b0d26bab2
Make vapidKey in InstanceApp model optional ( #135 )
2023-01-20 06:42:18 +01:00
Thomas Ricouard
e05734fe1a
Added edit history
2023-01-19 21:19:19 +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
8921e6c8df
Support more instances
2023-01-18 19:10:45 +01:00
Thomas Ricouard
d737b429b4
Support instance with malformed statuses URL
2023-01-18 13:36:00 +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
382ebcf8f7
Implement language selection for new posts ( #83 ) close #76
...
* Implement language selection in status editor
* Apply the correct language on replies and edits
* Use sheet for language selector
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-17 07:07:26 +01:00
Thomas Ricouard
9e569df417
Fix featuredTags weird decode
2023-01-15 14:21:08 +01:00
Thomas Ricouard
2fdf5fe239
Fix markdown rendering for statuses
2023-01-13 14:11:21 +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
6f7c576c3a
Add notify next to follow button if following
2023-01-12 07:36:19 +01:00
David Walter
3acd5aced4
Support Custom Emojis ( #61 )
...
* Support Custom Emojis
* Update EmojiText
* Update EmojiText
* Use EmojiText in StatusEditorAutoCompleteView
* Update EmojiText
* Display Account displayName without emojis in navigation title
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-01-12 06:58:04 +01:00
Thomas Ricouard
71ec57f915
Support edit profile
2023-01-10 08:24:05 +01:00
Thomas Ricouard
dc223171b3
Support hide sensitive medias / hide all medias
2023-01-09 20:39:42 +01:00
Thomas Ricouard
33634a16aa
Fetch server side preferences
2023-01-09 19:47:54 +01:00
Thomas Ricouard
662f4be29d
Bookmarks support close #48
2023-01-09 19:26:56 +01:00
Thomas Ricouard
a9db49e5df
Support audio attachement + better push keys flow
2023-01-08 16:18:38 +01:00
Thomas Ricouard
ed8208857a
Cleanup + Polish push notifications
2023-01-08 14:16:43 +01:00
Thomas Ricouard
424cd475ad
Add push notifications support
2023-01-08 10:22:52 +01:00
Thomas Ricouard
75fda4b709
Tip jar + New display name
2023-01-07 13:44:13 +01:00
Sean Goldin
79febd92e7
Fix loading local time line ( #34 )
2023-01-06 21:19:29 +01:00
Thomas Ricouard
7f5330f284
Redesigned settings tab
2023-01-06 17:14:34 +01:00
Thomas Ricouard
770fcfd62b
iPad max column width on some screens
2023-01-05 14:11:55 +01:00
Thomas Ricouard
997d82047e
Make Meta.original optional
2023-01-05 13:27:04 +01:00
Thomas Ricouard
e1ad5efd80
Direct message + empty screen for notifications and messages
2023-01-05 12:21:54 +01:00
Thomas Ricouard
dcdd8402e9
Timeline: Add filter for followed tags
2023-01-04 18:37:58 +01:00
Thomas Ricouard
8a8c7a7e5e
Better filter for notifications
2023-01-04 08:14:37 +01:00
Thomas Ricouard
5fe72e36d2
make votes and ownVotes optional
2023-01-03 15:51:36 +01:00
prajeet
1c827d1f7e
Made filtered key optional ( #25 )
2023-01-03 15:15:08 +01:00
Thomas Ricouard
f4f8b81f6c
Support filters in statuses
2023-01-03 12:24:15 +01:00
Thomas Ricouard
e0253fb439
Added lists support + bunch of bug fixes
2023-01-02 19:23:44 +01:00
Thomas Ricouard
b2d4d151e5
Add video type support for media attachement (reading)
2022-12-30 18:40:10 +01:00
Thomas Ricouard
f215298917
Embed + tap on statuses link from any instances
2022-12-30 16:55:13 +01:00
Thomas Ricouard
d61ce04dac
Convert status to local URL when quoting
2022-12-30 10:11:05 +01:00
Thomas Ricouard
03a5dd9f54
New Sign In flow & instances browser
2022-12-29 14:07:58 +01:00