0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-19 11:32:15 +02:00
Commit Graph

19583 Commits

Author SHA1 Message Date
David Allison
5bf4326bb0 tests: ensure Widget Config initialized properly
The following classes required a non-empty collection:
* `CardAnalysisWidgetConfig`
* `DeckPickerWidgetConfig`

Previously this was not handled in tests, and instead a
second call to `initializeUIComponents` was made

To fix this:

* define `initTask` and check for completion in tests

Prep for fixing flaky tests due to async collection access:
Issue 17010
2024-09-18 17:44:48 +00:00
David Allison
3fd1c69ea8 tests: fix flake in updateViewWithSavedPreferences
We did not wait for `updateViewWithSavedPreferences` correctly in
`DeckPickerWidgetConfigTest.testLoadSavedPreferences`

Because we updated this in `DeckPickerWidgetConfig`,
also update the method in `CardAnalysisWidgetConfig`

Issue 17010
2024-09-18 17:44:48 +00:00
David Allison
c123be3631 improvement: log on close when collection is empty 2024-09-18 17:44:48 +00:00
David Allison
63d527e5c6 refactor: remove unnecessary 'lifecycleScope.launch' 2024-09-18 17:44:48 +00:00
David Allison
43262eafef tests: standardize activity cleanup
`startActivityNormallyOpenCollectionWithIntent` calls
`saveControllerForCleanup`, previously:

**DeckPickerWidgetConfigTest**
Did not perform cleanup

**CardAnalysisWidgetConfigTest**
Manually performed cleanup

This may fix Issue 17010: `testLoadSavedPreferences` was flaky
2024-09-18 17:44:48 +00:00
dependabot[bot]
a43c66cc4e build(deps): bump gradle-update/update-gradle-wrapper-action from 1 to 2
Bumps [gradle-update/update-gradle-wrapper-action](https://github.com/gradle-update/update-gradle-wrapper-action) from 1 to 2.
- [Release notes](https://github.com/gradle-update/update-gradle-wrapper-action/releases)
- [Changelog](https://github.com/gradle-update/update-gradle-wrapper-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gradle-update/update-gradle-wrapper-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: gradle-update/update-gradle-wrapper-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-17 17:34:31 +00:00
Ashish Yadav
c1fbbad516 feat: Allow deck selection in statistics screen
A Spinner was introduced in the statistics screen top bar which can be
used by the user to change the current selected deck and update the
WebView with the statistics for the new selected deck.

Note: the deck selection mechanism is decoupled from the general
DeckSpinnerSelection/DeckSelectionDialog system so changing the deck
in the statistics screen doesn't modify the selected deck for other parts
of the app.
2024-09-16 16:43:09 +00:00
Mike Hardy
2dab92e521 Bumped version to 2.19beta2 2024-09-16 16:23:44 +00:00
AnkiDroid Translations
c67a0650da Updated strings from Crowdin 2024-09-16 15:37:44 +00:00
leobugeja
c2b2ef3e5e fix: Single review activity via shortcuts 2024-09-16 14:31:12 +00:00
Moreno
2ac565a4e3 set ic_warning color to colorError
it was purple in dark mode

tested by showing the delete note dialog in the reviewer
2024-09-16 14:30:18 +00:00
Moreno
6a61e21fa4 set ic_warning color to onSurface
it was purple in dark mode

tested by showing the delete note dialog in the reviewer
2024-09-16 14:30:18 +00:00
Moreno
f77ae346f3 remove useless checkbox style
not necessary
2024-09-16 14:30:18 +00:00
Moreno
793ac94891 Improve alert dialog style 2024-09-16 14:30:18 +00:00
Ashish Yadav
e7b312eb5e fix: nullable getCurrentMultimediaEditableNote 2024-09-16 14:24:00 +00:00
Ashish Yadav
7cc16f7940 fix: NoteEditor flaky test
* chore: segregate the show bottom sheet logic
2024-09-16 14:24:00 +00:00
Arthur Milchior
2bbcf6b004 Note editor: sticky field don't stop the back button. 2024-09-16 14:19:34 +00:00
Arthur Milchior
1fe3e46150 NF: toggleStickyButton is non null 2024-09-16 14:19:34 +00:00
Arthur Milchior
1b09ab915a NF: editFields's content is non null
It was never set to a nullable value
2024-09-16 14:19:34 +00:00
Robozinho
d7d9a7c697 remove all cards count subtitle 2024-09-16 13:42:59 +00:00
AnkiDroid Translations
f65934b1b1 Updated strings from Crowdin 2024-09-16 13:17:39 +00:00
Mike Hardy
49a7651791
Dependency updates 20240916 (#17071)
* build(deps): `yarn upgrade --latest` in tools/localization

* chore(deps): bump org.jetbrains.kotlinx:kotlinx-coroutines-test

Bumps [org.jetbrains.kotlinx:kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.8.1...1.9.0)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-test
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

* Update Gradle Wrapper from 8.10 to 8.10.1.

Signed-off-by: gradle-update-robot <gradle-update-robot@regolo.cc>

---------

Signed-off-by: gradle-update-robot <gradle-update-robot@regolo.cc>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: gradle-update-robot <gradle-update-robot@regolo.cc>
2024-09-16 07:59:28 -05:00
AnkiDroid Translations
83ed107806 Updated strings from Crowdin 2024-09-15 08:55:24 +00:00
Mike Hardy
a8abb47631
docs(opencollective): note that the payment process has been updated (#17032)
people should re-read it if they have not already, update comment to say same

---------

Co-authored-by: lukstbit <52494258+lukstbit@users.noreply.github.com>
2024-09-11 11:03:34 -05:00
AnkiDroid Translations
63cfcd2f12 Updated strings from Crowdin 2024-09-10 07:05:24 +00:00
Rohanraj123
1a1e138cdc feat: enable troubleshooting dialog box for user guidance
Added a dialog box to provide users with troubleshooting guidance during critical operations.
This dialog appears when the user encounters common errors and offers solutions or next steps.

Key changes include:
- Integrated the new troubleshooting dialog into the main user interface.
- Implemented logic to trigger the dialog based on specific error codes.
- Updated the UI to support the dialog's appearance and behavior.
- Refined error-handling flow to ensure that appropriate guidance is displayed.

This feature aims to improve user experience by helping users resolve issues without leaving the app.
2024-09-10 06:30:56 +00:00
Rohanraj123
6a3dd81aa7 refactor(tts-voices): add context to errors
When handling `MissingVoiceError`, knowing the voice
we searched for enables better error resolution

Adding context required moving from an enum to
a class, which caused code churn
2024-09-10 06:30:56 +00:00
AnkiDroid Translations
e846b350c7 Updated strings from Crowdin 2024-09-10 06:09:35 +00:00
MorenoTropical
b504e389f8 fix filtered decks not appearing in browser
7a65160e0e
2024-09-09 06:26:53 -03:00
MorenoTropical
9498a3f578 fix export menu item
cause: aabd99dc4e
2024-09-09 08:05:27 +00:00
David Allison
164faf65bb docs(bug-report): improve link to issues
A user only searched open issues
We also want them to check the closed issues

* https://redirect.github.com/ankidroid/Anki-Android/issues/17040
2024-09-09 07:57:02 +00:00
AnkiDroid Translations
6bd0114daf Updated strings from Crowdin 2024-09-08 21:55:49 +00:00
Anoop
6d3d0ca728 Refactor DeckUtils and CardAnalysisWidget for Improved Deck Handling 2024-09-08 18:47:20 +00:00
Anoop
4499c84afb Added Cancel button in configuration screen and empty collection handling in CardAnalysisWidget. 2024-09-08 18:47:20 +00:00
Anoop
b9be27f168 Refactor isCollectionEmpty method to DeckUtils for reuse in multiple classes 2024-09-08 18:47:20 +00:00
Anoop
9d3cb64a5b Refactor CardAnalysisWidget to handle single deck selection and update logic; adjust DeckNameAndStats to support changes 2024-09-08 18:47:20 +00:00
Anoop
fc0f4fe03a Refactor widget configuration and layout for improved deck selection and empty state handling
- Added new string resource `empty_widget` to denote when a widget is empty and requires reconfiguration.
- Enhanced `CardAnalysisWidgetConfig` to automatically display the deck selection dialog upon initialization.
- Refactored `CardAnalysisWidget` to handle empty state visibility, allowing users to reconfigure the widget by clicking the empty state message.
2024-09-08 18:47:20 +00:00
Anoop
c829c3dfd7 Implementation of Card Analysis Widget to display deck statistics for a particular deck.
This commit introduces the Card Analysis Extra Widget, which displays a deck with the number of cards that are new, in learning, due for review and deck name.
Features:
- Displays deck names and statistics (new, learning, and review counts).
- Updates every minute using a recurring alarm.
2024-09-08 18:47:20 +00:00
AnkiDroid Translations
a77d5bbebf Updated strings from Crowdin 2024-09-08 18:29:53 +00:00
Mike Hardy
5280253dbc
Dependency updates 20240830 (#17004)
* chore(deps): bump axios from 1.7.3 to 1.7.4 in /tools/localization

Bumps [axios](https://github.com/axios/axios) from 1.7.3 to 1.7.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.3...v1.7.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps): remote obsolete gradle home cache cleanup property

- this was toggled on for 3 workflows, it is on by default not: removing
- this was *not* toggled on for unit tests because we have observed problems before,
  but now it is the default for everyone and I am assertively/hopefully assuming
  they have fixed the problems we have seen (or will do so shortly) so letting it
  become enabled with its new default setting

Note that if workflow runs start failing, this was the comment leading to upstream
information:

gradle-home-cache-cleanup is temporarily disabled to investigate cache pollution issues
Requested in: https://github.com/gradle/actions/issues/167#issuecomment-2052352341
gradle-home-cache-cleanup: true

* chore(deps-dev): bump the non-breaking group across 1 directory with 3 updates

Bumps the non-breaking group with 3 updates in the /tools/localization directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser).


Updates `@types/node` from 22.3.0 to 22.4.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.1.0 to 8.2.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.2.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.1.0 to 8.2.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.2.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump org.apache.commons:commons-compress

Bumps org.apache.commons:commons-compress from 1.27.0 to 1.27.1.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps-dev): bump @types/node

Bumps the non-breaking group in /tools/localization with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).


Updates `@types/node` from 22.4.1 to 22.4.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump kotlin from 2.0.10 to 2.0.20

Bumps `kotlin` from 2.0.10 to 2.0.20.

Updates `org.jetbrains.kotlin:kotlin-stdlib` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin:kotlin-reflect` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin:kotlin-test` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin:kotlin-test-junit` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin:kotlin-test-junit5` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin.android` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin.plugin.parcelize` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin.jvm` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

Updates `org.jetbrains.kotlin.plugin.serialization` from 2.0.10 to 2.0.20
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.20/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.10...v2.0.20)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin:kotlin-stdlib
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-reflect
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-test
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-test-junit
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-test-junit5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin.android
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin.plugin.parcelize
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin.jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin.plugin.serialization
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps-dev): bump @types/node

Bumps the non-breaking group in /tools/localization with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).


Updates `@types/node` from 22.4.2 to 22.5.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump androidxMedia3 from 1.4.0 to 1.4.1 (#16969)

Bumps `androidxMedia3` from 1.4.0 to 1.4.1.

Updates `androidx.media3:media3-ui` from 1.4.0 to 1.4.1
- [Release notes](https://github.com/androidx/media/releases)
- [Changelog](https://github.com/androidx/media/blob/release/RELEASENOTES.md)
- [Commits](https://github.com/androidx/media/commits)

Updates `androidx.media3:media3-exoplayer-dash` from 1.4.0 to 1.4.1
- [Release notes](https://github.com/androidx/media/releases)
- [Changelog](https://github.com/androidx/media/blob/release/RELEASENOTES.md)
- [Commits](https://github.com/androidx/media/commits)

Updates `androidx.media3:media3-exoplayer` from 1.4.0 to 1.4.1
- [Release notes](https://github.com/androidx/media/releases)
- [Changelog](https://github.com/androidx/media/blob/release/RELEASENOTES.md)
- [Commits](https://github.com/androidx/media/commits)

---
updated-dependencies:
- dependency-name: androidx.media3:media3-ui
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.media3:media3-exoplayer-dash
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.media3:media3-exoplayer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump com.android.tools:desugar_jdk_libs_nio (#16968)

Bumps [com.android.tools:desugar_jdk_libs_nio](https://github.com/google/desugar_jdk_libs) from 2.0.4 to 2.1.0.
- [Changelog](https://github.com/google/desugar_jdk_libs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/desugar_jdk_libs/commits)

---
updated-dependencies:
- dependency-name: com.android.tools:desugar_jdk_libs_nio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump com.google.protobuf:protobuf-kotlin-lite (#16986)

Bumps com.google.protobuf:protobuf-kotlin-lite from 4.27.3 to 4.27.4.

---
updated-dependencies:
- dependency-name: com.google.protobuf:protobuf-kotlin-lite
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump com.android.tools:desugar_jdk_libs_nio (#16997)

Bumps [com.android.tools:desugar_jdk_libs_nio](https://github.com/google/desugar_jdk_libs) from 2.1.0 to 2.1.1.
- [Changelog](https://github.com/google/desugar_jdk_libs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/desugar_jdk_libs/commits)

---
updated-dependencies:
- dependency-name: com.android.tools:desugar_jdk_libs_nio
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump lint from 31.5.2 to 31.6.0 (#17002)

Bumps `lint` from 31.5.2 to 31.6.0.

Updates `com.android.tools.lint:lint-api` from 31.5.2 to 31.6.0

Updates `com.android.tools.lint:lint` from 31.5.2 to 31.6.0

Updates `com.android.tools.lint:lint-tests` from 31.5.2 to 31.6.0

---
updated-dependencies:
- dependency-name: com.android.tools.lint:lint-api
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: com.android.tools.lint:lint
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: com.android.tools.lint:lint-tests
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump androidGradlePlugin from 8.5.2 to 8.6.0

! This change requires Android Studio Koala Feature Drop

We fix the following error with a `SuppressLint` annotation.
The code converts a valid int to a long (as the caller requests a long)
but this long is not detected as valid

```
AddContentApi.kt:553: Error: Must be one or more of:
PackageManager.GET_META_DATA, PackageManager.GET_SHARED_LIBRARY_FILES, ...,
PackageManager.GET_UNINSTALLED_PACKAGES [WrongConstant]
                              PackageManager.GET_META_DATA.toLong()
                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

Bumps `androidGradlePlugin` from 8.5.2 to 8.6.0.

Updates `com.android.application` from 8.5.2 to 8.6.0

Updates `com.android.library` from 8.5.2 to 8.6.0

---
updated-dependencies:
- dependency-name: com.android.application
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: com.android.library
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump org.jetbrains.kotlinx:kotlinx-serialization-json

Bumps [org.jetbrains.kotlinx:kotlinx-serialization-json](https://github.com/Kotlin/kotlinx.serialization) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/Kotlin/kotlinx.serialization/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.serialization/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Kotlin/kotlinx.serialization/compare/v1.7.1...v1.7.2)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlinx:kotlinx-serialization-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump com.google.protobuf:protobuf-kotlin-lite

Bumps com.google.protobuf:protobuf-kotlin-lite from 4.27.4 to 4.28.0.

---
updated-dependencies:
- dependency-name: com.google.protobuf:protobuf-kotlin-lite
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump com.github.triplet.play from 3.10.1 to 3.11.0

Bumps com.github.triplet.play from 3.10.1 to 3.11.0.

---
updated-dependencies:
- dependency-name: com.github.triplet.play
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump the non-breaking group across 1 directory with 7 updates

Bumps the non-breaking group with 7 updates in the /tools/localization directory:

| Package | From | To |
| --- | --- | --- |
| [axios](https://github.com/axios/axios) | `1.7.4` | `1.7.5` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.9.0` | `9.9.1` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.5.0` | `22.5.1` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.2.0` | `8.3.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.2.0` | `8.3.0` |
| [eslint](https://github.com/eslint/eslint) | `9.9.0` | `9.9.1` |
| [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.2.4` | `29.2.5` |



Updates `axios` from 1.7.4 to 1.7.5
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.4...v1.7.5)

Updates `@eslint/js` from 9.9.0 to 9.9.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.9.1/packages/js)

Updates `@types/node` from 22.5.0 to 22.5.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.2.0 to 8.3.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.3.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.2.0 to 8.3.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.3.0/packages/parser)

Updates `eslint` from 9.9.0 to 9.9.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.9.0...v9.9.1)

Updates `ts-jest` from 29.2.4 to 29.2.5
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kulshekhar/ts-jest/compare/v29.2.4...v29.2.5)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: ts-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump com.android.tools:desugar_jdk_libs_nio (#17018)

Bumps [com.android.tools:desugar_jdk_libs_nio](https://github.com/google/desugar_jdk_libs) from 2.1.1 to 2.1.2.
- [Changelog](https://github.com/google/desugar_jdk_libs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/desugar_jdk_libs/commits)

---
updated-dependencies:
- dependency-name: com.android.tools:desugar_jdk_libs_nio
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump androidxFragmentKtx from 1.8.2 to 1.8.3 (#17023)

Bumps `androidxFragmentKtx` from 1.8.2 to 1.8.3.

Updates `androidx.fragment:fragment-ktx` from 1.8.2 to 1.8.3

Updates `androidx.fragment:fragment-testing` from 1.8.2 to 1.8.3

Updates `androidx.fragment:fragment-testing-manifest` from 1.8.2 to 1.8.3

---
updated-dependencies:
- dependency-name: androidx.fragment:fragment-ktx
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.fragment:fragment-testing
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.fragment:fragment-testing-manifest
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump androidx.activity:activity from 1.9.1 to 1.9.2

Bumps androidx.activity:activity from 1.9.1 to 1.9.2.

---
updated-dependencies:
- dependency-name: androidx.activity:activity
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): bump the non-breaking group across 1 directory with 5 updates

Bumps the non-breaking group with 5 updates in the /tools/localization directory:

| Package | From | To |
| --- | --- | --- |
| [axios](https://github.com/axios/axios) | `1.7.5` | `1.7.7` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.5.1` | `22.5.4` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.3.0` | `8.4.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.3.0` | `8.4.0` |
| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.29.1` | `2.30.0` |



Updates `axios` from 1.7.5 to 1.7.7
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.5...v1.7.7)

Updates `@types/node` from 22.5.1 to 22.5.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.3.0 to 8.4.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.4.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.3.0 to 8.4.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.4.0/packages/parser)

Updates `eslint-plugin-import` from 2.29.1 to 2.30.0
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.29.1...v2.30.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: non-breaking
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 18:38:16 -05:00
AnkiDroid Translations
64e36b55bf Updated strings from Crowdin 2024-09-06 13:10:30 +00:00
David Allison
8947ee26d7 refactor: remove dead code
Remaining code used in AddonData
2024-09-05 20:34:36 +00:00
AnkiDroid Translations
eaa0463fd6 Updated strings from Crowdin 2024-09-03 05:42:48 +00:00
Arthur Milchior
25d7246251 Notify the UI that a sync was done
In this case, I really don't think it's realistic to expect an
OpChange from the backend. The backend already sends informations that
are relevant for the sync process. Given that "sync" does not uses the
processes uses for undoable change (indeed, it should not be
undoable), no OpChange is generated.

It seems reasonable in this place at least to directly notify the
observers.

Given that the observers expect an OpChanges, I create one, and simply
assume everything may be changed. This seems reasonable in case of
sync, and it's sufficiently rare that the cost won't be prohibitive
anyway.

Fixed: #16943
Fixed: #16942
2024-09-03 04:59:41 +00:00
MorenoTropical
fa53c16fc2 add filtered deck option to browser 2024-09-02 17:32:02 +00:00
Robozinho
733cecac82 fix menu in template editor
this was very hard to do because CardTemplateEditor is tightly coupled with CardTemplateFragment, so most changes break something even if not related
2024-09-02 09:40:40 +00:00
Sumit Singh
9c9018b049 Fix: Ensure Media Sync Aborted Message Displays Correctly After Canceling Media Sync 2024-09-02 09:39:01 +00:00
Robozinho
941be0ce2a change donate icon to heart 2024-09-01 17:15:15 +00:00
AnkiDroid Translations
bc30d753a8 Updated strings from Crowdin 2024-09-01 08:54:19 +00:00
lukstbit
e7eee16a39 Fix can't delete search input in CardBrowser after an initial search
The DEL KeyEvent was previously declared to act as a keyboard shortcut
to delete the selected notes. After an initial search which registered
a search query entering DEL attempted to delete the current selected
notes which also resulted in another search(same input) being executed.

The fix registers the DEL keys as a delete notes shortcut ONLY if the
search box of the CardBrowser is not currently available(isIconified
returning true).
2024-08-31 15:48:23 +00:00