Skip to content

Commit 124484b

Browse files
authored
Dependency Updates 20250321
1 parent e4bd577 commit 124484b

File tree

71 files changed

+385
-334
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+385
-334
lines changed

.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ jobs:
5656
git remote set-url origin git@github.com:$GITHUB_REPOSITORY
5757
shell: bash
5858

59-
- uses: webfactory/ssh-agent@v0.9.0
59+
- uses: webfactory/ssh-agent@v0.9.1
6060
with:
6161
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
6262

AnkiDroid/src/main/java/com/ichi2/anki/AbstractFlashcardViewer.kt

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
package com.ichi2.anki
2323

2424
import android.annotation.SuppressLint
25-
import android.annotation.TargetApi
2625
import android.content.ActivityNotFoundException
2726
import android.content.ClipboardManager
2827
import android.content.Context
@@ -70,11 +69,14 @@ import androidx.activity.result.ActivityResultCallback
7069
import androidx.activity.result.contract.ActivityResultContracts
7170
import androidx.annotation.CheckResult
7271
import androidx.annotation.IdRes
72+
import androidx.annotation.RequiresApi
7373
import androidx.annotation.VisibleForTesting
7474
import androidx.appcompat.app.AlertDialog
75+
import androidx.core.net.toUri
7576
import androidx.core.view.WindowInsetsCompat
7677
import androidx.core.view.WindowInsetsControllerCompat
7778
import androidx.core.view.children
79+
import androidx.core.view.isVisible
7880
import androidx.lifecycle.Lifecycle.State.RESUMED
7981
import anki.collection.OpChanges
8082
import com.drakeet.drawer.FullDraggableContainer
@@ -1301,7 +1303,7 @@ abstract class AbstractFlashcardViewer :
13011303
}
13021304

13031305
override fun automaticShowAnswer() {
1304-
if (flipCardLayout!!.isEnabled && flipCardLayout!!.visibility == View.VISIBLE) {
1306+
if (flipCardLayout!!.isEnabled && flipCardLayout!!.isVisible) {
13051307
flipCardLayout!!.performClick()
13061308
}
13071309
}
@@ -2521,7 +2523,7 @@ abstract class AbstractFlashcardViewer :
25212523
intent =
25222524
Intent(
25232525
Intent.ACTION_VIEW,
2524-
Uri.parse("market://details?id=$packageName"),
2526+
"market://details?id=$packageName".toUri(),
25252527
)
25262528
if (packageManager.resolveActivityCompat(
25272529
intent,
@@ -2541,7 +2543,7 @@ abstract class AbstractFlashcardViewer :
25412543
}
25422544
if (intent == null) {
25432545
Timber.d("Opening external link \"%s\" with an Intent", url)
2544-
intent = Intent(Intent.ACTION_VIEW, Uri.parse(url))
2546+
intent = Intent(Intent.ACTION_VIEW, url.toUri())
25452547
} else {
25462548
Timber.d("Opening resolved external link \"%s\" with an Intent: %s", url, intent)
25472549
}
@@ -2592,7 +2594,7 @@ abstract class AbstractFlashcardViewer :
25922594
}
25932595
}
25942596

2595-
@TargetApi(Build.VERSION_CODES.O)
2597+
@RequiresApi(Build.VERSION_CODES.O)
25962598
override fun onRenderProcessGone(
25972599
view: WebView,
25982600
detail: RenderProcessGoneDetail,
@@ -2627,7 +2629,7 @@ abstract class AbstractFlashcardViewer :
26272629

26282630
internal fun displayCouldNotFindMediaSnackbar(filename: String?) {
26292631
showSnackbar(getString(R.string.card_viewer_could_not_find_image, filename)) {
2630-
setAction(R.string.help) { openUrl(Uri.parse(getString(R.string.link_faq_missing_media))) }
2632+
setAction(R.string.help) { openUrl(getString(R.string.link_faq_missing_media).toUri()) }
26312633
}
26322634
}
26332635

AnkiDroid/src/main/java/com/ichi2/anki/AnkiActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ import androidx.browser.customtabs.CustomTabsIntent.COLOR_SCHEME_SYSTEM
4141
import androidx.core.app.NotificationCompat
4242
import androidx.core.app.PendingIntentCompat
4343
import androidx.core.content.ContextCompat
44+
import androidx.core.net.toUri
4445
import androidx.fragment.app.Fragment
4546
import androidx.lifecycle.Lifecycle
4647
import androidx.lifecycle.lifecycleScope
@@ -458,7 +459,7 @@ open class AnkiActivity :
458459
}
459460

460461
fun openUrl(urlString: String) {
461-
openUrl(Uri.parse(urlString))
462+
openUrl(urlString.toUri())
462463
}
463464

464465
fun openUrl(

AnkiDroid/src/main/java/com/ichi2/anki/AnkiDroidApp.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ import android.content.Context
2323
import android.content.Intent
2424
import android.content.SharedPreferences
2525
import android.content.res.Resources
26-
import android.net.Uri
2726
import android.os.Build
2827
import android.os.Bundle
2928
import android.os.Environment
3029
import android.system.Os
3130
import android.webkit.CookieManager
3231
import androidx.annotation.VisibleForTesting
3332
import androidx.core.content.edit
33+
import androidx.core.net.toUri
3434
import androidx.fragment.app.FragmentActivity
3535
import androidx.lifecycle.MutableLiveData
3636
import androidx.work.Configuration
@@ -434,7 +434,7 @@ open class AnkiDroidApp :
434434
fun getMarketIntent(context: Context): Intent {
435435
val uri =
436436
context.getString(if (CompatHelper.isKindle) R.string.link_market_kindle else R.string.link_market)
437-
val parsed = Uri.parse(uri)
437+
val parsed = uri.toUri()
438438
return Intent(Intent.ACTION_VIEW, parsed)
439439
} // TODO actually this can be done by translating "link_help" string for each language when the App is
440440

AnkiDroid/src/main/java/com/ichi2/anki/AnkiDroidJsAPI.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ package com.ichi2.anki
2121

2222
import android.content.Context
2323
import android.content.Intent
24-
import android.net.Uri
24+
import androidx.core.net.toUri
2525
import androidx.lifecycle.lifecycleScope
2626
import com.github.zafarkhaja.semver.Version
2727
import com.google.android.material.snackbar.Snackbar
@@ -148,7 +148,7 @@ open class AnkiDroidJsAPI(
148148
activity.showSnackbar(snackbarMsg, Snackbar.LENGTH_INDEFINITE) {
149149
setMaxLines(3)
150150
setAction(R.string.reviewer_invalid_api_version_visit_documentation) {
151-
activity.openUrl(Uri.parse("https://github.com/ankidroid/Anki-Android/wiki"))
151+
activity.openUrl("https://github.com/ankidroid/Anki-Android/wiki".toUri())
152152
}
153153
}
154154
}

AnkiDroid/src/main/java/com/ichi2/anki/CardTemplateEditor.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ import androidx.core.view.MenuHost
4444
import androidx.core.view.MenuProvider
4545
import androidx.core.view.ViewCompat
4646
import androidx.core.view.WindowInsetsCompat
47+
import androidx.core.view.size
4748
import androidx.fragment.app.Fragment
4849
import androidx.fragment.app.FragmentActivity
4950
import androidx.fragment.app.FragmentContainerView
@@ -616,14 +617,14 @@ open class CardTemplateEditor :
616617
if (menu.findItem(insertFieldId) != null) {
617618
return false
618619
}
619-
val initialSize = menu.size()
620+
val initialSize = menu.size
620621

621622
if (currentEditorViewId != R.id.styling_edit) {
622623
// 10644: Do not pass in a R.string as the final parameter as MIUI on Android 12 crashes.
623624
menu.add(Menu.FIRST, insertFieldId, 0, getString(R.string.card_template_editor_insert_field))
624625
}
625626

626-
return initialSize != menu.size()
627+
return initialSize != menu.size
627628
}
628629

629630
override fun onActionItemClicked(

AnkiDroid/src/main/java/com/ichi2/anki/CustomActionModeCallback.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import android.view.ActionMode
2121
import android.view.Menu
2222
import android.view.MenuItem
2323
import android.view.View
24+
import androidx.core.view.size
2425

2526
/**
2627
* Custom ActionMode.Callback implementation for adding and handling cloze deletion action
@@ -57,7 +58,7 @@ class CustomActionModeCallback(
5758
item.isVisible = false
5859
}
5960

60-
val initialSize = menu.size()
61+
val initialSize = menu.size
6162
if (isClozeType) {
6263
menu.add(
6364
Menu.NONE,
@@ -66,7 +67,7 @@ class CustomActionModeCallback(
6667
clozeMenuTitle,
6768
)
6869
}
69-
return initialSize != menu.size()
70+
return initialSize != menu.size
7071
}
7172

7273
override fun onActionItemClicked(

AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@
2525

2626
package com.ichi2.anki
2727

28+
import android.annotation.SuppressLint
2829
import android.app.Activity
2930
import android.content.Context
3031
import android.content.Intent
3132
import android.content.SharedPreferences
3233
import android.database.SQLException
3334
import android.graphics.PixelFormat
3435
import android.graphics.drawable.Drawable
35-
import android.net.Uri
3636
import android.os.Build
3737
import android.os.Bundle
3838
import android.os.Message
@@ -66,6 +66,7 @@ import androidx.core.content.edit
6666
import androidx.core.content.pm.ShortcutInfoCompat
6767
import androidx.core.content.pm.ShortcutManagerCompat
6868
import androidx.core.graphics.drawable.IconCompat
69+
import androidx.core.net.toUri
6970
import androidx.core.os.bundleOf
7071
import androidx.core.util.component1
7172
import androidx.core.util.component2
@@ -524,7 +525,7 @@ open class DeckPicker :
524525
// check, if tablet layout
525526
studyoptionsFrame = findViewById(R.id.studyoptions_fragment)
526527
// set protected variable from NavigationDrawerActivity
527-
fragmented = studyoptionsFrame != null && studyoptionsFrame!!.visibility == View.VISIBLE
528+
fragmented = studyoptionsFrame != null && studyoptionsFrame!!.isVisible
528529

529530
// Open StudyOptionsFragment if in fragmented mode
530531
if (fragmented && !startupError) {
@@ -1772,6 +1773,7 @@ open class DeckPicker :
17721773
showDialogFragment(DeckPickerAnalyticsOptInDialog.newInstance())
17731774
}
17741775

1776+
@SuppressLint("UseKtx") // keep SharedPreferences.edit() instead of edit {} fot tests
17751777
fun getPreviousVersion(
17761778
preferences: SharedPreferences,
17771779
current: Long,
@@ -2123,7 +2125,7 @@ open class DeckPicker :
21232125
negativeButton(R.string.dialog_cancel)
21242126
if (AdaptionUtil.hasWebBrowser(this@DeckPicker)) {
21252127
neutralButton(text = TR.schedulingUpdateMoreInfoButton()) {
2126-
this@DeckPicker.openUrl(Uri.parse("https://faqs.ankiweb.net/the-anki-2.1-scheduler.html#updating"))
2128+
this@DeckPicker.openUrl("https://faqs.ankiweb.net/the-anki-2.1-scheduler.html#updating".toUri())
21272129
}
21282130
}
21292131
}
@@ -2301,8 +2303,8 @@ open class DeckPicker :
23012303
8f,
23022304
resources.displayMetrics,
23032305
)
2304-
val decksListShown = deckPickerContent.visibility == View.VISIBLE
2305-
val placeholderShown = noDecksPlaceholder.visibility == View.VISIBLE
2306+
val decksListShown = deckPickerContent.isVisible
2307+
val placeholderShown = noDecksPlaceholder.isVisible
23062308
if (isEmpty) {
23072309
if (decksListShown) {
23082310
fadeOut(deckPickerContent, shortAnimDuration, translation)

AnkiDroid/src/main/java/com/ichi2/anki/DrawingActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import android.view.View
2525
import android.widget.LinearLayout
2626
import androidx.core.content.ContextCompat
2727
import androidx.core.view.MenuItemCompat
28+
import androidx.core.view.isGone
2829
import com.ichi2.libanki.utils.TimeManager
2930
import com.ichi2.themes.Themes
3031
import com.ichi2.utils.iconAlpha
@@ -83,7 +84,7 @@ class DrawingActivity : AnkiActivity() {
8384
}
8485
R.id.action_whiteboard_edit -> {
8586
Timber.i("Drawing:: Pen Color button pressed")
86-
if (colorPalette.visibility == View.GONE) {
87+
if (colorPalette.isGone) {
8788
colorPalette.visibility = View.VISIBLE
8889
} else {
8990
colorPalette.visibility = View.GONE

AnkiDroid/src/main/java/com/ichi2/anki/Info.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@
1919
package com.ichi2.anki
2020

2121
import android.annotation.SuppressLint
22-
import android.net.Uri
2322
import android.os.Bundle
2423
import android.view.View
2524
import android.webkit.WebChromeClient
2625
import android.webkit.WebResourceRequest
2726
import android.webkit.WebView
2827
import android.webkit.WebViewClient
2928
import androidx.activity.OnBackPressedCallback
29+
import androidx.core.net.toUri
3030
import com.google.android.material.button.MaterialButton
3131
import com.ichi2.anki.preferences.sharedPrefs
3232
import com.ichi2.anki.snackbar.BaseSnackbarBuilderProvider
@@ -72,7 +72,7 @@ class Info :
7272
enableToolbar(mainView)
7373
findViewById<MaterialButton>(
7474
R.id.info_donate,
75-
).setOnClickListener { openUrl(Uri.parse(getString(R.string.link_opencollective_donate))) }
75+
).setOnClickListener { openUrl(getString(R.string.link_opencollective_donate).toUri()) }
7676
title = "$appName v$pkgVersionName"
7777
webView = findViewById(R.id.info)
7878
webView.webChromeClient =

0 commit comments

Comments
 (0)