Commit graph

170 commits

Author SHA1 Message Date
Thomas Ricouard
709dd79e25 Fix for visionOS + Remove shimmer 2024-01-19 08:51:29 +01:00
Thomas Ricouard
27da37e9ec Fix #1859 2024-01-13 08:48:29 +01:00
Thomas Ricouard
b7e8f63e86 Multi window visionOS support 2024-01-09 13:28:57 +01:00
Thomas Ricouard
8c8c551686 Fix warnings + better recently used tags 2024-01-06 11:21:07 +01:00
Thomas Ricouard
b93df71431 Don't resize images if same size 2024-01-01 11:39:32 +01:00
Thomas Ricouard
c328c6c0be Refactor App level to App + App View -> Slideover = phone layout on iPad 2023-12-29 18:50:53 +01:00
Thomas Ricouard
4ba8d004d1 Add Threads themes 2023-12-29 08:01:09 +01:00
Thomas Ricouard
d065ae6aa8 Add settings to toggle between share and bookmark button 2023-12-28 07:48:35 +01:00
Thomas Ricouard
8a0cf44834 Visually align new post button 2023-12-27 16:27:21 +01:00
Thomas Ricouard
1a3bded101 New default timeline layout 2023-12-27 16:07:16 +01:00
Thomas Ricouard
5a2478c791
VisionOS native support (#1758)
* Initial support

* UI Adjustments

* WIP icons

* More UI
2023-12-19 09:51:20 +01:00
Thomas Ricouard
8ff3e22d9f SwiftFormat 2023-12-18 08:22:59 +01:00
David Walter
d755396119
Update EmojiText to 3.2.1 (#1753) 2023-12-18 06:43:52 +01:00
sh95014
f9da958047
add a setting to disable the account popover on hover (#1750)
* add a setting to disable the account popover on hover

- not entirely pleased with the AnyView() cast but don't really know of a less invasive change

* Fixes

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-12-17 07:57:20 +01:00
David Walter
47326b3f7a
Update EmojiText to 3.2.0 (#1751)
Fixes #1738
2023-12-17 07:28:18 +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
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
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
fcaf48ce53 foregroundColor -> foregroundStyle 2023-12-04 15:49:44 +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
d2f7ab1464 Move AccountPopoverView 2023-11-27 09:19:43 +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
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
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
Thomas Ricouard
f451d7cb8c Bigger media viewer window 2023-11-14 19:48:14 +01:00
Théo Arrouye
4266ac4b42
Improve SoundEffectManager & HapticManager (#1662)
* Remove unnecessary vars and switches

* Improve SoundEffectManager call-site API

* Improve HapticManager call-site API
2023-11-07 11:22:36 +01:00
Thomas Ricouard
3e3c69c41c format 2023-11-01 18:58:44 +01:00
Thomas Ricouard
4c7a7986c5 fix build 2023-11-01 18:58:19 +01:00
Hugo Saynac
b2933b8c75
Fix flickering issues when resizing window (#1644)
* Fix flickering issues when resizing window, or hiding notifications on macOS

* Restore processor and add debouncing to the processor updates

* Fix indentation

* Add LazyResizableImage to the Design system module
2023-11-01 18:57:13 +01:00
Thomas Ricouard
07bfd8cd0e Initial macOS Catalyst support 2023-10-23 19:12:25 +02:00
Bosco Ho
1bf4d9e398
Feature: Tab bar scroll to top (#1598)
* - *WIP* Explore tab: Tap on tab to scroll to top.

* - Explore tab: Tap tab to scroll to top.

* - Explore: Tap tab again to focus on search bar.
- Explore: Set `.defaultMinListRowHeight` so scroll to view doesn't occupy more than 1pt height in grouped style list.
- Explore: Add padding to get Explore list view to look the same.

* - Explore: Minor adjust to padding.

* - Messages: Add tap tab to scroll to top.

* - Notifications: Add tap tab to scroll to top.

* - Profile: Add tap tab to scroll to top.

* Add `ScrollToView` that can be used across all views.

* Move scroll-to-top constants to ScrollToView.

* Format

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-10-05 08:22:45 +02:00
Paul Schuetz
0b5e764556
Automatically remove spaces in server names (#1600)
* Automatically remove spaces in server names

If a server name includes a space (which can happen if the string is pasted /
autocompleted), this space is removed, which results in the app not crashing.
Fixes #1599

Signed-off-by: Paul Schuetz <pa.schuetz@web.de>

* Format

---------

Signed-off-by: Paul Schuetz <pa.schuetz@web.de>
Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-10-01 09:37:09 +02:00
Thomas Ricouard
4adbff1342 Fix avatar shape and position settings not being saved 2023-09-20 21:19:45 +02:00
Thomas Ricouard
90337bd3ea Bump version to 1.8.2 2023-09-20 08:20:01 +02:00
Thomas Ricouard
46df3bb7f9 Fix #1579 2023-09-20 07:28:04 +02:00
Thomas Ricouard
6c23569d15 UserPreferences -> Observable 2023-09-19 09:18:20 +02:00
Thomas Ricouard
f9c0355f1d Convert Theme to Observable 2023-09-18 21:03:52 +02:00
Thomas Ricouard
4189a59cf6
iOS 17+ only support + migrating to Observation framework (#1571)
* Initial iOS 17 + Observable migration

* More Observation

* More observation

* Checkpoint

* Checkpoint

* Bump version to 1.8.0

* SwiftFormat

* Fix home timeline switch on login

* Fix sidebar routerPath

* Fixes on detail view

* Remove print changes

* Simply detail view

* More opt

* Migrate DisplaySettingsLocalValues

* Better post detail transition

* Status detail animation finally right

* Cleanup
2023-09-18 07:01:23 +02:00
Thomas Ricouard
8a3c971402 Swiftformat 2023-09-16 14:15:03 +02:00
Thomas Ricouard
8e3584ee79 Upgrade to Swift tools version 5.9 + strict Swift concurrency everywhere 2023-09-15 12:46:15 +02:00
Thomas Ricouard
1bbb0dc82d Fix sound effects + upgrade swift concurrency settings 2023-09-14 11:04:14 +02:00
Thomas Ricouard
e921f2cdd4
Fix dark secondary color (#1565) 2023-08-30 09:10:22 +02:00
Thomas Ricouard
9cffb7eda2 Add Starfield inspired themes 2023-08-30 08:02:38 +02:00
Thomas Ricouard
a2fe0511e0 Run swiftformat 2023-07-19 07:46:25 +02:00
Chris Kolbu
9e347c75b9
Timeline & Timeline detail accessibility uplift (#1323)
* Improve accessibility of StatusPollView

Previously, this view did not provide the proper context to indicate that it represented a poll.

Now, we’ve added
- A container that will stay “Active poll” or “Poll results” when the cursor first hits one of the options;
- A prefix to say “Option X of Y” before each option;
- A Selected trait on the selected option(s), if present
- Consolidating and adding an `.updatesFrequently` trait to the footer view with the countdown.

* Add poll description in StatusRowView combinedAccessibilityLabel

This largely duplicates the logic in `StatusPollView`.

* Improve accessibility of media attachments

Previously, the media attachments without alt text would not show up in the consolidated `StatusRowView`, nor would they be meaningfully explained on the status detail screen.

Now, they are presented with their attachment type.

* Change accessibilityRepresentation of AppAcountsSelectorView

* Change Notifications tab title view accessibility representation to Menu

Previously it would present as a button

* Hide layout `Rectangle`s from accessibility

* Consolidate `StatusRowDetailView` accessibility representation

* Improve readability of Poll accessibility label

* Ensure poll options don’t present as interactive when the poll is finished

* Improve accessibility of StatusRowCardView

Previously, it would present as four separate elements, including an image without a description, all interactive, none with an interactive trait.

Now, it presents as a single element with the `.link` trait

* Improve accessibility of StatusRowHeaderView

Previously, it had no traits and no actions except inherited ones.

Now it presents as a button, triggering its primary action.

It also has custom actions corresponding to its context menu

* Avoid applying the StatusRowView custom actions to every view when contained

* Provide context for the application name

* Add pauses to StatusRowView combinedAccessibilityLabel

* Hide `TimelineView.scrollToTopView` from accessibility

* Set appropriate font style on Notification header

After the change the Text needed a `.headline` style to match the prior appearance.

* Fix bug in accessibilityRepresentation of TimelineView nav bar title

Previously, it would not display the proper label for .remoteLocal filter options.

* Ensure that pop-up button nav bar titles are interactive

* Ensure TextView responds to Environment.sizeCategory

This resolves #1309

* Fix button

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-03-28 18:48:58 +02:00
Thomas Ricouard
92e15fdcc9 Settings: Add line spacing option which apply to only posts content for now 2023-03-26 18:51:15 +02:00