Kalle Kniivilä
4db3b35023
fix(l10n): Update Finnish translations
...
Currently translated at 72.3% (470 of 650 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/fi/
2023-12-15 11:38:09 +01:00
Nik Clayton
fe8f84847b
fix: Prevent a crash if trending tags, links, or statuses are added to tabs ( #323 )
...
The previous code was serialising the `TabKind` enum without the `_`, so
when it was converted back to the enum name (which has a `_`) it failed
and immediately crashed.
Fixes #306
2023-12-14 12:25:03 +01:00
Nik Clayton
b294a3bace
fix: Correctly show if an account is a bot or not ( #322 )
...
e35fa1db
inadvertently contained some left over debug code that treats
non-bot accounts as bots (for displaying the bot badge) and vice versa.
Fixes #321
2023-12-14 11:27:49 +01:00
Nik Clayton
29f9273c01
fix: Show translated content when viewing a thread ( #320 )
...
If a status was part of a thread, and it was not the "detailed" status,
and it had been translated, then the view data was marked as "show the
translation". But the translation was not loaded, so the status content
appeared as empty.
Fix that by loading the translated content of all statuses in the thead
and ensure that the translated content is rendered.
Throw an `IllegalStateException` in debug builds to catch any future
occurrences of this.
Fixes #281
2023-12-13 17:18:07 +01:00
Nik Clayton
e24ef0b52d
refactor: Use @MapColumn instead of @MapInfo ( #319 )
...
`@MapInfo` is deprecated, migrate to `@MapColumn`.
2023-12-13 16:44:50 +01:00
Nik Clayton
341415bc1e
docs: Update app screenshots ( #318 )
...
Demonstrate:
- Light, dark, and black themes
- Different fonts and sizes
- Translation
- Trending posts, links, and hashtags
- Scheduling posts
- Profile
- Posting polls etc
Fixes #304
2023-12-13 13:10:46 +01:00
Nik Clayton
bf36837b04
feat: Allow the user to report crashes in orange builds ( #317 )
...
Add a dependency on ACRA (in orange builds only), and catch crashes.
The user is given the option to e-mail the crash report data to the
support address, and can view and edit/redact the data before doing so.
2023-12-12 23:25:09 +01:00
Nik Clayton
098983f401
fix: Calculate length of posts and polls with emojis correctly ( #315 )
...
Mastodon counts post lengths by considering emojis to be single
characters, no matter how many unicode code points they are composed of.
So "😜 " has length 1.
Pachli was using `String.length`, which considers "😜 " as length 2.
Correct the calculation by using a BreakIterator to count the characters
in the string, which treats multi-character emojis as a length 1.
Poll options had a similar problem, exacerbated by the Mastodon web UI
also having the same problem, see
https://github.com/mastodon/mastodon/issues/28336 .
Fix that by creating `MastodonLengthFilter`, an `InputFilter` that does
the right thing for regular text that may contain emojis.
See also https://github.com/tuskyapp/Tusky/pull/4152 , which has the fix
for status length but not polls.
---------
Co-authored-by: Konrad Pozniak <opensource@connyduck.at>
2023-12-12 16:53:09 +01:00
Nik Clayton
239f5cb274
build: Publish Gradle buildscans when CI variable is non-empty ( #316 )
...
This should allow for periodic tracking of improvements (or regressions)
in the build performance.
Fixes #314
2023-12-12 15:17:47 +01:00
Kalle Kniivilä
07e1d4c760
fix(l10n): Update Finnish translations
...
Currently translated at 60.2% (390 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/fi/
2023-12-12 14:09:35 +01:00
Nik Clayton
cbecfa3117
feat: Show roles on profiles ( #312 )
...
Roles for the logged in user appeared in Mastodon 4.0.0 and can be
displayed on the user's profile screen.
Show them as chips, adjusting the display of the existing "Follows you"
and "Bot" indicators to make allowances for this.
Roles can have a custom colour assigned by the server admin. This is
blended with the app colour so it is not too jarring in the display.
See also https://github.com/tuskyapp/Tusky/pull/4029
Co-authored-by: Konrad Pozniak <opensource@connyduck.at>
2023-12-11 20:57:11 +01:00
Nik Clayton
60cfa99f17
refactor: Use AppTheme enum exclusively ( #311 )
...
Previous code treated the app theme as a mix of strings and enums.
Convert to exclusively use the `AppTheme` enum to improve type safety.
2023-12-11 14:41:36 +01:00
Nik Clayton
2a7eda667b
fix: Prevent crash if a preview card does not have an author
2023-12-09 22:49:21 +01:00
Nik Clayton
4f65321a9d
fix: Prevent crash if an error is shown in a timeline without a FAB
2023-12-09 22:49:21 +01:00
Nik Clayton
df45c0cd96
fix: Prevent crash showing profile if account has null `createdAt` field
2023-12-09 22:49:21 +01:00
Nik Clayton
d4eed2fbf8
fix: Prevent memory leak in CompositeWithOpaqueBackground ( #309 )
...
Quoting @connyduck in https://github.com/tuskyapp/Tusky/pull/4150 :
"""
The transformation ends up in Glide's memory cache and leaks whole
Activities through the view -> context reference.
This fixes the problem by removing the background detection logic (so
the view reference is no longer needed) and setting the background
directly instead. Looks exactly as before.
"""
Co-authored-by: Konrad Pozniak <opensource@connyduck.at>
2023-12-09 18:36:49 +01:00
Nik Clayton
6ee41177cd
build: Install LeakCanary in debug builds ( #308 )
2023-12-09 18:06:01 +01:00
Kalle Kniivilä
0251801d7e
fix(l10n): Update Finnish translations
...
Currently translated at 60.1% (389 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/fi/
2023-12-09 17:49:16 +01:00
Nik Clayton
1214cf7c8a
refactor: Break navigation dependency cycles with :core:navigation ( #305 )
...
The previous code generally started an activity by having the activity
provide a method in a companion object that returns the relevant intent,
possibly taking additional parameters that will be included in the
intent as extras.
E.g., if A wants to start B, B provides the method that returns the
intent that starts B.
This introduces a dependency between A and B.
This is worse if B also wants to start A.
For example, if A is `StatusListActivity` and B is`ViewThreadActivity`.
The user might click a status in `StatusListActivity` to view the
thread, starting `ViewThreadActivity`. But from the thread they might
click a hashtag to view the list of statuses with that hashtag. Now
`StatusListActivity` and `ViewThreadActivity` have a circular
dependency.
Even if that doesn't happen the dependency means that any changes to B
will trigger a rebuild of A, even if the changes to B are not relevant.
Break this dependency by adding a `:core:navigation` module with an
`app.pachli.core.navigation` package that contains `Intent` subclasses
that should be used instead. The `quadrant` plugin is used to generate
constants that can be used to launch activities by name instead of by
class, breaking the dependency chain.
The plugin uses the `Activity` names from the manifest, so when an
activity is moved in the future the constant will automatically update
to reflect the new package name.
If the activity's intent requires specific extras those are passed via
the constructor, with companion object methods to extract them from the
intent.
Using the intent classes from this package is enforced by a lint
`IntentDetector` which will warn if any intents are created using a
class literal.
See #291
2023-12-07 18:36:00 +01:00
renovate[bot]
b14972cb73
chore(deps): update actions/setup-java action to v4 ( #301 )
...
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [actions/setup-java](https://togithub.com/actions/setup-java ) | action
| major | `v3` -> `v4` |
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>actions/setup-java (actions/setup-java)</summary>
### [`v4`](https://togithub.com/actions/setup-java/compare/v3...v4 )
[Compare
Source](https://togithub.com/actions/setup-java/compare/v3...v4 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-06 12:21:14 +01:00
renovate[bot]
f1e7ed0618
fix(deps): update dependency org.mockito.kotlin:mockito-kotlin to v5.2.1 ( #300 )
...
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[org.mockito.kotlin:mockito-kotlin](https://togithub.com/mockito/mockito-kotlin )
| `5.1.0` -> `5.2.1` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.mockito.kotlin:mockito-kotlin/5.2.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.mockito.kotlin:mockito-kotlin/5.2.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.mockito.kotlin:mockito-kotlin/5.1.0/5.2.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.mockito.kotlin:mockito-kotlin/5.1.0/5.2.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>mockito/mockito-kotlin
(org.mockito.kotlin:mockito-kotlin)</summary>
###
[`v5.2.1`](https://togithub.com/mockito/mockito-kotlin/releases/tag/5.2.1 )
[Compare
Source](https://togithub.com/mockito/mockito-kotlin/compare/5.2.0...5.2.1 )
<sup><sup>*Changelog generated by [Shipkit Changelog Gradle
Plugin](https://togithub.com/shipkit/shipkit-changelog )*</sup></sup>
##### 5.2.1
- 2023-12-02 - [1
commit(s)](https://togithub.com/mockito/mockito-kotlin/compare/5.2.0...5.2.1 )
by Róbert Papp
- Increase visibility of Mockito dependency
[(#​498)](https://togithub.com/mockito/mockito-kotlin/pull/498 )
###
[`v5.2.0`](https://togithub.com/mockito/mockito-kotlin/releases/tag/5.2.0 )
[Compare
Source](https://togithub.com/mockito/mockito-kotlin/compare/5.1.0...5.2.0 )
<sup><sup>*Changelog generated by [Shipkit Changelog Gradle
Plugin](https://togithub.com/shipkit/shipkit-changelog )*</sup></sup>
##### 5.2.0
- 2023-12-01 - [1
commit(s)](https://togithub.com/mockito/mockito-kotlin/compare/5.1.0...5.2.0 )
by Sergei
- Main dependencies updated
[(#​496)](https://togithub.com/mockito/mockito-kotlin/pull/496 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-06 12:20:51 +01:00
Nik Clayton
2ce80c6a32
refactor: Use the correct package for TimelineKind ( #303 )
...
The package wasn't renamed when it was moved, so was still
`app.pachli.components.timeline`, instead of the new location,
`app.pachli.core.network.model`.
2023-12-06 12:20:36 +01:00
Nik Clayton
e749b362ca
refactor: Start creating core modules ( #286 )
...
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201 .
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291 .
2023-12-04 16:58:36 +01:00
sanao
a7533b3f08
feat: Display compose button when viewing lists ( #279 )
...
Fixes #231
2023-12-04 16:42:32 +01:00
sanao
fbbb6249cc
feat: Display compose button when viewing bookmarks list ( #278 )
...
Fixes #230
2023-12-04 16:29:14 +01:00
renovate[bot]
02b17f4144
fix(deps): update dependency com.android.tools.build:gradle to v8.2.0 ( #257 )
...
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.android.tools.build:gradle](https://developer.android.com/studio/build )
([source](https://android.googlesource.com/platform/tools/base )) |
`8.1.2` -> `8.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.build:gradle/8.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.build:gradle/8.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.build:gradle/8.1.2/8.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.build:gradle/8.1.2/8.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
| [com.android.tools.lint:lint-tests](http://tools.android.com/ ) |
`31.1.3` -> `31.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.lint:lint-tests/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.lint:lint-tests/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.lint:lint-tests/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.lint:lint-tests/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
| [com.android.tools.lint:lint](http://tools.android.com/ ) | `31.1.3` ->
`31.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.lint:lint/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.lint:lint/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.lint:lint/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.lint:lint/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
| [com.android.tools.lint:lint-checks](http://tools.android.com/ ) |
`31.1.3` -> `31.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.lint:lint-checks/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.lint:lint-checks/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.lint:lint-checks/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.lint:lint-checks/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
| [com.android.tools.lint:lint-api](http://tools.android.com/ ) |
`31.1.3` -> `31.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.lint:lint-api/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.lint:lint-api/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.lint:lint-api/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.lint:lint-api/31.1.3/31.2.0?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Nik Clayton <nik@ngo.org.uk>
2023-12-02 14:34:34 +01:00
Nik Clayton
f9fb0e87b4
fix: Prevent UnsupportedOperationException in PachliTileService ( #288 )
...
Previous code always called `startActivityAndCollapse()` with a regular
intent, which triggers an `UnsupportedOperationException` at API 34.
Use the non-deprecated variant that uses pending intents when
appropriate.
While looking at this I noticed the icon for the tile was incorrect, so
replaced that with the notification icon.
2023-12-02 14:24:29 +01:00
Jener Gomes
d2ef0b0713
fix(l10n): Update English (United Kingdom) translations
...
Currently translated at 12.3% (80 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/en_GB/
2023-12-01 17:00:58 +01:00
sköldpadda
96d6c3bed3
fix(l10n): Update Swedish translations
...
Currently translated at 99.8% (646 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/sv/
2023-12-01 17:00:58 +01:00
Jener Gomes
abc7a180bf
fix(l10n): Update Portuguese (Brazil) translations
...
Currently translated at 100.0% (647 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/pt_BR/
2023-12-01 17:00:58 +01:00
Jener Gomes
ad8d689165
fix(l10n): Update Spanish translations
...
Currently translated at 100.0% (647 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/es/
2023-12-01 17:00:58 +01:00
Jener Gomes
ef6db89665
fix(l10n): Update English translations
...
Currently translated at 100.0% (647 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/en/
2023-12-01 17:00:58 +01:00
Jener Gomes
a097b09af6
fix(l10n): Update Portuguese (Brazil) translations
...
Currently translated at 99.8% (646 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/pt_BR/
2023-12-01 17:00:58 +01:00
sanao
bfdd8c943f
fix(l10n): Update Japanese translations
...
Currently translated at 100.0% (647 of 647 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/ja/
2023-12-01 17:00:58 +01:00
Nik Clayton
3827c09165
chore: Prepare release 2.0.0 (versionCode 8) ( #277 )
2023-11-23 12:53:58 +01:00
sanao
06f2fa27e2
feat: Display compose button when viewing favorites list ( #276 )
...
Display the "compose" FAB when viewing the favourite list.
Fixes #229
2023-11-23 11:32:08 +01:00
Nik Clayton
4992aa9c52
feat: Increase the amount of information in link previews ( #275 )
...
Show up to two lines of the link's title and three lines of the link's
description in link preview cards. This provides additional useful
context to the user, especially when many links bury the important
information at the end of the title.
2023-11-21 20:06:29 +01:00
Nik Clayton
123c251fc9
feat: Warn the user about an Android animation bug ( #274 )
...
Upgrading to this version of Pachli may trigger an Android bug where
cached animation specifications are not cleared, resulting in incorrect
animations (e.g., when navigating between activities).
This is an Android bug triggered by the Android Material library,
https://github.com/material-components/material-components-android/issues/3644 .
Show the user a dialog (once) when launching after an upgrade, so they
know to restart their device if necessary.
2023-11-21 16:05:42 +01:00
Nik Clayton
806991f8a8
fix: Prevent a ClassCastException when handling timeline errors ( #273 )
2023-11-21 13:48:41 +01:00
Nik Clayton
a6a68f1384
fix: Use transparent system bar on all Android versions ( #272 )
...
Previous code use transparent system bars on v29, resulting in the wrong
colours in preferences and other activities on some devices.
Fixes #267
2023-11-21 00:02:52 +01:00
vinz
e72431d15c
fix(l10n): Update German translations
...
Currently translated at 99.6% (643 of 645 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/de/
2023-11-20 21:41:23 +01:00
renovate[bot]
8043f9fe1c
fix(deps): update material.drawer to v9 (major) ( #127 )
...
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.mikepenz:materialdrawer-iconics](https://togithub.com/mikepenz/MaterialDrawer )
| `8.4.5` -> `9.0.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:materialdrawer-iconics/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:materialdrawer-iconics/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:materialdrawer-iconics/8.4.5/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:materialdrawer-iconics/8.4.5/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
|
[com.mikepenz:materialdrawer](https://togithub.com/mikepenz/MaterialDrawer )
| `8.4.5` -> `9.0.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:materialdrawer/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:materialdrawer/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:materialdrawer/8.4.5/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:materialdrawer/8.4.5/9.0.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>mikepenz/MaterialDrawer
(com.mikepenz:materialdrawer-iconics)</summary>
###
[`v9.0.2`](https://togithub.com/mikepenz/MaterialDrawer/releases/tag/v9.0.2 )
##### 🚀 Features
- Update to Gradle 7.5.1
- PR:
[#​2788](https://togithub.com/mikepenz/MaterialDrawer/issues/2788 )
- Bump git from 1.11.0 to 1.13.0
- PR:
[#​2792](https://togithub.com/mikepenz/MaterialDrawer/issues/2792 )
- Upgrade all dependencies to the latest version
- PR:
[#​2798](https://togithub.com/mikepenz/MaterialDrawer/issues/2798 )
##### 🐛 Fixes
- fix getColorStateList for API22 and below
- PR:
[#​2797](https://togithub.com/mikepenz/MaterialDrawer/issues/2797 )
- Thanks [@​bmx666](https://togithub.com/bmx666 )
##### 💬 Other
- Dependency Submission API
- PR:
[#​2782](https://togithub.com/mikepenz/MaterialDrawer/issues/2782 )
- Update CI pipeline for dependency submission API
- PR:
[#​2783](https://togithub.com/mikepenz/MaterialDrawer/issues/2783 )
- Run dependency submission action on dev branch
- PR:
[#​2784](https://togithub.com/mikepenz/MaterialDrawer/issues/2784 )
- Update Dependency submission for all modules
- PR:
[#​2787](https://togithub.com/mikepenz/MaterialDrawer/issues/2787 )
###
[`v9.0.1`](https://togithub.com/mikepenz/MaterialDrawer/releases/tag/v9.0.1 )
##### 🚀 Features
- Upgrade dependencies 2022.06.24
- PR:
[#​2780](https://togithub.com/mikepenz/MaterialDrawer/issues/2780 )
##### 🐛 Fixes
- Enhance selected color selection MiniDrawerItem
- PR:
[#​2779](https://togithub.com/mikepenz/MaterialDrawer/issues/2779 )
- Thanks [@​hamedgramzi](https://togithub.com/hamedgramzi )
###
[`v9.0.0`](https://togithub.com/mikepenz/MaterialDrawer/releases/tag/v9.0.0 )
##### 🚀 Features
- Material 3 theme
- PR:
[#​2756](https://togithub.com/mikepenz/MaterialDrawer/issues/2756 )
- PR:
[#​2757](https://togithub.com/mikepenz/MaterialDrawer/issues/2757 )
- Upgrade environment | Kotlin 1.6 | Material 1.5.0-beta01
- PR:
[#​2758](https://togithub.com/mikepenz/MaterialDrawer/issues/2758 )
- Kotlin 1.6.10 | Material Components 1.5.0
- PR:
[#​2762](https://togithub.com/mikepenz/MaterialDrawer/issues/2762 )
- Upgrade to Navigation 2.4.x
- PR:
[#​2770](https://togithub.com/mikepenz/MaterialDrawer/issues/2770 )
- Upgrade dependencies | Kotlin 1.6.20
- PR:
[#​2774](https://togithub.com/mikepenz/MaterialDrawer/issues/2774 )
- Add successListener to setupWithNavController()
- PR:
[#​2773](https://togithub.com/mikepenz/MaterialDrawer/issues/2773 )
- Thanks [@​shmueldabomb441](https://togithub.com/shmueldabomb441 )
##### 🐛 Fixes
- Do not set `selectOnLongClick` on `multiSelect=false`
- PR:
[#​2771](https://togithub.com/mikepenz/MaterialDrawer/issues/2771 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDcuMiIsInVwZGF0ZWRJblZlciI6IjM3LjU5LjgiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Nik Clayton <nik@ngo.org.uk>
2023-11-20 20:37:56 +01:00
sanao
adb9fcf468
feat: Display compose button when viewing hashtags ( #254 )
...
Display the "compose" FAB when viewing a hashtag list. Tapping the
button will open `ComposeActivity` prepopulated with the hashtag at the
end of the post with the cursor at the start.
Fixes #228
2023-11-20 19:19:51 +01:00
vinz
1f21bd45d4
fix(l10n): Update German translations
...
Currently translated at 98.9% (638 of 645 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/de/
2023-11-19 16:28:52 +01:00
renovate[bot]
370a29e2c5
chore(deps): update aboutlibraries to v10.9.2 ( #108 )
...
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| com.mikepenz.aboutlibraries.plugin | `10.8.3` -> `10.9.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz.aboutlibraries.plugin/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz.aboutlibraries.plugin/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz.aboutlibraries.plugin/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz.aboutlibraries.plugin/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
|
[com.mikepenz:aboutlibraries](https://togithub.com/mikepenz/AboutLibraries )
| `10.8.3` -> `10.9.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:aboutlibraries/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:aboutlibraries/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:aboutlibraries/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:aboutlibraries/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
|
[com.mikepenz:aboutlibraries-core](https://togithub.com/mikepenz/AboutLibraries )
| `10.8.3` -> `10.9.2` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/com.mikepenz:aboutlibraries-core/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.mikepenz:aboutlibraries-core/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.mikepenz:aboutlibraries-core/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.mikepenz:aboutlibraries-core/10.8.3/10.9.2?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>mikepenz/AboutLibraries (com.mikepenz:aboutlibraries)</summary>
###
[`v10.9.2`](https://togithub.com/mikepenz/AboutLibraries/releases/tag/v10.9.2 )
#### 🚀 Features
- Compose 1.5.4 (mp 1.5.10) | wasm target for `core` module | Kotlin
1.9.20
- PR:
[#​932](https://togithub.com/mikepenz/AboutLibraries/issues/932 )
###
[`v10.9.2-wasm1`](https://togithub.com/mikepenz/AboutLibraries/releases/tag/v10.9.2-wasm1 )
#### 🚀 Features
- Experimental build with a wasm target for the compose module
###
[`v10.9.1`](https://togithub.com/mikepenz/AboutLibraries/releases/tag/v10.9.1 )
##### 🚀 Features
- Allow styling of dialog's confirm button color
- PR:
[#​927](https://togithub.com/mikepenz/AboutLibraries/issues/927 )
- Thanks [@​svenjacobs](https://togithub.com/svenjacobs )
##### 💬 Other
- Introduce new debug logs in plugin
- PR:
[#​928](https://togithub.com/mikepenz/AboutLibraries/issues/928 )
###
[`v10.9.0`](https://togithub.com/mikepenz/AboutLibraries/releases/tag/v10.9.0 )
##### 🚀 Features
- Dependency Upgrades | Refactor Compose module
- PR:
[#​913](https://togithub.com/mikepenz/AboutLibraries/issues/913 )
- Upgrade multiplatform setup | Compose 1.5.0
- PR:
[#​915](https://togithub.com/mikepenz/AboutLibraries/issues/915 )
- Always display header of Libraries composable
- PR:
[#​920](https://togithub.com/mikepenz/AboutLibraries/issues/920 )
- Thanks [@​Paschmid](https://togithub.com/Paschmid )
- Dependency Upgrades | Compose 1.5.1 | Kotlin 1.9.10
- PR:
[#​924](https://togithub.com/mikepenz/AboutLibraries/issues/924 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDcuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQ2LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-17 14:50:46 +01:00
renovate[bot]
69a46c8bc6
fix(deps): update dependency androidx.activity:activity-ktx to v1.8.1 ( #171 )
...
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg )](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[androidx.activity:activity-ktx](https://developer.android.com/jetpack/androidx/releases/activity#1.8.1 )
([source](https://cs.android.com/androidx/platform/frameworks/support ))
| `1.7.2` -> `1.8.1` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/androidx.activity:activity-ktx/1.8.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/androidx.activity:activity-ktx/1.8.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/androidx.activity:activity-ktx/1.7.2/1.8.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/androidx.activity:activity-ktx/1.7.2/1.8.1?slim=true )](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/pachli/pachli-android ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuNDYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-17 14:37:30 +01:00
sanao
e97ce6f303
fix(l10n): Update Japanese translations
...
Currently translated at 100.0% (645 of 645 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/ja/
2023-11-17 14:09:04 +01:00
sanao
432e262e32
fix(l10n): Update Japanese translations
...
Currently translated at 100.0% (645 of 645 strings)
Translation: Pachli/UI strings
Translate-URL: https://hosted.weblate.org/projects/pachli/ui-strings/ja/
2023-11-17 14:09:04 +01:00
Nik Clayton
46d81b3c68
fix: Ensure update-related data classes are retained ( #269 )
...
Prevents a crash if Proguard optimises them away in release builds.
2023-11-17 12:27:28 +01:00
Nik Clayton
4a6981fc07
fix(deps): update logging dependencies
2023-11-17 11:09:44 +01:00