Commit graph

570 commits

Author SHA1 Message Date
Thomas Ricouard
195ab4cd65 Faster viewID for Status 2023-02-10 07:26:41 +01:00
Paul Schuetz
368b2b2c5e
Update to the newest version of nuke (#759)
Static gifs as avatars are now rendered correctly.
2023-02-10 06:39:23 +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
Thomas Ricouard
22b4044dfd Fix relative date 2023-02-09 19:25:12 +01:00
Thomas Ricouard
5ab9566ca5 Ensure account and tab switching is done without animations 2023-02-09 18:48:31 +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
5b7bfba444 More optimizations to StatusRowView 2023-02-09 12:24:18 +01:00
Thomas Ricouard
013410a80e Faster / Cached ServerDate decoding 2023-02-09 09:12:44 +01:00
Thomas Ricouard
76c0c843cd Profile: Add a gap between pinned posts and other posts 2023-02-09 07:49:15 +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
Thomas Ricouard
abff7091cb Add avatar in account selector menu 2023-02-09 07:36:23 +01:00
Peter-Josef Meisch
70dce60b95
Fix handling of polls (#723)
* Fix handling of polls

* Fixes

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-09 06:35:19 +01:00
Yusuke Arakawa
11c5da05c2
Remove tab string from iOS app (#669)
* Remove tab string from iOS app

* Added tab string display setting

* Fixes

---------

Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-09 06:28:16 +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
eb5733a90b Handle Task Cancelling in the timeline 2023-02-08 18:46:09 +01:00
Thomas Ricouard
970305210b Bump cache to 600 posts 2023-02-08 08:48:18 +01:00
Thomas Ricouard
eb0b1043c7 Fix instance suggestions not loading 2023-02-08 07:25:05 +01:00
Thomas Ricouard
49791d2c86 Fix timeline cache caching something else than home Fix #710 2023-02-08 06:52:15 +01:00
Thomas Ricouard
b30b96c48d Fix range jumping while editing text 2023-02-08 06:33:50 +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
Yusuke Arakawa
e953c243cc
Show confirmation dialog when deleting post (#713) close #712
* Show confirmation dialog when deleting post

* Localization

* Fixes

---------

Co-authored-by: Yusuke Arakawa <nekolaboratory@users.noreply.github.com>
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-02-08 06:24:09 +01:00
Thomas Ricouard
0496727b6f Composer: Rework TextView for faster / smoother editing 2023-02-07 18:42:56 +01:00
Thomas Ricouard
3b5f2e823a Support GIF + Better copy / pasting in the UITextView 2023-02-07 16:26:27 +01:00
Thomas Ricouard
ff3fb534c5 Merge branch 'main' of https://github.com/Dimillian/IceCubesApp 2023-02-07 07:40:48 +01:00
Thomas Ricouard
3425b9c9ad Fixed notifications main label being cut 2023-02-07 07:40:43 +01:00
Gareth Simpson
7ef4b8eda7
Fix custom emoji with underscores (#687)
* Potential fix

* explainer :)
2023-02-07 07:06:30 +01:00
Thomas Ricouard
cf6a2f845f Notifications: Load more newer pages 2023-02-06 20:08:29 +01:00
Thomas Ricouard
c5e43394c8 Add a setting to disable secondary column on iPad / macOS 2023-02-06 18:53:37 +01:00
Thomas Ricouard
d7c2e65479 Fix copy text action for boost 2023-02-06 18:41:12 +01:00
Thomas Ricouard
e0e3ec3625 Replying now follow the content warning close #684 2023-02-06 18:31:35 +01:00
Thomas Ricouard
ff570e214c Properly support OpenDyslexic and HyperLegible Fix #677 2023-02-06 18:15:08 +01:00
Sean Goldin
90ec3d419c
Clean up HapticManager (#678)
* Check for haptic capabilities

* Make manager do most of work

* ABC enum

* Fix spelling 😊

* Small tweak
2023-02-06 17:53:27 +01:00
Jérôme Danthinne
2f5e170983
Follow requests improvements (#679)
* fix: when accepting/rejecting followers, only disable the current request button

* fix: fetch followers request when updating notifications
2023-02-06 17:52:36 +01:00
Mackenzie
f1fd18a04f
make share and copy links translatable (#551)
* make share and copy links translatable

* add placeholders to other files
2023-02-06 12:29:18 +01:00
Peter-Josef Meisch
c7f22d5022
Add muting duration submenu (#662)
* Add muting duration submenu

* set japanese localizations
2023-02-06 12:25:51 +01:00
Thomas Ricouard
730e471718 Composer: Internalize TextView + fix a lot of lag when editing 2023-02-06 12:24:57 +01:00
Thomas Ricouard
5f76a8057c Filter remote local timeline 2023-02-06 12:24:48 +01:00
Thomas Ricouard
b598434648 Fix action on notify menu in account detail 2023-02-05 21:46:21 +01:00
Thomas Ricouard
0af60c4b1e Faster HTML String disk cache 2023-02-05 21:23:47 +01:00
Thomas Ricouard
2bd5c26c6f Add inline account badge for status context favorites / boosts 2023-02-05 10:07:45 +01:00
Thomas Ricouard
fedfa1f1c7 Various fixes 2023-02-05 09:13:28 +01:00
Thomas Ricouard
b0630ae9c3 Add more safety to scroll to 2023-02-05 08:13:38 +01:00
Thomas Ricouard
f53cfd89fe Ensure all pages are loaded when resuming session 2023-02-05 07:44:05 +01:00
Thomas Ricouard
f73bac9ae7 Revert "Cleanup logout code"
This reverts commit f54db5a43e.
2023-02-04 21:53:13 +01:00
Thomas Ricouard
09371f77c5 Fix notifications error view 2023-02-04 21:30:50 +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
f4a2d4fcc3 Fix notifications empty screen 2023-02-04 20:43:56 +01:00
Thomas Ricouard
f54db5a43e Cleanup logout code 2023-02-04 20:42:51 +01:00
Thomas Ricouard
e96c1c5da7 Fix next page state 2023-02-04 20:37:22 +01:00
Thomas Ricouard
65ed2d871c Add settings for haptic feedbacks 2023-02-04 17:38:48 +01:00
Thomas Ricouard
6b285cdbcf Cleanup 2023-02-04 17:17:38 +01:00
Thomas Ricouard
427452db30 Don't update the timeline is the tab is not visible 2023-02-04 16:54:03 +01:00
Thomas Ricouard
8c7efb7df5 Add settings to clear the cache 2023-02-04 15:08:54 +01:00
Thomas Ricouard
288a0eac9f Save / Restore latest seen statuses 2023-02-04 14:42:10 +01:00
Thomas Ricouard
b57df4a9d7 Scroll to latest pending post on button tap 2023-02-04 14:05:30 +01:00
Thomas Ricouard
508b180a1d Remove extra line break from spoiler text 2023-02-04 13:36:56 +01:00
Thomas Ricouard
4c40adc195 Fix double swipe actions close #615 2023-02-04 13:30:07 +01:00
Thomas Ricouard
aae6b12666 Replace memory cache with Boutique SQLite cache 2023-02-04 12:33:28 +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
Thomas Ricouard
f3a84c35d2 Merge branch 'main' of https://github.com/Dimillian/IceCubesApp 2023-02-04 09:02:20 +01:00
Thomas Ricouard
46cc7a6849 Fix a crash in notification stream 2023-02-04 09:02:16 +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
1bf36670e2 Fix auto play video settings close #636 2023-02-04 07:53:03 +01:00
Thomas Ricouard
95aade3795 Fix Client 2023-02-03 19:48:57 +01:00
Thomas Ricouard
4de46610e0 Handle dynamic streaming URL 2023-02-03 19:44:55 +01:00
Thomas Ricouard
816eae2d40 Remove the ... button and replace it with a thread indicator close #634 2023-02-03 17:50:20 +01:00
Thomas Ricouard
4104fdf4f5 Fix the crash once and for all by using Introspect 2023-02-03 16:24:09 +01:00
Thomas Durand
2a1d1fc697
Trying to recognize the language of the Toot to set it correctly if none is provided (#633)
Probability threshold arbitrary set to 85%.
Seems to work enough for French, English and Spanish.
Also tested and with only a few words, probability is low unless there is a very language specific word
2023-02-03 15:45:59 +01:00
Thomas
4e69401b6c
Fix translate button for boosts (#629) 2023-02-03 15:43:38 +01:00
Thomas Ricouard
bbca24a364 Composer: Don't apply language to reply 2023-02-03 09:19:40 +01:00
Thomas Ricouard
eb80225bb0 Mitigate #623 2023-02-03 08:06:16 +01:00
Thomas Ricouard
3615c396dd FIx open link in profile close #624 2023-02-03 07:15:19 +01:00
Peter-Josef Meisch
e79b39f952
Add option to start in-app browser in reader view. (#619)
* Add option to start in-app browser in reader view

localizations

* Disable toggle instead of hiding it
2023-02-03 07:04:00 +01:00
Thomas Ricouard
fcb7ddcbdb Fix crash when trying to cache an empty timeline 2023-02-02 21:21:07 +01:00
Thomas Ricouard
e278eae144 Reset pending statuses when reaching top 2023-02-02 17:47:35 +01:00
Thomas Ricouard
bb6910cd83 Centralize haptic feedbacks 2023-02-02 16:56:42 +01:00
Thomas Ricouard
262f7288ad Fix the crash while restoring position? 2023-02-02 16:38:19 +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
d5b81dab5c Add swipe actions on timeline 2023-02-01 21:51:03 +01:00
Thomas Ricouard
12f3e48b05 Composer: Fix performances issues 2023-02-01 19:17:03 +01:00
Gareth Simpson
fdb402a065
Boost deduplicating (#524)
* Trying something with caching boosts

* Use an actual cache for caching

* Persist cache to documents folder

* Stray debugging variable

* Unpublish seen variable in the ViewModel

* Settings for deduplicating boosts.

* Changes from review / merge conflicts
2023-02-01 18:56:06 +01:00
Thomas Durand
06e219597b
More fixes for #568 - Open Url in browser (#585)
* More fixes for #568

I saw the fix for StatusRowContextMenu, so this is a complement for this same bug accros the app

* Let it be just a clean up then ;)
2023-02-01 18:55:18 +01:00
Thomas Ricouard
43d975a27b Better caching 2023-02-01 13:41:28 +01:00
Thomas Ricouard
ed80895fcd Cache streamed status 2023-02-01 13:28:04 +01:00
Thomas Ricouard
4e77669181 Swiftformat 2023-02-01 12:49:59 +01:00
Thomas Ricouard
383eb84e98 Fix import 2023-02-01 12:49:47 +01:00
Thomas Ricouard
cdf45fa58c Refactor Timeline position management + add thin cache layer + fix crashes 2023-02-01 12:43:11 +01:00
Thomas Ricouard
9bf40b262f Various optimizations for the new timeline 2023-02-01 09:22:08 +01:00
Thomas Ricouard
83049517c0 Make the poll tappable in the List timeline 2023-02-01 09:21:52 +01:00
Thomas Ricouard
b9f79bb859 Close #568 2023-02-01 07:09:41 +01:00
Thomas Ricouard
d8a5e39606 Merge branch 'main' of https://github.com/Dimillian/IceCubesApp 2023-01-31 19:43:09 +01:00
Thomas Ricouard
2e850e9643 Bump to 1.3.2 + workaround List crash? 2023-01-31 19:43:07 +01:00
Jérôme Danthinne
f3e21a714c
Consolidate new notifications with the latest one (#563) 2023-01-31 17:43:52 +01:00
Thomas Ricouard
ed0bfb7d94 Even better refresh / timeline position management 2023-01-31 17:43:06 +01:00
Thomas Ricouard
dd4ca27a5b Remove bogus flag 2023-01-31 13:43:27 +01:00
Thomas Ricouard
62b26fdbb7 Timeline: Do nothing if no new statuses 2023-01-31 13:19:32 +01:00
Thomas Durand
e512453cfe
Fixed "you boosted" when boosted by same username in different instance (#560)
Fixes #558
2023-01-31 12:20:52 +01:00
Thomas Ricouard
52eff96ab4 Iron out timeline issues with the new behaviour 2023-01-31 12:17:35 +01:00