Commit Graph

6305 Commits

Author SHA1 Message Date
Nathan Mattes 6af94352e2 Remove NavigationBarTitleView and add first draft of TimelineStatusPill (IOS-234) 2024-04-05 14:27:06 +02:00
Marcus Kida cc9faf5aea
Improve Number Formatting (#1266)
* Improves number formatting (IOS-246)

* Implement formatting > 1T (IOS-246)

* Fix typo (IOS-246)

* Update MastodonTests/MetricFormatterTests.swift

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>

* Improve decimal formatting and add tests (IOS-246)

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-04-04 16:55:19 +02:00
Nathan Mattes 5925436bc5
NavigationBar-Update (IOS-235) (#1263)
Adds a menu to switch between different timelines. And it looks like
this:

![Simulator Screenshot - iPhone 15 Pro - 2024-04-01 at 20 12
09](https://github.com/mastodon/mastodon-ios/assets/2580019/68fe01d5-2207-42d4-9896-210beff82f78)

And it works like this:



https://github.com/mastodon/mastodon-ios/assets/2580019/b7468285-4f23-41c2-b814-5612dbf159a0
2024-04-04 13:48:44 +02:00
Nathan Mattes 3fe855273b Rename a few things here and there (IOS-235) 2024-04-04 13:28:07 +02:00
Nathan Mattes 26f3b5a7ce Sprinkle in some localization (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes 1583ce0d9a Add a new loading-state for timeline-switches (IOS-235)
Gosh, this took longer than expected. It didn't work for quite some time but the trick is to check for the states in several places, like in HomeTimelineViewModel+Diffable or when the timeline reached the end. Those triggered a reload and we don't want that in case the state is `contextSwitch`.
2024-04-04 12:19:44 +02:00
Nathan Mattes 86ab9101a3 Fix loading of older posts (IOS-235)
i.e. consider different timelines there as well
2024-04-04 12:19:44 +02:00
Nathan Mattes 4ae69c9036 Add selection to menu (IOS-235)
also refactor it into a function as we need to re-generate it for an updated version
2024-04-04 12:19:44 +02:00
Nathan Mattes ceca4f6887 Style elements (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes 67786e1675 Use correct icon for settings (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes 1d2c08b997 Add basic implementation of timeline-switch (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes 5e1bb2cfaa Differ between local and following-timeline (IOS-235) 2024-04-04 12:19:44 +02:00
Nathan Mattes 4eed7df729 Remove dead code (IOS-235) 2024-04-04 12:19:44 +02:00
Marcus Kida 344385f5ef Improve button image 2024-04-04 12:19:44 +02:00
Marcus Kida 66f6ee9bd0 Begin updating NavigationBar Layout 2024-04-04 12:19:44 +02:00
Nathan Mattes 07cab9b9ad Bump version 2024-03-27 10:34:35 +01:00
Eugen Rochko ecf816d15d
New Crowdin updates (#1242)
* New translations app.json (Portuguese)

* New translations app.json (Thai)

* New translations app.json (Romanian)

* New translations app.json (French)

* New translations app.json (Spanish)

* New translations app.json (Arabic)

* New translations app.json (Belarusian)

* New translations app.json (Catalan)

* New translations app.json (Czech)

* New translations app.json (Danish)

* New translations app.json (German)

* New translations app.json (Greek)

* New translations app.json (Basque)

* New translations app.json (Finnish)

* New translations app.json (Hebrew)

* New translations app.json (Armenian)

* New translations app.json (Italian)

* New translations app.json (Japanese)

* New translations app.json (Korean)

* New translations app.json (Dutch)

* New translations app.json (Polish)

* New translations app.json (Russian)

* New translations app.json (Slovenian)

* New translations app.json (Swedish)

* New translations app.json (Turkish)

* New translations app.json (Ukrainian)

* New translations app.json (Chinese Simplified)

* New translations app.json (Chinese Traditional)

* New translations app.json (English)

* New translations app.json (Vietnamese)

* New translations app.json (Galician)

* New translations app.json (Icelandic)

* New translations app.json (Portuguese, Brazilian)

* New translations app.json (Indonesian)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Latvian)

* New translations app.json (Hindi)

* New translations app.json (English, United States)

* New translations app.json (Burmese)

* New translations app.json (Welsh)

* New translations app.json (Sinhala)

* New translations app.json (Scottish Gaelic)

* New translations app.json (Aragonese)

* New translations app.json (Kurmanji (Kurdish))

* New translations app.json (Sorani (Kurdish))

* New translations app.json (Kabyle)

* New translations app.json (German)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Icelandic)

* New translations app.json (Thai)

* New translations app.json (Swedish)

* New translations app.json (Thai)

* New translations app.json (Dutch)

* New translations app.json (Chinese Traditional)

* New translations app.json (Dutch)

* New translations app.json (Slovenian)

* New translations app.json (Galician)

* New translations app.json (Icelandic)

* New translations app.json (Italian)

* New translations app.json (Vietnamese)

* New translations app.json (Japanese)

* New translations app.json (Japanese)

* New translations app.json (Greek)

* New translations app.json (Kabyle)

* New translations app.json (Kabyle)

* New translations app.json (Kabyle)

* New translations app.json (Kabyle)

* New translations app.json (Scottish Gaelic)

* New translations localizable.stringsdict (French)

* New translations app.json (Chinese Simplified)

* New translations app.json (Chinese Simplified)

* New translations ios-infoplist.json (Chinese Simplified)

* New translations app.json (Belarusian)

* New translations app.json (Chinese Simplified)

* New translations app.json (Dutch)

* New translations app.json (Portuguese)

* New translations app.json (Thai)

* New translations app.json (Romanian)

* New translations app.json (French)

* New translations app.json (Spanish)

* New translations app.json (Arabic)

* New translations app.json (Belarusian)

* New translations app.json (Catalan)

* New translations app.json (Czech)

* New translations app.json (Danish)

* New translations app.json (German)

* New translations app.json (Greek)

* New translations app.json (Basque)

* New translations app.json (Finnish)

* New translations app.json (Hebrew)

* New translations app.json (Armenian)

* New translations app.json (Italian)

* New translations app.json (Japanese)

* New translations app.json (Korean)

* New translations app.json (Dutch)

* New translations app.json (Polish)

* New translations app.json (Russian)

* New translations app.json (Slovenian)

* New translations app.json (Swedish)

* New translations app.json (Turkish)

* New translations app.json (Ukrainian)

* New translations app.json (Chinese Simplified)

* New translations app.json (Chinese Traditional)

* New translations app.json (English)

* New translations app.json (Vietnamese)

* New translations app.json (Galician)

* New translations app.json (Icelandic)

* New translations app.json (Portuguese, Brazilian)

* New translations app.json (Indonesian)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Latvian)

* New translations app.json (Hindi)

* New translations app.json (English, United States)

* New translations app.json (Burmese)

* New translations app.json (Welsh)

* New translations app.json (Sinhala)

* New translations app.json (Scottish Gaelic)

* New translations app.json (Aragonese)

* New translations app.json (Kurmanji (Kurdish))

* New translations app.json (Sorani (Kurdish))

* New translations app.json (Kabyle)

* New translations app.json (German)

* New translations app.json (English)

* New translations app.json (Icelandic)

* New translations ios-infoplist.json (English)

* New translations localizable.stringsdict (English)

* New translations intents.strings (English)

* New translations app.json (Chinese Traditional)

* New translations app.json (Thai)

* New translations app.json (Dutch)

* New translations app.json (Korean)

* New translations app.json (Japanese)

* New translations app.json (Galician)

* New translations app.json (Galician)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Belarusian)

* New translations app.json (Vietnamese)

* New translations app.json (Swedish)

* New translations app.json (English)

* New translations ios-infoplist.json (English)

* New translations localizable.stringsdict (English)

* New translations intents.strings (English)

* Update translations

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-03-21 17:00:09 +01:00
Nathan Mattes ab39c6ef87
Fix Profile Editing again (IOS-239, #1244) (#1259)
* Fix Profile Editing again (IOS-239, #1244)

This needs a bit of explanation, I guess, so please don't squash if possible? I didn't take into consideration, that the `ProfileViewController.viewModel` changes. And when it changes, all the combine-connections just ... disappear. This PR changes that (but probably I oversaw something again).

* Disable pull to refresh for editing mode (IOS-239)

* In case of nothing change, cancel editing (IOS-239)
2024-03-21 08:35:18 +01:00
Nathan Mattes 83fd4a89fa
Remove Community-tab from Explore-tab (IOS-236) (#1260) 2024-03-20 14:03:01 +01:00
woxtu 27353a3bdb
Change user agent (#1250) 2024-03-19 16:16:42 +01:00
woxtu f911aa9432 Fix localization update script 2024-03-19 15:46:24 +01:00
Nathan Mattes 6da37e2156
Use static cursor color (#1253) 2024-03-19 11:59:44 +01:00
Nathan Mattes 13cc2bdbec
Don't add my own handle to a reply (#1254) (#1256)
* Don't add my own handle (#1254)

* Remove CoreData-stuff (#1254(

* Remove MastodonMentionContainer (#1254)

This is a left over from the status-refactoring. The Core Data-persistence-stuff for Status needed that, but as we don't use that any more say byebye
2024-03-19 10:28:16 +01:00
Marcus Kida 484d72fbdd
Adjust Server Rules Screen (IOS-220) (#1251)
* Adjust Server Rules Screen (IOS-220)

* Update Server Rules (IOS-220)

* Use new server rules UI in Server Details (IOS-220)

* Improve disclaimer usage (IOS-220)

* Fix background in server details (IOS-220)
2024-03-19 09:55:42 +01:00
Nathan Mattes 62cc9105a9
Fix Profile Editing (#1245)
* Fix image-editing (#1244)

Probably introduced in 76304e5 and we just missed that :)

* Removed unused property (#1244)

* Don't allow tapping on followers/followees when editing my profile

* Remove obsolete code

relationship-update on viewDidAppear is not needed anylonger as we use update user/relationship using notifications like in the good ol days

* Make relationship optional and use switch-pattern-matching for button-configuration

* Don't change relationship when relationship is updating

* [WIP] don't toggle, but just set booleans.
2024-03-18 16:27:12 +01:00
Marcus Kida 0e207cf65d
Switch Everything and Mentions Tabs order (IOS-240) (#1258)
* Switch Everything and Mentions Tabs order (IOS-240)

* Swap switch category (IOS-240)
2024-03-14 07:19:46 +01:00
woxtu bfc20655c4 Update the requirements 2024-03-12 09:08:52 +01:00
woxtu 4d652b5cbe Remove CocoaPods gems 2024-03-11 22:31:16 +01:00
Nathan Mattes 4517a4fffb
Remove Cocoapods (#1179)
* Remove Cocoapods and Workspace

* Fix build

* Fix build again 🤦

* Update docs

* Fix fastlane to not use workspace anymore

* Update Documentation/Setup.md

Co-authored-by: Marcus Kida <marcus.kida@bearologics.com>

* Pin versions for swiftgen/sourcery

* Improve docs

---------

Co-authored-by: Marcus Kida <marcus.kida@bearologics.com>
2024-02-29 18:15:30 +01:00
Marcus Kida 2e7054cb68
Implement "Default Post Language" and "Ask Before"-Alerts (#1240)
* Implement Settings->General->"Ask Before" and add "Ask Before Posting Without Alt Text" IOS-166

* Implement Alt Missing Alert for Status Edits (IOS-166)

* Fix status edit composes duplicate message

* Show (or don't) the "Really delete post?" Alert based on the User's preference (IOS-166)

* Implement alert for boost/unboost (IOS-166)

* Begin implementing "Default Post Language"-Setting (IOS-166)

* Show "Unfollow @user?" Alert (IOS-166)

* Merge conflict fixes for IOS-166

* Implement default post language setting (IOS-166)

* Fix follow button state not updated correctly (IOS-166)

* Add PR feedback (IOS-166)

* Improve default language cell style (IOS-166)

* Fix language filter broken (IOS-166)
2024-02-28 10:52:04 +01:00
Nathan Mattes d3ffa3782e Bump version 2024-02-27 09:07:40 +01:00
Eugen Rochko 8807002404
New Crowdin updates (#1224)
* New translations app.json (Portuguese)

* New translations app.json (Portuguese)

* New translations app.json (Portuguese)

* New translations app.json (Thai)

* Update localizations

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-02-26 22:04:38 +01:00
Brentley Jones 10aa700e88
Fix Sourcery for `DiscoveryCommunityViewController` (#1231)
The annotation was referencing the wrong type.

Signed-off-by: Brentley Jones <github@brentleyjones.com>
2024-02-22 10:36:47 +01:00
Nathan Mattes 71d81cc486
#1229, but for search (#1237)
Trigger search right away and don't wait for ListBatchViewModel
2024-02-22 10:33:55 +01:00
Nathan Mattes db12ea4aa9
Make Profile-screen use Mastodon.Entity.Account instead of MastodonUser (#1192)
- Make Profile-screen use Mastodon.Entity.Account instead of
MastodonUser
- Fix things left and right
- Just like with the Status-refactoring I'm expecting more bugs to show
up over time.
2024-02-21 18:31:27 +01:00
Nathan Mattes 3cf397d2d1 Merge branch 'develop' into ios-192-profile-about 2024-02-20 18:29:27 +01:00
Marcus Kida a5f74b8b8c Fix widgets not working since iOS 17 #1234 2024-02-20 18:28:54 +01:00
Nathan Mattes f6e630aa66 Cleanup (IOS-192) 2024-02-20 17:41:10 +01:00
Nathan Mattes a170a462ee Remove nested tasks (IOS-192) 2024-02-20 16:47:55 +01:00
Nathan Mattes 8630bd1746 Show loading-indicator (IOS-192) 2024-02-20 16:33:27 +01:00
Nathan Mattes 06711f44f8 Merge branch 'develop' into ios-192-profile-about 2024-02-20 16:28:50 +01:00
Nathan Mattes d7fa94211a Fix warning 2024-02-20 16:28:23 +01:00
Nathan Mattes 86e968fabd Don't reload content all the time (IOS-192) 2024-02-20 15:26:05 +01:00
Nathan Mattes 897fc0d348 Recude task-nestedness (IOS-192) 2024-02-20 12:04:44 +01:00
Marcus Kida c05169affb Fix crash / deadlock when selecting hashtag from search history 2024-02-19 22:19:07 +01:00
Nathan Mattes 22b9e912f6 Remove unused completion (IOS-192) 2024-02-19 12:09:51 +01:00
Nathan Mattes 49af28eeba Use constant (IOS-192) 2024-02-19 12:06:10 +01:00
Nathan Mattes 52f5458364 Fix build 2024-02-19 12:05:48 +01:00
Nathan Mattes ed7de63eb7 Remove unused code (IOS-192) 2024-02-19 11:52:12 +01:00
Nathan Mattes 0e46a811b7 Use constant foe UserInfo-key instead of string (IOS-192) 2024-02-19 10:18:12 +01:00