From 86f5473709a9c8c3bcade3023399e9766e83b1f5 Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Sun, 20 Sep 2026 17:06:11 +0100 Subject: [PATCH 1/6] fix(reviewer): align fullscreen touches with card content Fixes 21937 Assisted-by: GPT-6 --- .../src/main/java/com/ichi2/anki/Reviewer.kt | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/Reviewer.kt b/AnkiDroid/src/main/java/com/ichi2/anki/Reviewer.kt index f1f6f121a280..bd00120241c1 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/Reviewer.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/Reviewer.kt @@ -62,6 +62,8 @@ import androidx.core.view.WindowInsetsCompat.Type.navigationBars import androidx.core.view.WindowInsetsCompat.Type.systemBars import androidx.core.view.WindowInsetsControllerCompat import androidx.core.view.isGone +import androidx.core.view.updateLayoutParams +import androidx.core.view.updateMargins import androidx.core.view.updatePadding import androidx.lifecycle.lifecycleScope import anki.frontend.SetSchedulingStatesRequest @@ -527,7 +529,20 @@ open class Reviewer : // the card and its overlays reach the bottom of the screen when the answer buttons // are shown above them clearInsets(findViewById(R.id.flashcard), top = contentTop, bottom = cardBottom) - clearInsets(findViewById(R.id.touch_layer), top = contentTop, bottom = cardBottom) + // Touches are forwarded to the WebView in the touch layer's coordinates. + // So the layer insets need to match the WebView + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.touch_layer)) { view, insets -> + val bars = insets.bars() + view.updateLayoutParams { + updateMargins( + left = bars.left, + top = contentTop?.invoke(insets) ?: 0, + right = bars.right, + bottom = cardBottom(insets), + ) + } + insets + } clearInsets(findViewById(R.id.whiteboard), top = contentTop, bottom = cardBottom) clearInsets(colorPalette, bottom = whiteboardPaletteBottom) From 100122a078533c21a5e3c4d4f8fa4c5274987bd2 Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Sun, 20 Sep 2026 16:37:44 +0100 Subject: [PATCH 2/6] fix(decks): report filtered deck creation errors Previously showed as a success Fixes 21936 Assisted-by: GPT-6 --- .../ichi2/anki/dialogs/CreateDeckDialog.kt | 8 ++- .../anki/dialogs/CreateDeckDialogTest.kt | 63 +++++++++++++++++++ 2 files changed, 68 insertions(+), 3 deletions(-) diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/CreateDeckDialog.kt b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/CreateDeckDialog.kt index d4f973269a95..7ba592b17cb0 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/CreateDeckDialog.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/CreateDeckDialog.kt @@ -166,9 +166,10 @@ class CreateDeckDialog( fun createDeck(deckName: String) { if (Decks.isValidDeckName(deckName)) { - createNewDeck(deckName) - // 11668: Display feedback if a deck is created - displayFeedback(context.getString(R.string.deck_created)) + if (createNewDeck(deckName)) { + // 11668: Display feedback if a deck is created + displayFeedback(context.getString(R.string.deck_created)) + } } else { Timber.d("CreateDeckDialog::createDeck - Not creating invalid deck name '%s'", deckName) displayFeedback(context.getString(R.string.invalid_deck_name), Snackbar.LENGTH_LONG) @@ -186,6 +187,7 @@ class CreateDeckDialog( onNewDeckCreated(newDeckId) } catch (filteredAncestor: BackendDeckIsFilteredException) { Timber.w(filteredAncestor) + displayFeedback(filteredAncestor.localizedMessage ?: filteredAncestor.message ?: "", Snackbar.LENGTH_LONG) return false } return true diff --git a/AnkiDroid/src/test/java/com/ichi2/anki/dialogs/CreateDeckDialogTest.kt b/AnkiDroid/src/test/java/com/ichi2/anki/dialogs/CreateDeckDialogTest.kt index 2774f8f4edee..ae6c9861e072 100644 --- a/AnkiDroid/src/test/java/com/ichi2/anki/dialogs/CreateDeckDialogTest.kt +++ b/AnkiDroid/src/test/java/com/ichi2/anki/dialogs/CreateDeckDialogTest.kt @@ -11,6 +11,7 @@ import androidx.appcompat.app.AlertDialog import androidx.core.content.edit import androidx.lifecycle.Lifecycle import androidx.test.core.app.ActivityScenario +import com.ichi2.anki.CollectionManager.TR import com.ichi2.anki.CollectionManager.withCol import com.ichi2.anki.DeckPicker import com.ichi2.anki.IntroductionActivity @@ -102,6 +103,68 @@ class CreateDeckDialogTest : RobolectricTest() { } } + @Test + fun `creating a child of a filtered deck shows an error`() { + addDynamicDeck("Filtered Deck 1") + val deckCount = col.decks.count() + withCreateDeckDialog(DeckDialogType.DECK) { + onNewDeckCreated = { fail("the deck was not created") } + showDialog().apply { + input = "Filtered Deck 1::Child" + positiveButton.performClick() + } + } + Shadows.shadowOf(Looper.getMainLooper()).idle() + + assertThat("no deck was created", col.decks.count(), equalTo(deckCount)) + activityScenario.onActivity { activity -> + assertThat( + activity.latestSnackbarText(), + equalTo(TR.errorsFilteredParentDeck()), + ) + } + } + + @Test + fun `creating a descendant of a filtered deck with non-activity context shows an error`() { + addDynamicDeck("Filtered Deck 1") + val deckCount = col.decks.count() + activityScenario.onActivity { activity -> + val dialog = CreateDeckDialog(ContextWrapper(activity), "Create deck", DeckDialogType.DECK, null) + dialog.onNewDeckCreated = { fail("the deck was not created") } + dialog.createDeck("filtered deck 1::Parent::Child") + + assertThat("no deck was created", col.decks.count(), equalTo(deckCount)) + assertThat( + ShadowToast.getTextOfLatestToast(), + equalTo(TR.errorsFilteredParentDeck()), + ) + } + } + + @Test + fun `creating a subdeck below a filtered deck shows an error`() { + val parentId = addDeck("Parent") + addDynamicDeck("Parent::Filtered") + val deckCount = col.decks.count() + withCreateDeckDialog(DeckDialogType.SUB_DECK, parentId) { + onNewDeckCreated = { fail("the deck was not created") } + showDialog().apply { + input = "Filtered::Child" + positiveButton.performClick() + } + } + Shadows.shadowOf(Looper.getMainLooper()).idle() + + assertThat("no deck was created", col.decks.count(), equalTo(deckCount)) + activityScenario.onActivity { activity -> + assertThat( + activity.latestSnackbarText(), + equalTo(TR.errorsFilteredParentDeck()), + ) + } + } + @Test fun testRenameDeckFunction() { val deckName = "Deck Name" From d0164898ef623e2620a185381cafb8628737582d Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Sun, 20 Sep 2026 17:47:37 +0100 Subject: [PATCH 3/6] fix(deck-picker): align snackbars with the FAB Fixes 21938 Assisted-by: GPT-6 --- .../main/java/com/ichi2/anki/DeckPicker.kt | 2 ++ .../ichi2/anki/DeckPickerScreenshotTest.kt | 23 +++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt b/AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt index c7ab73b4ef67..d4177419a684 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt @@ -309,6 +309,8 @@ open class DeckPicker : } override val baseSnackbarBuilder: SnackbarBuilder = { anchorView = floatingActionButtonBinding.fabMain.takeIf { it.isVisible } + // Follow the FAB as it moves when the keyboard opens or closes. + isAnchorViewLayoutListenerEnabled = true addCallback(activeSnackbarCallback) } diff --git a/AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerScreenshotTest.kt b/AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerScreenshotTest.kt index 8d0412cf98ef..4d7d88d7ca36 100644 --- a/AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerScreenshotTest.kt +++ b/AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerScreenshotTest.kt @@ -6,15 +6,20 @@ import android.content.Intent import android.view.View import androidx.core.content.edit import androidx.recyclerview.widget.RecyclerView +import com.google.android.material.snackbar.Snackbar +import com.ichi2.anki.CollectionManager.TR import com.ichi2.anki.android.view.locationInWindow import com.ichi2.anki.common.preferences.sharedPrefs import com.ichi2.anki.libanki.DeckId import com.ichi2.anki.settings.Prefs +import com.ichi2.anki.snackbar.showSnackbar import com.ichi2.anki.widgets.DeckAdapter import com.ichi2.testutils.BackupManagerTestUtilities +import com.ichi2.testutils.dispatchInsets import com.ichi2.testutils.lastItemView import com.ichi2.testutils.scrollToEnd import com.ichi2.testutils.simulateKeyboard +import com.ichi2.utils.dp import kotlinx.coroutines.flow.first import org.junit.After import org.junit.Before @@ -60,6 +65,24 @@ class DeckPickerScreenshotTest : ScreenshotTest() { captureScreen("edgeToEdge_30_decks") } + @Test + fun snackbar_follows_keyboard_visibility() = + withDeckPicker(deckCount = 30) { deckPicker -> + // Deck creation displays feedback before the dialog's keyboard closes. + deckPicker.dispatchInsets(navBarBottom = 48.dp, imeBottom = 300.dp) + advanceRobolectricLooper() + val snackbar = checkNotNull(deckPicker.showSnackbar(TR.errorsFilteredParentDeck(), Snackbar.LENGTH_INDEFINITE)) + advanceRobolectricLooper() + + deckPicker.dispatchInsets(navBarBottom = 48.dp) + advanceRobolectricLooper() + captureScreen("snackbar_keyboard_closed") + + deckPicker.simulateKeyboard() + captureScreen("snackbar_keyboard_open") + snackbar.dismiss() + } + /** Ensure that 'studied today' overlaying a deck name works when the IME is open */ @Test fun keyboard_studied_line_overlaying_deck_name() = From d39f1c3842b35ab82409d463d66727d458e6d108 Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Mon, 21 Sep 2026 20:54:10 +0100 Subject: [PATCH 4/6] fix(tests): rounded corners are no longer persisted Fixes 21965 Assisted-by: GPT-6 --- .../java/com/ichi2/anki/NoteEditorFragment.kt | 3 +- .../java/com/ichi2/anki/noteeditor/Toolbar.kt | 5 +++- .../ichi2/anki/NoteEditorScreenshotTest.kt | 30 ++++++++++++------- 3 files changed, 25 insertions(+), 13 deletions(-) diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/NoteEditorFragment.kt b/AnkiDroid/src/main/java/com/ichi2/anki/NoteEditorFragment.kt index fb8559fbb2de..b328bf3af15a 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/NoteEditorFragment.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/NoteEditorFragment.kt @@ -217,7 +217,8 @@ class NoteEditorFragment : DispatchKeyEventListener, MenuProvider, ShortcutGroupProvider { - private val binding by viewBinding(FragmentNoteEditorBinding::bind) + @VisibleForTesting + internal val binding by viewBinding(FragmentNoteEditorBinding::bind) private var bottomInsetPx = 0 diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/noteeditor/Toolbar.kt b/AnkiDroid/src/main/java/com/ichi2/anki/noteeditor/Toolbar.kt index d68588cb1e2c..6acbec65c32e 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/noteeditor/Toolbar.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/noteeditor/Toolbar.kt @@ -28,6 +28,7 @@ import android.widget.LinearLayout import androidx.annotation.ColorInt import androidx.annotation.DrawableRes import androidx.annotation.IdRes +import androidx.annotation.VisibleForTesting import androidx.appcompat.app.AlertDialog import androidx.appcompat.widget.AppCompatImageButton import androidx.core.graphics.createBitmap @@ -68,7 +69,9 @@ class Toolbar : FrameLayout { var formatListener: TextFormatListener? = null private val toolbar: LinearLayout private val toolbarLayout: LinearLayout - private val scrollView: HorizontalScrollView + + @VisibleForTesting + internal val scrollView: HorizontalScrollView /** A list of buttons, typically user-defined which modify text + selection */ private val customButtons: MutableList = ArrayList() diff --git a/AnkiDroid/src/test/java/com/ichi2/anki/NoteEditorScreenshotTest.kt b/AnkiDroid/src/test/java/com/ichi2/anki/NoteEditorScreenshotTest.kt index 92646b0effae..c889ce6fa81c 100644 --- a/AnkiDroid/src/test/java/com/ichi2/anki/NoteEditorScreenshotTest.kt +++ b/AnkiDroid/src/test/java/com/ichi2/anki/NoteEditorScreenshotTest.kt @@ -9,14 +9,16 @@ import android.widget.FrameLayout import androidx.core.view.RoundedCornerCompat import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat -import androidx.core.view.WindowInsetsCompat.Type.displayCutout import androidx.core.view.WindowInsetsCompat.Type.ime import androidx.core.view.WindowInsetsCompat.Type.navigationBars import androidx.core.view.WindowInsetsCompat.Type.statusBars import com.ichi2.anki.common.destinations.NoteEditorDestination import com.ichi2.anki.noteeditor.toIntent +import com.ichi2.testutils.dispatchInsets import com.ichi2.testutils.insetsOf import com.ichi2.utils.dp +import org.hamcrest.MatcherAssert.assertThat +import org.hamcrest.Matchers.equalTo import org.junit.Test import org.robolectric.RuntimeEnvironment @@ -52,6 +54,20 @@ class NoteEditorScreenshotTest : ScreenshotTest() { } } + @Test + fun `gesture navigation corners do not leak into landscape insets`() { + RuntimeEnvironment.setQualifiers("+land") + withNoteEditor { activity -> + // WindowInsets.Builder shares rounded corners: model a gesture test running first. + activity.simulateGestureNavigationBar() + activity.simulateSideNavigationBar() + + val toolbar = activity.noteEditorFragment.binding.editorToolbar.scrollView + assertThat(toolbar.paddingLeft, equalTo(0)) + assertThat(toolbar.paddingRight, equalTo(0)) + } + } + /** The two-pane tablet layout: the editor beside the card previewer */ @Test fun noteEditorTablet() { @@ -128,16 +144,8 @@ class NoteEditorScreenshotTest : ScreenshotTest() { /** As [simulateNavigationBar], but landscape: a side navigation bar and an opposite cutout */ private fun NoteEditorActivity.simulateSideNavigationBar() { val navBarWidth = 48.dp - val insets = - with(targetContext) { - WindowInsetsCompat - .Builder() - .setInsets(statusBars(), insetsOf(top = 24.dp)) - .setInsets(navigationBars(), insetsOf(right = navBarWidth)) - .setInsets(displayCutout(), insetsOf(left = 32.dp)) - .build() - } - ViewCompat.dispatchApplyWindowInsets(window.decorView, insets) + // The shared helper also resets rounded corners leaked by other tests. + dispatchInsets(navBarRight = navBarWidth, cutoutLeft = 32.dp) addOverlay(navBarWidth.toPx(targetContext), FrameLayout.LayoutParams.MATCH_PARENT, Gravity.END) } From 15db5deaa828082d941c2e9350388efb89c2e50e Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Sun, 20 Sep 2026 19:21:47 +0100 Subject: [PATCH 5/6] docs: convert licenses to SPDX format Following Brayan's PR, I grepped for my name and removed the references AnkiDroid is standardizing licenses to SPDX. I removed my copyright lines from the files as-per docs/contributing/copyright-headers.md Issue 20954 This change was not performed using LLMs and I have verified that it is correct --- .../java/com/ichi2/anki/BackendExporting.kt | 1 - .../java/com/ichi2/anki/DayRolloverHandler.kt | 2 -- .../src/main/java/com/ichi2/anki/TtsVoices.kt | 2 -- .../com/ichi2/anki/android/input/Shortcut.kt | 1 - .../ichi2/anki/android/input/ShortcutGroup.kt | 1 - .../anki/android/input/ShortcutGroupProvider.kt | 1 - .../anki/browser/BrowserColumnCollection.kt | 16 +--------------- .../browser/BrowserColumnSelectionAdapter.kt | 16 +--------------- .../ichi2/anki/browser/BrowserRowCollection.kt | 16 +--------------- .../browser/CardBrowserFragmentViewModel.kt | 16 +--------------- .../com/ichi2/anki/browser/ColumnWithSample.kt | 16 +--------------- .../cardviewer/OnRenderProcessGoneDelegate.kt | 17 ++--------------- .../com/ichi2/anki/cardviewer/SoundTagPlayer.kt | 16 +--------------- .../com/ichi2/anki/cardviewer/VideoPlayer.kt | 16 +--------------- .../com/ichi2/anki/cardviewer/ViewerRefresh.kt | 16 +--------------- .../anki/contextmenu/AnkiCardContextMenu.kt | 15 +-------------- .../anki/contextmenu/CardBrowserContextMenu.kt | 15 +-------------- .../ichi2/anki/contextmenu/SystemContextMenu.kt | 15 +-------------- .../ichi2/anki/deckpicker/DisplayDeckNode.kt | 1 - .../ichi2/anki/dialogs/DeckSelectionDialog.kt | 1 - .../EditDeckDescriptionDialogViewModel.kt | 16 +--------------- .../ichi2/anki/logging/RobolectricDebugTree.kt | 16 +--------------- .../com/ichi2/anki/multimedia/SoundUtils.kt | 1 - .../notetype/RepositionCardTemplateDialog.kt | 16 +--------------- .../ichi2/anki/reviewer/ActionButtonStatus.kt | 16 +--------------- .../com/ichi2/anki/reviewer/ActionButtons.kt | 17 ++--------------- .../java/com/ichi2/anki/reviewer/AnswerTimer.kt | 16 +--------------- .../java/com/ichi2/anki/reviewer/BindingMap.kt | 16 +--------------- .../java/com/ichi2/anki/reviewer/CardMarker.kt | 16 +--------------- .../java/com/ichi2/anki/reviewer/CardSide.kt | 16 +--------------- .../java/com/ichi2/anki/reviewer/EaseButton.kt | 16 +--------------- .../com/ichi2/anki/reviewer/FullScreenMode.kt | 17 ++--------------- .../anki/servicelayer/LanguageHintService.kt | 16 +--------------- .../ichi2/anki/servicelayer/SchedulerService.kt | 16 +--------------- .../java/com/ichi2/anki/ui/OnHoldListener.kt | 1 - .../com/ichi2/anki/ui/RecyclerFastScroller.kt | 2 -- .../ichi2/anki/ui/animations/ViewAnimations.kt | 16 +--------------- .../com/ichi2/anki/utils/ext/BitmapDrawable.kt | 1 - .../com/ichi2/anki/utils/ext/FragmentManager.kt | 16 +--------------- .../com/ichi2/anki/utils/ext/InputStream.kt | 16 +--------------- .../main/java/com/ichi2/anki/utils/ext/Int.kt | 2 -- .../java/com/ichi2/anki/utils/ext/NoteType.kt | 16 +--------------- .../java/com/ichi2/anki/utils/ext/Parcel.kt | 16 +--------------- .../com/ichi2/anki/utils/ext/RecyclerView.kt | 16 +--------------- .../java/com/ichi2/anki/utils/ext/TextView.kt | 16 +--------------- .../main/java/com/ichi2/anki/utils/ext/View.kt | 1 - .../anki/workarounds/ClosableDrawerLayout.kt | 16 +--------------- .../ichi2/anki/workarounds/DialogTitleView.kt | 2 -- .../IncrementerNumberRangePreferenceCompat.kt | 1 - .../ichi2/preferences/ListPreferenceTrait.kt | 2 -- .../preferences/NumberRangePreferenceCompat.kt | 1 - .../ichi2/preferences/PreferenceExtensions.kt | 17 ++--------------- .../src/main/java/com/ichi2/ui/AnimationUtil.kt | 17 ++--------------- .../main/java/com/ichi2/ui/AxisValueDisplay.kt | 16 +--------------- .../src/main/java/com/ichi2/ui/BadgeDrawable.kt | 15 +-------------- .../java/com/ichi2/ui/CardBrowserSearchView.kt | 16 +--------------- .../src/main/java/com/ichi2/ui/FixedEditText.kt | 2 -- .../src/main/java/com/ichi2/ui/FixedTextView.kt | 2 -- .../main/java/com/ichi2/ui/OnGestureListener.kt | 17 ++--------------- .../java/com/ichi2/ui/TextInputEditField.kt | 16 +--------------- .../java/com/ichi2/utils/AlertDialogFacade.kt | 16 +--------------- .../main/java/com/ichi2/utils/AndroidUiUtils.kt | 17 ++--------------- .../main/java/com/ichi2/utils/AssetHelper.kt | 2 -- .../java/com/ichi2/utils/ContentResolverUtil.kt | 17 ++--------------- .../main/java/com/ichi2/utils/DisplayUtils.kt | 16 +--------------- .../main/java/com/ichi2/utils/ExceptionUtil.kt | 17 ++--------------- .../com/ichi2/utils/FragmentManagerSupplier.kt | 16 +--------------- .../src/main/java/com/ichi2/utils/HtmlUtils.kt | 17 ++--------------- .../src/main/java/com/ichi2/utils/MapUtil.kt | 16 +--------------- .../main/java/com/ichi2/utils/MenuItemUtil.kt | 16 +--------------- .../main/java/com/ichi2/utils/TextViewUtil.kt | 16 +--------------- .../main/java/com/ichi2/utils/TypedFilter.kt | 16 +--------------- .../src/main/java/com/ichi2/utils/UiUtil.kt | 17 ++--------------- .../main/java/com/ichi2/utils/ViewGroupUtils.kt | 16 +--------------- .../java/com/ichi2/utils/WebViewDebugging.kt | 16 +--------------- .../main/res/color/text_input_background.xml | 17 ++--------------- .../main/res/drawable-v25/ic_gesture_swipe.xml | 16 +--------------- AnkiDroid/src/main/res/values/browser.xml | 17 ++--------------- .../disable-fullscreen-keyboard-highlight.xml | 17 ++--------------- AnkiDroid/src/main/res/values/tags.xml | 17 ++--------------- .../src/main/res/xml/preferences_controls.xml | 17 ++--------------- .../ichi2/anki/common/storage/LegacyStorage.kt | 1 - .../com/ichi2/anki/common/utils/StringUtils.kt | 2 -- .../com/ichi2/anki/common/utils/ext/Float.kt | 2 -- .../java/com/ichi2/anki/libanki/Collection.kt | 1 - vbpd/src/main/AndroidManifest.xml | 16 +--------------- .../vbpd/ActivityViewBindings.kt | 2 -- .../vbpd/FragmentViewBindings.kt | 2 -- .../vbpd/ViewBindingProperty.kt | 2 -- .../androidbroadcast/vbpd/ViewGroupBindings.kt | 2 -- .../androidbroadcast/vbpd/ViewHolderBindings.kt | 2 -- .../androidbroadcast/vbpd/internal/VbpdUtils.kt | 2 -- 92 files changed, 77 insertions(+), 959 deletions(-) diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/BackendExporting.kt b/AnkiDroid/src/main/java/com/ichi2/anki/BackendExporting.kt index cbae3bbe36d1..b2ab08dd29ac 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/BackendExporting.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/BackendExporting.kt @@ -1,5 +1,4 @@ // SPDX-FileCopyrightText: 2023 lukstbit <52494258+lukstbit@users.noreply.github.com> -// SPDX-FileCopyrightText: 2025 David Allison // SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/DayRolloverHandler.kt b/AnkiDroid/src/main/java/com/ichi2/anki/DayRolloverHandler.kt index 7e22b866210c..8aa09138d9d4 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/DayRolloverHandler.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/DayRolloverHandler.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2024 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/TtsVoices.kt b/AnkiDroid/src/main/java/com/ichi2/anki/TtsVoices.kt index 7d645b76fe89..69804ec00daa 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/TtsVoices.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/TtsVoices.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2023 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/Shortcut.kt b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/Shortcut.kt index 884e1d6a6041..e74b01cabff9 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/Shortcut.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/Shortcut.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2024 Sanjay Sargam - * Copyright (c) 2024 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroup.kt b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroup.kt index 32ecc3cb44ba..8b064cf66aea 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroup.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroup.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2024 Sanjay Sargam - * Copyright (c) 2024 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroupProvider.kt b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroupProvider.kt index 9e49b5006914..87305b3b5ad4 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroupProvider.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/android/input/ShortcutGroupProvider.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2024 Sanjay Sargam - * Copyright (c) 2024 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnCollection.kt b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnCollection.kt index 86bedc36b313..c46376d30b9d 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnCollection.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnCollection.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.browser diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnSelectionAdapter.kt b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnSelectionAdapter.kt index a04c678dcd08..52bbec46416a 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnSelectionAdapter.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserColumnSelectionAdapter.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.browser diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserRowCollection.kt b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserRowCollection.kt index a8200bbb099c..eff5974ccf76 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserRowCollection.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/browser/BrowserRowCollection.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.browser diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/browser/CardBrowserFragmentViewModel.kt b/AnkiDroid/src/main/java/com/ichi2/anki/browser/CardBrowserFragmentViewModel.kt index eb6674568cf3..b7ab64af6573 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/browser/CardBrowserFragmentViewModel.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/browser/CardBrowserFragmentViewModel.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2023 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.browser diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/browser/ColumnWithSample.kt b/AnkiDroid/src/main/java/com/ichi2/anki/browser/ColumnWithSample.kt index 3b4c6e052a53..010831194697 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/browser/ColumnWithSample.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/browser/ColumnWithSample.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.browser diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/OnRenderProcessGoneDelegate.kt b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/OnRenderProcessGoneDelegate.kt index 68d912940570..5a1fb47a25d5 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/OnRenderProcessGoneDelegate.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/OnRenderProcessGoneDelegate.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.anki.cardviewer import android.os.Build diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/SoundTagPlayer.kt b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/SoundTagPlayer.kt index 1eb29acf9ada..bfdec46ce0cd 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/SoundTagPlayer.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/SoundTagPlayer.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2023 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.cardviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/VideoPlayer.kt b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/VideoPlayer.kt index c6e94e36dae8..03ad0dfc55be 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/VideoPlayer.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/VideoPlayer.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.cardviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/ViewerRefresh.kt b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/ViewerRefresh.kt index 87674c2c8cbe..e6a2c6ef4e5c 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/ViewerRefresh.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/cardviewer/ViewerRefresh.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2023 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.cardviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/AnkiCardContextMenu.kt b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/AnkiCardContextMenu.kt index 3c58ad3dcf4f..3ced5b9e306c 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/AnkiCardContextMenu.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/AnkiCardContextMenu.kt @@ -1,18 +1,5 @@ -/* - Copyright (c) 2020 David Allison +// SPDX-License-Identifier: GPL-3.0-or-later - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ package com.ichi2.anki.contextmenu import android.content.Context diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/CardBrowserContextMenu.kt b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/CardBrowserContextMenu.kt index cc697cf76283..b282b03b2dc2 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/CardBrowserContextMenu.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/CardBrowserContextMenu.kt @@ -1,18 +1,5 @@ -/* - Copyright (c) 2020 David Allison +// SPDX-License-Identifier: GPL-3.0-or-later - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ package com.ichi2.anki.contextmenu import android.content.Context diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/SystemContextMenu.kt b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/SystemContextMenu.kt index 55356d9fdaa1..26b3d40efbfa 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/SystemContextMenu.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/contextmenu/SystemContextMenu.kt @@ -1,18 +1,5 @@ -/* - Copyright (c) 2020 David Allison +// SPDX-License-Identifier: GPL-3.0-or-later - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ package com.ichi2.anki.contextmenu import android.annotation.SuppressLint diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/deckpicker/DisplayDeckNode.kt b/AnkiDroid/src/main/java/com/ichi2/anki/deckpicker/DisplayDeckNode.kt index 9836c649a504..6d6a7c7a0f92 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/deckpicker/DisplayDeckNode.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/deckpicker/DisplayDeckNode.kt @@ -1,5 +1,4 @@ /* - * Copyright (c) 2025 David Allison * Copyright (c) 2025 Gautam Bhetanabhotla * * This program is free software; you can redistribute it and/or modify it under diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/DeckSelectionDialog.kt b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/DeckSelectionDialog.kt index 27685a2b063a..d3d00a2bd287 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/DeckSelectionDialog.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/DeckSelectionDialog.kt @@ -1,5 +1,4 @@ /* - Copyright (c) 2020 David Allison Copyright (c) 2026 lukstbit <52494258+lukstbit@users.noreply.github.com> This program is free software; you can redistribute it and/or modify it under diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/EditDeckDescriptionDialogViewModel.kt b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/EditDeckDescriptionDialogViewModel.kt index 438bfaed7b2b..527c9aaf9746 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/EditDeckDescriptionDialogViewModel.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/dialogs/EditDeckDescriptionDialogViewModel.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.dialogs diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/logging/RobolectricDebugTree.kt b/AnkiDroid/src/main/java/com/ichi2/anki/logging/RobolectricDebugTree.kt index b3ccc72b9da0..2f112610931f 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/logging/RobolectricDebugTree.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/logging/RobolectricDebugTree.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.logging diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/multimedia/SoundUtils.kt b/AnkiDroid/src/main/java/com/ichi2/anki/multimedia/SoundUtils.kt index 395e123e408d..927d45ecb759 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/multimedia/SoundUtils.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/multimedia/SoundUtils.kt @@ -1,7 +1,6 @@ /* * Copyright (c) 2009 Edu Zamora * Copyright (c) 2014 Timothy rae - * Copyright (c) 2025 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/notetype/RepositionCardTemplateDialog.kt b/AnkiDroid/src/main/java/com/ichi2/anki/notetype/RepositionCardTemplateDialog.kt index 067d2af12807..913a271799a5 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/notetype/RepositionCardTemplateDialog.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/notetype/RepositionCardTemplateDialog.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.notetype diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtonStatus.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtonStatus.kt index ddd277a29a68..64a2cc5e0072 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtonStatus.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtonStatus.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtons.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtons.kt index a8fd6034a587..0eae4373f031 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtons.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/ActionButtons.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.anki.reviewer import android.content.SharedPreferences diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/AnswerTimer.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/AnswerTimer.kt index 26664a64c7ad..a87570446eb9 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/AnswerTimer.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/AnswerTimer.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/BindingMap.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/BindingMap.kt index 0905344a7563..8b4af224cf1e 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/BindingMap.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/BindingMap.kt @@ -1,18 +1,4 @@ -/* - Copyright (c) 2020 David Allison - - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardMarker.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardMarker.kt index c5fd59594632..d7a0746df198 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardMarker.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardMarker.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardSide.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardSide.kt index 9264ee10cc49..de53b8fc449d 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardSide.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/CardSide.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/EaseButton.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/EaseButton.kt index c85502e2ce01..756c30846058 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/EaseButton.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/EaseButton.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.reviewer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/FullScreenMode.kt b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/FullScreenMode.kt index 618e8c2f5973..4e63691e5e4f 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/FullScreenMode.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/reviewer/FullScreenMode.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.anki.reviewer import android.content.SharedPreferences diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/LanguageHintService.kt b/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/LanguageHintService.kt index 275d07d98a22..5082919220ca 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/LanguageHintService.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/LanguageHintService.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.servicelayer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/SchedulerService.kt b/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/SchedulerService.kt index c6d520780153..88530e2a7a78 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/SchedulerService.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/servicelayer/SchedulerService.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.servicelayer diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/ui/OnHoldListener.kt b/AnkiDroid/src/main/java/com/ichi2/anki/ui/OnHoldListener.kt index 8ac75ec7f913..fd0263e32eba 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/ui/OnHoldListener.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/ui/OnHoldListener.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2024 Sumit Singh - * Copyright (c) 2024 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/ui/RecyclerFastScroller.kt b/AnkiDroid/src/main/java/com/ichi2/anki/ui/RecyclerFastScroller.kt index f94ba932b62b..6837ad870d09 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/ui/RecyclerFastScroller.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/ui/RecyclerFastScroller.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2025 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/ui/animations/ViewAnimations.kt b/AnkiDroid/src/main/java/com/ichi2/anki/ui/animations/ViewAnimations.kt index 3502df8e587f..55108002276b 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/ui/animations/ViewAnimations.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/ui/animations/ViewAnimations.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.ui.animations diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/BitmapDrawable.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/BitmapDrawable.kt index 38f29a16a176..2d11cb592a7f 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/BitmapDrawable.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/BitmapDrawable.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2024 Ashish Yadav - * Copyright (c) 2024 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/FragmentManager.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/FragmentManager.kt index b0bf1156cb1d..9b1161f088a2 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/FragmentManager.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/FragmentManager.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/InputStream.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/InputStream.kt index fbad0ba88960..5477c29a243e 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/InputStream.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/InputStream.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Int.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Int.kt index 1d349c16ed38..0148fd694fdb 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Int.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Int.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2024 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/NoteType.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/NoteType.kt index 6fdc72536fd3..c59b07dd997a 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/NoteType.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/NoteType.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2024 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Parcel.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Parcel.kt index 5dd094fad873..ce87e5338bfe 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Parcel.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/Parcel.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/RecyclerView.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/RecyclerView.kt index 8d419c77f63c..e499d23fab15 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/RecyclerView.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/RecyclerView.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/TextView.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/TextView.kt index 5e99ece6bb17..4148f1e04f4c 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/TextView.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/TextView.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2025 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.anki.utils.ext diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/View.kt b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/View.kt index f489fd2012ec..fc90dfa507fc 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/View.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/utils/ext/View.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2025 Danilo Mendes - * Copyright (c) 2026 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/ClosableDrawerLayout.kt b/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/ClosableDrawerLayout.kt index e56f2f306174..55c231731eb3 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/ClosableDrawerLayout.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/ClosableDrawerLayout.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later // ಠ_ಠ This is required to override a package-private method to block animations @file:Suppress("PackageDirectoryMismatch") diff --git a/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/DialogTitleView.kt b/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/DialogTitleView.kt index 9ea39a755b05..0819c5d42eee 100644 --- a/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/DialogTitleView.kt +++ b/AnkiDroid/src/main/java/com/ichi2/anki/workarounds/DialogTitleView.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2024 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/preferences/IncrementerNumberRangePreferenceCompat.kt b/AnkiDroid/src/main/java/com/ichi2/preferences/IncrementerNumberRangePreferenceCompat.kt index 866145fd4839..724ef2b13b63 100644 --- a/AnkiDroid/src/main/java/com/ichi2/preferences/IncrementerNumberRangePreferenceCompat.kt +++ b/AnkiDroid/src/main/java/com/ichi2/preferences/IncrementerNumberRangePreferenceCompat.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2021 Tushar Bhatt - * Copyright (c) 2021 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/preferences/ListPreferenceTrait.kt b/AnkiDroid/src/main/java/com/ichi2/preferences/ListPreferenceTrait.kt index a3d84260770f..73c38d4e162c 100644 --- a/AnkiDroid/src/main/java/com/ichi2/preferences/ListPreferenceTrait.kt +++ b/AnkiDroid/src/main/java/com/ichi2/preferences/ListPreferenceTrait.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2024 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/preferences/NumberRangePreferenceCompat.kt b/AnkiDroid/src/main/java/com/ichi2/preferences/NumberRangePreferenceCompat.kt index eeff09a9eaf7..10d24785b5f1 100644 --- a/AnkiDroid/src/main/java/com/ichi2/preferences/NumberRangePreferenceCompat.kt +++ b/AnkiDroid/src/main/java/com/ichi2/preferences/NumberRangePreferenceCompat.kt @@ -1,6 +1,5 @@ /* * Copyright (c) 2013 Houssam Salem - * Copyright (c) 2021 David Allison * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software diff --git a/AnkiDroid/src/main/java/com/ichi2/preferences/PreferenceExtensions.kt b/AnkiDroid/src/main/java/com/ichi2/preferences/PreferenceExtensions.kt index 5bca11539db0..c1c394546fb4 100644 --- a/AnkiDroid/src/main/java/com/ichi2/preferences/PreferenceExtensions.kt +++ b/AnkiDroid/src/main/java/com/ichi2/preferences/PreferenceExtensions.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.preferences import android.content.SharedPreferences diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/AnimationUtil.kt b/AnkiDroid/src/main/java/com/ichi2/ui/AnimationUtil.kt index 56c236cacc8f..8dbf606a81fa 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/AnimationUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/AnimationUtil.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.ui import android.view.View diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/AxisValueDisplay.kt b/AnkiDroid/src/main/java/com/ichi2/ui/AxisValueDisplay.kt index dd381e9b1588..75c22c0ee4dd 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/AxisValueDisplay.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/AxisValueDisplay.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2023 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.ui diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/BadgeDrawable.kt b/AnkiDroid/src/main/java/com/ichi2/ui/BadgeDrawable.kt index 5e0e934249bc..22628c33a541 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/BadgeDrawable.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/BadgeDrawable.kt @@ -1,18 +1,5 @@ -/* - Copyright (c) 2020 David Allison +// SPDX-License-Identifier: GPL-3.0-or-later - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ package com.ichi2.ui import android.graphics.Canvas diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/CardBrowserSearchView.kt b/AnkiDroid/src/main/java/com/ichi2/ui/CardBrowserSearchView.kt index eab0b3aa8a24..e24ec3ca4d1a 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/CardBrowserSearchView.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/CardBrowserSearchView.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.ui diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/FixedEditText.kt b/AnkiDroid/src/main/java/com/ichi2/ui/FixedEditText.kt index a785ebfd9f42..aa634888b25b 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/FixedEditText.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/FixedEditText.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2020 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/FixedTextView.kt b/AnkiDroid/src/main/java/com/ichi2/ui/FixedTextView.kt index 74a320e6c839..ff4999039aba 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/FixedTextView.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/FixedTextView.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2020 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/OnGestureListener.kt b/AnkiDroid/src/main/java/com/ichi2/ui/OnGestureListener.kt index 96d6185a18b1..5396dc57609e 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/OnGestureListener.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/OnGestureListener.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.ui import android.view.GestureDetector diff --git a/AnkiDroid/src/main/java/com/ichi2/ui/TextInputEditField.kt b/AnkiDroid/src/main/java/com/ichi2/ui/TextInputEditField.kt index 2b30e6a2d7ce..ed4d388028dc 100644 --- a/AnkiDroid/src/main/java/com/ichi2/ui/TextInputEditField.kt +++ b/AnkiDroid/src/main/java/com/ichi2/ui/TextInputEditField.kt @@ -1,18 +1,4 @@ -/* - Copyright (c) 2020 David Allison - - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.ui diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/AlertDialogFacade.kt b/AnkiDroid/src/main/java/com/ichi2/utils/AlertDialogFacade.kt index b753e837a673..d1c5c284d42f 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/AlertDialogFacade.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/AlertDialogFacade.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2023 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later @file:Suppress("unused") diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/AndroidUiUtils.kt b/AnkiDroid/src/main/java/com/ichi2/utils/AndroidUiUtils.kt index 884b5a264948..314ebd1ac3b9 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/AndroidUiUtils.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/AndroidUiUtils.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.utils import android.app.Activity diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/AssetHelper.kt b/AnkiDroid/src/main/java/com/ichi2/utils/AssetHelper.kt index 9d320d07e6a3..f6c619420204 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/AssetHelper.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/AssetHelper.kt @@ -1,6 +1,4 @@ /* - * Copyright (c) 2021 David Allison - * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 3 of the License, or (at your option) any later diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/ContentResolverUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/ContentResolverUtil.kt index 295d74b0bc85..59a260221d06 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/ContentResolverUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/ContentResolverUtil.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.utils import android.content.ContentResolver diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/DisplayUtils.kt b/AnkiDroid/src/main/java/com/ichi2/utils/DisplayUtils.kt index b9b3c116e4c2..e69cc4aa4dc1 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/DisplayUtils.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/DisplayUtils.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/ExceptionUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/ExceptionUtil.kt index 932e1629be2c..c4a3f06580ea 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/ExceptionUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/ExceptionUtil.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.utils import android.content.Context diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/FragmentManagerSupplier.kt b/AnkiDroid/src/main/java/com/ichi2/utils/FragmentManagerSupplier.kt index 38d283e7e8c4..063fa61e3b59 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/FragmentManagerSupplier.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/FragmentManagerSupplier.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2021 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/HtmlUtils.kt b/AnkiDroid/src/main/java/com/ichi2/utils/HtmlUtils.kt index 1154b995636d..4849f38d7c71 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/HtmlUtils.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/HtmlUtils.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.utils import androidx.core.text.HtmlCompat diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/MapUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/MapUtil.kt index 0c80bd213960..234e25a0ae07 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/MapUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/MapUtil.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/MenuItemUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/MenuItemUtil.kt index 25c17adad3d9..3e4aaa790ceb 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/MenuItemUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/MenuItemUtil.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2022 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/TextViewUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/TextViewUtil.kt index e386f67402d8..0510870c2ccf 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/TextViewUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/TextViewUtil.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/TypedFilter.kt b/AnkiDroid/src/main/java/com/ichi2/utils/TypedFilter.kt index 966f076e22e4..6bdb61136dab 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/TypedFilter.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/TypedFilter.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2022 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/UiUtil.kt b/AnkiDroid/src/main/java/com/ichi2/utils/UiUtil.kt index eff6c24f24b2..9c24833776e8 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/UiUtil.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/UiUtil.kt @@ -1,18 +1,5 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later + package com.ichi2.utils import android.app.Dialog diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/ViewGroupUtils.kt b/AnkiDroid/src/main/java/com/ichi2/utils/ViewGroupUtils.kt index 1e8e3b6f6879..043f542ba46f 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/ViewGroupUtils.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/ViewGroupUtils.kt @@ -1,18 +1,4 @@ -/* - Copyright (c) 2020 David Allison - - This program is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License as published by the Free Software - Foundation; either version 3 of the License, or (at your option) any later - version. - - This program is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/java/com/ichi2/utils/WebViewDebugging.kt b/AnkiDroid/src/main/java/com/ichi2/utils/WebViewDebugging.kt index ac0397dc4b66..6fabbc63ea1d 100644 --- a/AnkiDroid/src/main/java/com/ichi2/utils/WebViewDebugging.kt +++ b/AnkiDroid/src/main/java/com/ichi2/utils/WebViewDebugging.kt @@ -1,18 +1,4 @@ -/* - * Copyright (c) 2020 David Allison - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3 of the License, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see . - */ +// SPDX-License-Identifier: GPL-3.0-or-later package com.ichi2.utils diff --git a/AnkiDroid/src/main/res/color/text_input_background.xml b/AnkiDroid/src/main/res/color/text_input_background.xml index 525e63127c2d..1409683baaea 100644 --- a/AnkiDroid/src/main/res/color/text_input_background.xml +++ b/AnkiDroid/src/main/res/color/text_input_background.xml @@ -1,18 +1,5 @@ - + + \ No newline at end of file diff --git a/AnkiDroid/src/main/res/drawable-v25/ic_gesture_swipe.xml b/AnkiDroid/src/main/res/drawable-v25/ic_gesture_swipe.xml index 6a11d1f6889b..95222b449c8b 100644 --- a/AnkiDroid/src/main/res/drawable-v25/ic_gesture_swipe.xml +++ b/AnkiDroid/src/main/res/drawable-v25/ic_gesture_swipe.xml @@ -1,18 +1,4 @@ - + diff --git a/AnkiDroid/src/main/res/values/browser.xml b/AnkiDroid/src/main/res/values/browser.xml index 769d89cec1f0..f3a085c5b705 100644 --- a/AnkiDroid/src/main/res/values/browser.xml +++ b/AnkiDroid/src/main/res/values/browser.xml @@ -1,19 +1,6 @@ - + + browser_search_history cardBrowserNoSorting diff --git a/AnkiDroid/src/main/res/values/disable-fullscreen-keyboard-highlight.xml b/AnkiDroid/src/main/res/values/disable-fullscreen-keyboard-highlight.xml index 97f3823ce5b7..8c89241ffed6 100644 --- a/AnkiDroid/src/main/res/values/disable-fullscreen-keyboard-highlight.xml +++ b/AnkiDroid/src/main/res/values/disable-fullscreen-keyboard-highlight.xml @@ -1,18 +1,5 @@ - + +