Commit Graph

1171 Commits

Author SHA1 Message Date
Nathan Mattes 3adae7b3c3 Add optional author-account (IOS-284) 2024-06-26 18:47:29 +02:00
Marcus Kida 7342b92edd
Improve code style - part 2 (IOS-271) 2024-06-26 14:37:27 +02:00
Marcus Kida 199a6624e8
Improve code style (IOS-271) 2024-06-26 14:36:17 +02:00
Marcus Kida 972426fa50
Remove CoreData.Instance Entity Classes (IOS-271) 2024-06-25 11:36:04 +02:00
Marcus Kida 3db058800b
Refactor instance usage and use MastodonAuthentication.InstanceConfig (IOS-271) 2024-06-25 11:04:38 +02:00
Marcus Kida 6c43d49ce4
Fix file header (IOS-271) 2024-06-25 10:50:50 +02:00
Marcus Kida daaf1b330e
Implement translation language check (IOS-271) 2024-06-25 10:41:03 +02:00
Marcus Kida 7f8587913f
Implement TranslationLanguages fetching (IOS-271) 2024-06-21 12:09:49 +02:00
Eugen Rochko a27c4d9255
New Crowdin updates (#1302)
* New translations app.json (German)

* New translations app.json (Chinese Traditional)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Galician)

* New translations app.json (Thai)

* New translations app.json (Vietnamese)

* New translations app.json (Portuguese)

* New translations app.json (Belarusian)

* New translations app.json (Belarusian)

* New translations app.json (Belarusian)

* New translations app.json (Romanian)

* New translations app.json (French)

* New translations app.json (Spanish)

* New translations app.json (Arabic)

* 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 (Hungarian)

* 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 (Portuguese)

* 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 (Thai)

* 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 (Swedish)

* New translations app.json (Slovenian)

* New translations app.json (Icelandic)

* New translations app.json (Belarusian)

* New translations app.json (Icelandic)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Belarusian)

* New translations app.json (Belarusian)

* New translations app.json (Galician)

* New translations app.json (Chinese Traditional)

* New translations app.json (Belarusian)

* New translations app.json (Italian)

* New translations app.json (Thai)

* New translations app.json (Thai)

* New translations app.json (Vietnamese)

* Update strings

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-06-19 22:55:05 +02:00
Marcus Kida 43227416b8
Fix Account + Source API usage (IOS-168) 2024-06-12 10:55:39 +02:00
Marcus Kida d77e8d1eac
Implement loading and saving of privacy & safety preferences (IOS-168) 2024-06-12 10:55:38 +02:00
Marcus Kida f31fd74abe
Add `indexable` to update credentials (IOS-168) 2024-06-12 10:55:38 +02:00
Marcus Kida 79d8d8d508
Implement loading spinner when fetching current settings (IOS-168) 2024-06-12 10:55:38 +02:00
Marcus Kida 84f445426a
Add Privacy & Safety Settings Item (IOS-168) 2024-06-12 10:55:37 +02:00
Nathan Mattes 9691e905c0 Remove card-persistence 2024-06-07 10:05:04 +02:00
Nathan Mattes e668b21da5 Remove PollLegacy from Core Data (IOS-182) 2024-06-07 09:51:55 +02:00
Nathan Mattes d12624a0f5 Remove Poll-persistence(IOS-181) 2024-06-07 09:46:11 +02:00
Nathan Mattes b5f4bd4eeb Remove enum (IOS-182) 2024-06-06 16:47:19 +02:00
Nathan Mattes 5264f13ef8 Remove poll-option-related persistence (IOS-182) 2024-06-06 15:43:27 +02:00
Nathan Mattes d954d72c7c Remove polloption-persistence (IOS-182) 2024-06-06 15:32:56 +02:00
Nathan Mattes 55dd3befc5 Update translations 2024-05-22 17:24:46 +02:00
Marcus Kida e2c1cf301a
Fix voted indicator on poll missing (IOS-274) (#1301)
# Rationale

Fixes #1289
2024-05-22 16:31:50 +02:00
Marcus Kida 478cffa5b8
Fix voted indicator on poll missing (IOS-274) 2024-05-22 13:45:22 +02:00
Marcus Kida 49f773e1a4
Improve CW Overlay / size (IOS-278) 2024-05-22 13:00:41 +02:00
Marcus Kida f1aebc4220
Update Onboarding Privacy Copy (IOS-221) (#1295)
# Rationale

| Screenshot | Description |
|---|---|
| ![Simulator Screenshot - iPhone 15 - 2024-05-18 at 14 13
51](https://github.com/mastodon/mastodon-ios/assets/126418/0822433f-b362-4787-9f42-2f7c37f4ea55)
| This PR modifies the Onboarding Privacy Copy and allows it to render
Markdown. |
2024-05-22 09:26:12 +02:00
Marcus Kida 068da20c58
Don't flicker avatar-image in MainTabBar (IOS-238) (#1299)
Every time, the account gets updated, the `avatarURL` is updated as
well. But not only new image was set. Before setting the image, the
button-image was reset to the placeholder first. After that, the
downloaded image was applied.

Now we don't reset the image to the placeholder, but set the placeholder
once.
Also: Cleanup.
2024-05-22 09:14:38 +02:00
Nathan Mattes 47bedff5e5 Cleanup (IOS-238) 2024-05-21 18:11:22 +02:00
Nathan Mattes 9e486a82e6 Remove download-placeholder (IOS-238) 2024-05-21 18:01:54 +02:00
Nathan Mattes 298886d3f5 Set placeholder-color for AvatarButton (IOS-238) 2024-05-21 17:43:53 +02:00
Nathan Mattes 16d6c9e823 Set placeholder only if something goes wrong (IOS-238) 2024-05-21 17:14:32 +02:00
Nathan Mattes aeb3717eb2 Update wording for boosts (IOS-231) 2024-05-21 12:02:57 +02:00
Nathan Mattes a7f792c301 Update menu for profiles (IOS-231) 2024-05-21 11:16:58 +02:00
Nathan Mattes 7420563f37
Only show mentions in mentions (IOS-270) (#1296) 2024-05-20 10:34:08 +02:00
Nathan Mattes 8d3cb2beb3
Update Post Menu (IOS-229) (#1292)
* Add missing actions, hack way to inject options into menu (IOS-229)

* Implement new menu structure (IOS-229)

This doesn't work-work yet, as functionality isn't implemented yet. Also: Special options and traits.

* Add preferredElementSize to submenus (IOS-229)

* Copy Link (IOS-229)

* Open In Browser (IOS-229)

* Boost status from menu (IOS-229)

* Favorite status from menu (IOS-229)

* Fix following-status in menu and don't cache menu (IOS-229)

* Add some destruction, add localization and use "Boost" instead of "Reblog" (IOS-229)

* Use struct instead of tuple for those menu-parts (IOS-229)
2024-05-18 14:30:51 +02:00
Marcus Kida 41c34d4e82
Update onboarding privacy text to render Markdown 2024-05-16 17:13:55 +02:00
Nathan Mattes 1c1f67c4f9 Add missing localization (IOS-264) 2024-05-14 15:11:56 +02:00
Nathan Mattes 9507368fd1 Add localization (IOS-264) 2024-05-14 15:11:56 +02:00
Nathan Mattes 2d97d67657 Open strike in browser (IOS-264) 2024-05-14 15:11:56 +02:00
Nathan Mattes be962f15d0 Add authorization to instance-calls (IOS-264)
This will improve using the app with `LIMITED_FEDERATION_INSTANCES`
2024-05-14 15:11:56 +02:00
Nathan Mattes 8774ed4e79 Add entity for new AccountWarning (IOS-264)
Details see https://github.com/mastodon/mastodon/pull/30065 for now, as there's no documentation (yet)
2024-05-14 15:11:56 +02:00
Nathan Mattes a6e41c37ce Add moderation-warning-notification-type (IOS-264) 2024-05-14 15:11:56 +02:00
Nathan Mattes a4b175ce9c Revert "Moderation Warning Notifications (IOS-264) (#1287)"
This reverts commit 794ffc002f.
2024-05-14 15:11:23 +02:00
Nathan Mattes 794ffc002f
Moderation Warning Notifications (IOS-264) (#1287)
* Add moderation-warning-notification-type (IOS-264)

* Add entity for new AccountWarning (IOS-264)

Details see https://github.com/mastodon/mastodon/pull/30065 for now, as there's no documentation (yet)

* re-add file header (IOS-264)

* Add authorization to instance-calls (IOS-264)

This will improve using the app with `LIMITED_FEDERATION_INSTANCES`

* Add basic cell for account-warnings (IOS-264)

* Show some content for a warning (IOS-264)

* Open strike in browser (IOS-264)

* Add localization (IOS-264)

* Add missing localization (IOS-264)

* Cleanup (IOS-264)
2024-05-14 15:07:05 +02:00
Marcus Kida 677670055e
Fix "Load More" Button on Home/Public Timeline (#1283)
* Begin fixing of "Load More" on Home Timeline (IOS-266)

* Don't show "Load More" if last status is first existing (IOS-266)

* Insert missing items upon "Load More" (IOS-266)

* Implement sinceID usage when loading latest posts (IOS-266)

* Change updating of items on Load More(IOS-266)

* Do not try to modify datasource directly (IOS-266)

* Improve load more (IOS-266)

* Fix load more using maxID and limit to 20 items (IOS-266)

* Implement loading missing status in public timeline (IOS-266)

* Implement subsequent "Load More" (IOS-266)

* Make loadMore(item:at:) API more Swifty (IOS-266)

* Address PR comments (IOS-266)
2024-05-08 10:02:21 +02:00
Nathan Mattes 8d97b5a51e
"Welcome back" screen cleanup (IOS-226) (#1282)
* Update texts (IOS-226)

* Remove next-button (IOS-226)

* Tap on row to login (IOS-226)

* Make text use blurple and no disclosure indicator (IOS-226)

* Fix separator lines (IOS-226)

Well. Configurations don't work with custom UI-elements (or I'm just stupid), that's why I had to fall back to good ol UITableViewCell with UIKit-components
2024-05-03 20:53:20 +02:00
Nathan Mattes c2d0701062
Improve Multi-User Account Sheet (IOS-245) (#1273)
* Copynpaste cell to logout all accounts (IOS-245)

* Show cell (IOS-245)

* Logout of all accounts (IOS-245)

* Use iOS-formsheet to present account-list (IOS-245)

* Remove dead code (IOS-245)

* Don't animate account-switches (IOS-245)

* Remove panModal (IOS-245)

* UI-fixes (IOS-245)

* Add swipe-to-logout-action (IOS-245)

* Localize (IOS-245)

* Add a little bit of margin (IOS-245)

* Fix separator-insets (IOS-245)

* Don't crash on iPad when logging out of all accounts (IOS-245)
2024-04-30 09:22:27 +02:00
Nathan Mattes 099411b435 Fix relative date time formatter
Thanks to @renchap
2024-04-17 17:44:06 +02:00
Eugen Rochko 2b204bf9df
New Crowdin updates (#1262)
* New translations app.json (Spanish)

* New translations app.json (Spanish)

* New translations app.json (Italian)

* New translations app.json (Italian)

* New translations app.json (Hungarian)

* New translations ios-infoplist.json (Hungarian)

* New translations localizable.stringsdict (Hungarian)

* New translations intents.strings (Hungarian)

* New translations intents.stringsdict (Hungarian)

* New translations app.json (Hungarian)

* New translations intents.strings (Hungarian)

* New translations app.json (Hungarian)

* New translations app.json (Hungarian)

* New translations intents.strings (Hungarian)

* New translations app.json (Hungarian)

* New translations app.json (Hungarian)

* New translations intents.strings (Hungarian)

* New translations intents.strings (Hungarian)

* New translations app.json (Hungarian)

* New translations app.json (Hungarian)

* New translations intents.strings (Hungarian)

* New translations app.json (Polish)

* New translations app.json (Polish)

* New translations ios-infoplist.json (Polish)

* New translations app.json (Portuguese)

* New translations app.json (Romanian)

* New translations app.json (Danish)

* New translations app.json (Hebrew)

* New translations app.json (Armenian)

* New translations app.json (English)

* New translations app.json (Hindi)

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

* New translations app.json (Sinhala)

* New translations app.json (English)

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

* New translations app.json (Greek)

* New translations app.json (Hungarian)

* 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 (Hungarian)

* New translations app.json (Italian)

* New translations app.json (Vietnamese)

* New translations app.json (Icelandic)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Japanese)

* New translations app.json (Chinese Traditional)

* New translations app.json (Galician)

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

* New translations app.json (Thai)

* New translations app.json (Greek)

* New translations app.json (Belarusian)

* 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 (Hungarian)

* New translations app.json (Swedish)

* New translations app.json (Spanish, Argentina)

* New translations app.json (Hungarian)

* New translations app.json (Italian)

* New translations app.json (Icelandic)

* New translations app.json (Chinese Traditional)

* New translations app.json (Galician)

* New translations app.json (Belarusian)

* New translations app.json (Thai)

* New translations app.json (Vietnamese)

* New translations app.json (Dutch)

* New translations app.json (Hungarian)

* Update translations

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-04-17 16:45:42 +02:00
Marcus Kida 24e573d9e2
Refactor Polls to not use Core Data (#1265) 2024-04-17 16:36:03 +02:00
Nathan Mattes b120d32efa
Post cell cleanup (IOS-232) and other fixes (#1272)
* Replace icons with SF Symbols (IOS-232)

* Remove visibility-icon from Status (IOS-232)

* Use relative time formatter and switch position of timestamp/user (IOS-232)

* Set TimelineSelector-Button-Position (IOS-232)

Shouldn't switch now any longer. Also: Refactoring.

* Fix position of the Home-icon in TabBar (IOS-232)

TIL: Don't set an empty string, otherwise the position of the TabBarItem-icon breaks
2024-04-16 13:19:49 +02:00
Nathan Mattes 6b32e5e4aa
Re-enable option to post unlisted/"Quiet public" (#1271)
* Add unlisted as option to post (#250)

* Replace menu-icons with SF Symbols to match other platforms (#250)

* Replace earth with SF-symbol (#250)

* Use SF Symbols for visibility (#250)
2024-04-12 10:58:18 +02:00
Nathan Mattes 1a2cf272a6
New 💊 (IOS-234) (#1268)
- Replaces the view previously in the Navigation Bar with the new,
so-called Timeline Status Pill
- We use it to show three states: When a post has been published
(successfully), when new statuses are available or when five (I slightly
increased the limit) requests failed
- The Timeline Status Pill features some fancy animations and a little
shadow
- For further details have a look at IOS-234 🙂 


![ios_234_iphone](https://github.com/mastodon/mastodon-ios/assets/2580019/c77df339-aa72-406f-8be3-572acb244246)

![ios_234_ipad](https://github.com/mastodon/mastodon-ios/assets/2580019/f2fafc4c-ed5a-4afb-86a7-5de69325997b)

To simulate the different reasons I used this snippet. When you press
the Settings-button, you should see the 💊 :

```diff
diff --git a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift
index 8559025d4..0eb27d0e8 100644
--- a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift
+++ b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift
@@ -488,9 +488,14 @@ extension HomeTimelineViewController {
     }
     
     @objc private func settingBarButtonItemPressed(_ sender: UIBarButtonItem) {
-        guard let setting = context.settingService.currentSetting.value else { return }
+        // don't commit
+        timelinePill.update(with: .newPosts)
+        showTimelinePill()
 
-        _ = coordinator.present(scene: .settings(setting: setting), from: self, transition: .none)
+//        guard let setting = context.settingService.currentSetting.value else { return }
+//
+//        _ = coordinator.present(scene: .settings(setting: setting), from: self, transition: .none)
+        // don't commit
     }
 
     @objc private func refreshControlValueChanged(_ sender: RefreshControl) {

```
2024-04-10 15:06:22 +02:00
Nathan Mattes 8bb9bca4b9 Sprinkle in localization (IOS-234) 2024-04-10 14:03:13 +02:00
Marcus Kida 4ea600403b
Move all UI*FeedbackGenerators to FeedbackGenerator and disable them for now (IOS-247) (#1267)
* Move all UI*FeedbackGenerators to FeedbackGenerator and disable them for now (IOS-247)

* Fix copyright header

* Remove empty private constructor
2024-04-09 16:41:47 +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 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 86ab9101a3 Fix loading of older posts (IOS-235)
i.e. consider different timelines there as well
2024-04-04 12:19:44 +02: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
woxtu 27353a3bdb
Change user agent (#1250) 2024-03-19 16:16:42 +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
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
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
Nathan Mattes f6e630aa66 Cleanup (IOS-192) 2024-02-20 17:41:10 +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 0e46a811b7 Use constant foe UserInfo-key instead of string (IOS-192) 2024-02-19 10:18:12 +01:00
Nathan Mattes ecc4535058 Update screen when relationship changes on another screen (IOS-192) 2024-02-16 09:19:22 +01:00
Nathan Mattes 6bcbc0ac07 Remove obsolete code (IOS-192) 2024-02-14 16:52:27 +01:00
Nathan Mattes cb3a90b5be Remove more users (IOS-192) 2024-02-14 16:51:24 +01:00
Nathan Mattes 7024823cbf Remove persistence for user (IOS-192) 2024-02-14 10:44:32 +01:00
Nathan Mattes dc53fbbe7c Remove more users (IOS-192) 2024-02-09 18:41:12 +01:00
Nathan Mattes 255b6ab0ef Remove obsolete code (IOS-192)
We didn't use that as someone rebuilt this screen in SwiftUI.
2024-02-09 18:18:26 +01:00
Nathan Mattes c523f97d0c Merge branch 'develop' into ios-192-profile-about
# Conflicts:
#	MastodonSDK/Sources/MastodonUI/View/Control/ProfileRelationshipActionButton.swift
2024-02-09 12:43:56 +01:00
Nathan Mattes a90d5ea084
Fix Follow-Button in App-Dark Mode (#1218) (#1222)
* Don't set colors (#1218

* Use UIButton.configuration for ... configuration (#1218)

* Fix activity indicator (#1218)
2024-02-09 11:12:15 +01:00
Nathan Mattes cabdc30be7 Merge branch 'develop' into ios-192-profile-about 2024-01-31 23:41:34 +01:00
Eugen Rochko 5e5b8ffec8
New Crowdin updates (#1223)
* New translations app.json (English)

* Fix english localization

Listen folks: Hungarian isn't english!

---------

Co-authored-by: Nathan Mattes <hallo@bullenscheisse.de>
2024-01-31 23:40:45 +01:00
Nathan Mattes b2dbcc8095 Merge branch 'develop' into ios-192-profile-about
# Conflicts:
#	Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift
#	Mastodon/Scene/Notification/NotificationTimeline/NotificationTimelineViewController+DataSourceProvider.swift
#	MastodonSDK/Sources/MastodonCore/DataController/FeedDataController.swift
#	MastodonSDK/Sources/MastodonUI/View/Content/StatusView+Configuration.swift
2024-01-31 15:36:53 +01:00
Nathan Mattes 35bc04be51
update strings (#1219) 2024-01-31 10:04:22 +01:00
Marcus Kida 383a75ea48
Improve status updating mechanism (#1210) 2024-01-30 23:02:13 +01:00
Nathan Mattes 7dfa56507e Make follow-requests work again (IOS-192)
Aaaaand remove obsolete viewmodel and put relationship to make menu work again (too)
2024-01-30 11:13:39 +01:00
Nathan Mattes 3e200a7703 Minor cleanup (#1138) 2024-01-23 10:42:52 +01:00
Nathan Mattes f9ae531b48 Don't download edit-history (#1138)
It was needed in the past when `editHistory` also persisted the history in CoreData. But as we don't use CoreData anymore...
2024-01-23 10:31:05 +01:00
Nathan Mattes 08a932ddfc Use correct endpoint to add media-attributes for changes (#1138)
Also: Use JSON instead of Multipart
2024-01-23 10:30:15 +01:00
Nathan Mattes 80cd22a356 Update media if caption was changed (#1138)
Doesn't work yet as the `/api/v1/media/:id` returns 404?! wtf?!
2024-01-21 12:10:56 +01:00
Nathan Mattes 89b7df25ea Make caption changable (#1138) 2024-01-21 12:09:47 +01:00
Nathan Mattes 304eb8b7ff Move notification-timestamp away from viewmodel (IOS-192) 2024-01-21 09:30:44 +01:00
Nathan Mattes e720db2a31 Remove unused code (IOS-192) 2024-01-20 20:03:59 +01:00
Nathan Mattes ab2f54307f Group files and use simpler context (IOS-192) 2024-01-20 18:21:02 +01:00
Nathan Mattes 6ffcdb2565 Remove unused property (IOS-192) 2024-01-20 14:05:08 +01:00
Nathan Mattes ca3fd69b62 [WIP] Preparation to get relationship into menu on notification-screen (IOS-192) 2024-01-18 16:59:14 +01:00
Nathan Mattes 35c017986a [WIP] Add relationships/user to notifications (IOS-192) 2024-01-16 17:12:47 +01:00
Marcus Kida d55800d71a
#1049 - fix max character limit and other server configs are not respected (#1207) 2024-01-12 14:33:48 +01:00
Nathan Mattes cea6129229 Download accounts at start and don't fail if there's no me (IOS-192)
Known issue for know is that the profile-tab shows a blank screen. Still gotta fix that.
2024-01-11 16:33:20 +01:00
Nathan Mattes c6788f5a43 Split private/public into their own extension 2024-01-11 14:10:47 +01:00