Commit Graph

1096 Commits

Author SHA1 Message Date
Nathan Mattes cf5bc5b424 Add existing prototype (IOS-284) 2024-06-26 18:50:45 +02:00
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