Fixes a `ConcurrentModificationException`: the wrong list was modified
* Create copy of list when filtering
* Optimize containsFilterString
* Add error catching
* Remove whitespace
* Add comment and better naming
* Rename usage of childrenCopy variable I forgot to rename
* Change to more efficient solution
* Remove unecessary comment
* Add unit tests for DeckFilter
* Remove unused imports
* Add copywrite
* Remove whitespace
* Format fixes
* Add last name to dictionary
* Flipped actual and expected in assert statement
* Removed try/catch block in publishResults()
* Remove unused import
* Added null check
* Revert "Optimize containsFilterString"
This reverts commit 5b617b03f6.
* Reverting to using !! operator on results
* Rename test method
* lint: note editor warnings
* Redundant SAM-constructor
* onActivityResult overrides deprecated member but not marked as deprecated itself.
* 'getCurrentMultimediaEditableNote' always returns non-null type
* Explicitly given type is redundant here
* Function "getFieldByIndex" is never used
* Function "previewNextClozeDeletion" is never used
* Class "Field" is never used
* Unnecessary non-null assertion (!!) on a non-null receiver
* lint: note editor 'infos'
* Boolean literal argument without a parameter name
* Cascade 'if' should be replaced with 'when'
* lint: note editor 'weak warnings' and 'typos'
* Use of setter method instead of property access syntax
* Replace negated 'isEmpty' with 'isNotEmpty'
* Should be replaced with Kotlin function
* Can be joined with assignment
* Local variable names should not contain underscores
* Size check can be replaced with 'isNotEmpty()'
* Size zero check can be replaced with 'isEmpty()'
* Replaceable with operator-assignment
We can't lock the database via file locking on macOS under Robolectric
So instead, we lock the database in code.
This is better than locking via `CollectionHelper` as it's not opt in
So, we use `Storage`, where the Collection is created
Throws `SQLiteDatabaseLockedException` if an attempt to access the DB
is made when the database is locked.
This adds 4 user dictionaries:
* anki.xml - Anki Desktop specific terminology: 'did'
* android.xml - Android and dependencies: 'miui.securitycenter'
* usernames.xml - Usernames in copyright declarations
* davidallison.xml - Anything else.
* Each user has their own dictionary to avoid merge conflicts
* But this is shared within the project
https://www.jetbrains.com/help/idea/spellchecking.htmlhttps://stackoverflow.com/a/36256338
Fixes 10713
code style itself was imported to Android Studio via Checkstyle plugin
using the file docs/code_conventions/eclipse/ankidroid.checkstyle.xml,
with the only alterations being to implement blank line rules from
/docs/code_conventions/AnkiDroid_code_conventions.html
Remove redundant code which was only done on Eclair
Change to Java 7 as recommended by Android Studio
Don't show Hebrew preference on Jellybean and above
Get rid of lint warnings in Preferences