Commit graph

975 commits

Author SHA1 Message Date
Thai D. V 1977b1a572
Feature: Post and Reply by Threads (#1740)
* refactor: `StatusEditorView`

* feat: post and reply by threads

* Tidy up

* Fixes

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-12-14 08:06:24 +01:00
Paul Schuetz d8a686be51
Allow the user to customize the thread indentation (#1737)
* Allow the user to customize the thread indentation

The user can now select if they want to indent threads/replies, and how much
the replies should be indented.

* Make the wording clearer

The wording is now clearer since "thread" is replaced by "reply".

* Fix localizations

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-12-14 07:17:09 +01:00
Paul Schuetz e4df8a8b69
Link to parent post (#1736)
The "reply to ..."-text is now a link to the parent post. A tap scrolls to the
parent if the whole hierarchy over a post is shown (detail view). Otherwise,
the detail view for the parent is opened.
2023-12-14 07:12:12 +01:00
Thai D. V 81ba1e9bee
Add Select Status Text Action (#1731)
* add select text action

* Fixes

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-12-14 06:46:16 +01:00
Thomas Ricouard 8d7b6f382e Fixes & optimizations 2023-12-13 12:37:07 +01:00
Thomas Ricouard 232e031559 Add charts for tags 2023-12-13 09:05:30 +01:00
Thomas Ricouard d31af12bb6 Add pull to refresh on post detail 2023-12-10 08:42:26 +01:00
Thai D. V f3ef79b297
Relayout media on status editor (#1728)
* relayout media display

* animate media layout

* fix layout
2023-12-09 10:59:10 +01:00
Thomas Ricouard 52208ab20e Poxy OpenAI calls and remove OpenAI secrets from the app 2023-12-09 10:58:42 +01:00
Thomas Ricouard da6c5ed76c Add follow section in about 2023-12-08 08:04:35 +01:00
Thomas Ricouard 052afd5931 New media carrousel 2023-12-07 18:48:18 +01:00
Thomas Ricouard 51656794fc Use env webAuthenticationSession 2023-12-07 09:45:34 +01:00
Thomas Ricouard 5941276145 Update dependencies 2023-12-07 09:29:03 +01:00
Thai D. V 774ba834bd
Improve media selection on the status editor. (#1722)
* show menu buttons on media item

* fix media preparing logic
- not removing photo pickers when removing media on the post editor
- pickers don't have identifiers after being selected
- preparing tasks (creating containers, uploading media) don't run in parallel
- re-preparing the whole media list every time adding new ones

* remove measurement code

* rename variables

* fix MainActor mutation
2023-12-07 06:39:34 +01:00
Thomas Ricouard f2cd05968e Add a translate button after generating image description 2023-12-06 21:04:47 +01:00
Thomas Ricouard 4f9e23296f Cleanup 2023-12-06 18:56:19 +01:00
Thomas Ricouard 3d2171d716 Refactor auth to ASWebAuthenticationSession 2023-12-06 08:05:26 +01:00
Thai D. V 2e350f5fce
move environment runtime check to compile time (#1709) 2023-12-06 06:41:26 +01:00
Thomas Ricouard df1a44cc21 Use V1 accounts API for autocomplete 2023-12-05 21:03:47 +01:00
Thai D. V 330aa93437
photo view ignores bottom edge of safe area (#1708) 2023-12-05 08:23:42 +01:00
Thomas Ricouard 4dbe04a5d4 Better image alt prompt 2023-12-04 20:36:15 +01:00
Thomas Ricouard 28ab417b0a Generation image description using GPT Vision 2023-12-04 20:04:12 +01:00
Thomas Ricouard fcaf48ce53 foregroundColor -> foregroundStyle 2023-12-04 15:49:44 +01:00
Thomas Ricouard 3840b8fb28 presentationMode -> dismiss 2023-12-04 14:14:42 +01:00
Thomas Ricouard 4a09989160 Fix tag condition 2023-12-04 11:49:36 +01:00
Thomas Ricouard 76219f553b Add tag status indicator for home timeline 2023-12-04 09:52:18 +01:00
Thomas Durand ad2adadf87
Added a "Continues a thread" label to status rows (#1704) 2023-12-03 13:54:57 +01:00
Thai D. V 56360ae821
fix: make windowWidth and windowHeight of SceneDelegate observable (#1693) 2023-12-03 12:43:15 +01:00
Thomas Ricouard b249b37612 Add a fast refresh option 2023-12-01 08:51:19 +01:00
Thomas Ricouard 885a134eaf Fix list on older instances 2023-12-01 08:14:57 +01:00
Hugo Saynac 69d5f265fe
Improve indentation level design for indentations level > 1 (#1695) 2023-11-29 09:02:01 +01:00
Thomas Ricouard 12419a77e2 Fix build for real 2023-11-28 14:41:17 +01:00
Thomas Ricouard 662f1002f5 Fix build 2023-11-28 14:32:35 +01:00
Thomas Ricouard f2606b4614 Search users in list edit 2023-11-28 14:16:04 +01:00
Thomas Ricouard 2e2a9f5f14 Add more lists setttings 2023-11-28 09:18:52 +01:00
Thomas Ricouard d2f7ab1464 Move AccountPopoverView 2023-11-27 09:19:43 +01:00
Nathan Reed 06a8ca67c3
Improve display of HTML ul (bullet list) and ol (numbered list) (#1690)
While SwiftUI's `Text` view won't display these in an `AttributedString` even if they get parsed from Markdown (which would also require the use of the `.full` option instead of the `.inlineOnlyPresrevingWhitespace` option), we can improve the appearance somewhat.
Currently, list elements are clumped together with no spaces between them, and there's no indication whatsoever that the author indicated these to be a list.
Change to insert Markdown list syntax with linebreaks and dashes, so users can at least understand there's a list there.
Similar change for ordered lists.

This will still be broken for nested lists, but it didn't seem worth it to put a lot of effort into this (or other revamps, like making bold/italics/code work properly) because it seems like the current text handling in Ice Cubes is suboptimal and eventually slated for improvement (according to https://github.com/Dimillian/IceCubesApp/issues/1459#issuecomment-1638562657).
So this is more designed to make lists "less broken" in some cases, rather than be a comprehensive fix for all lists in all cases.
2023-11-27 09:15:27 +01:00
Thai D. V de83b8ec90
Fix EditTagGroupView (#1686)
* refactor data of `EditTagGroupView`

* lower case tags before saving because API is case-insensitive

* fix: "add new tag" `TextField` is not focused after adding the first tag (on both macOS and iOS)

* perf: improve symbol search performance

* improve layout and animation of symbol search

* fix: sort tags and remove duplicate tags

* fix: crash when open timeline for an empty tag group

* fix: revert concurrency code because performance issue at 1d3f271 is a false alarm

* add warning labels to help the users

* fix: state `tagGroup`

* fix: selecting symbol logic and warning labels

* refactor `EditTagGroupView.body`

* refactor warning labels

* Fix theme

* Move to its own folder

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-11-27 09:13:07 +01:00
Thai D. V ea5480ef46
add account popovers for display name and handle (#1687) 2023-11-27 09:00:52 +01:00
Thomas Ricouard b3153289c4 Fix to account selector on iOS 2023-11-20 18:43:16 +01:00
Thomas Ricouard 47d54fd9e6 Fixes 2023-11-20 17:20:09 +01:00
Thai D. V 94172cef27
Feature: popover the account overview when hovering on the avatar (#1682)
* fix avatar scale

* refactor avatar  config data

* add `AvatarView_Previews`

* refactor shape and placeholder of avatar

* refactor `AvatarView` and add `AvatarPopup`

* add `hoverEffect` for iPad

* fix auto-dismiss bug

* fix `showPopup` bug

* disable inappropriate avatar popups
2023-11-20 10:59:49 +01:00
Thomas Ricouard 71ab8d558a Fix / simplify account content warning 2023-11-19 08:26:07 +01:00
Paul Schuetz 12d92ab1ec
Add hint if the server post options are overridden (#1679)
If the content settings specify their own post settings and override the
instance settings, a hint (and link to the content settings) is added to the
instance settings (infos) since that setting might introduce confusion (As
happened in #1677).
2023-11-19 08:10:53 +01:00
Paul Schuetz 8bf36709ea
Fix reply indentation when the post has pictures (#1678)
The size of the image is now set correctly to prevent the shifting of the
vertical bars. The handling of the compact view (regarding the indentation) is
now centrally handled in StatusDetailView.
2023-11-19 08:10:44 +01:00
Euigyom Kim d3b52b3206
Make categorized emoji picker (#1680)
Signed-off-by: Euigyom Kim <egkim@dehol.kr>
2023-11-19 08:09:41 +01:00
Thomas Ricouard c1c7c666cb Disable indentation in compact post 2023-11-18 10:44:27 +01:00
sh95014 11388757f3
Limit image height to screen height (#1675)
* limit image height to window height minus a hardcoded value

https://github.com/Dimillian/IceCubesApp/issues/1554

* Limit image to screen height

- limit available height to 80% of screen/window height
- if image fits in available width and height, just display it at 1x (to avoid ugly resizing artifacts)
- otherwise, shrink it proportionally to fit

https://github.com/Dimillian/IceCubesApp/issues/1554
2023-11-17 09:42:33 +01:00
Paul Schuetz 59e5eba860
Improve the display of replies (#1672)
Threads/replies are now shown more clearly. Each reply has an indentation level
(and therefore the number of vertical lines) one more than its direct parent.
This leads to siblings having the same indentation level. It makes
understanding somewhat complex thread structures way easier. Previously, a
reply was only indented if it came directly after its parent. If a toot had
more than one reply, the structure was nearly indecipherable, as it wasn't
clear which the parent post of the second (or later) toot was. An example is
"https://mastodon.social/@mhoye/110452462852364819" and all of its replies.

Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
2023-11-16 09:56:00 +01:00
Thai D. V 4b74532048
Feature: store selected notification filter (#1627) (#1663)
* store selected notification filter (#1627)

* store one filter for all accounts
2023-11-16 09:53:16 +01:00