0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-20 20:03:05 +02:00
AnkiDroid: Anki flashcards on Android. Your secret trick to achieve superhuman information retention.
Go to file
Brayan Oliveira afbbfd2357
[GSoC] Reorganize some preferences + refactors (#11934)
* Move HTML/Js debug to DevOptions

* Move `Card browser` and `Anki card` context menu to General

note that I changed their order: now, Anki card comes first and Card browser comes second
reason: Anki Card is enabled by default, so it's better to be seen first

* Move `Card browser font scaling` to Accessibility

To keep it together with the other "UI size" settings

* Removed check on GeneralSettingsFragment

If user had a restricted learning device, the app would crash as the preferences with keys of "widgetBlink" and "widgetVibrate" are not on the General category anymore.

These preferences were moved to NotificationsSettingsFragment on d302bcf and are handled there.

* Move `Press back twice to go back/exit` to General

* Remove `Upgrade to V2 scheduler` preference

142f789a7b forces requires/prompts to use the V2 scheduler when the user tries to study, so this preference is no longer necessary

* Remove `Perfomance` subcategory on Advanced

It had only `Backups` under it

* Reorganize `General` settings

New structure:
- Language
- Error reporting mode
- Share feature usage
- Paste Images as PNG
# Studying
- Deck for new cards
- Press back twice to leave
# System-wide
- Anki Card Menu
- Card Browser Menu

* Improve preferences_general.xml preview on Android Studio

Add preview title and summary for "Anki Card Menu" and "Card Browser Menu"

* Simplify `buildCategorySummary` calls

Add a helper method that converts the resIds to strings to reduce boilerplate

* Build `General`, `Appearance` and `Advanced` summaries programatically

And remove the old summary strings, as they aren't necessary anymore

* Extract `SettingsFragment.requirePreference()` to `PreferencesFragmentCompat.requirePreference()`

Utility method that was previously defined only on `SettingsFragment`. Now it can include other classes that inherit from `PreferencesFragmentCompat` as well, e.g. `HeaderFragment`.

As `SettingsFragment` inherits from `PreferencesFragmentCompat` too, its functionality isn't changed

* NF: Remove unchecked cast warning on `requirePreference`

Done by reifying the type and inlining the function

* Replace findPreference with requirePreference on HeaderFragment

* cleanup on HeaderFragment.kt

- simplify Advanced category configuration
- uniformize comments

* Add a comment specifying that dev options strings may not be translated

* Create a `Statistics` subcategory on Advanced preferences

Contains "Advanced statistics" and "Default deck when opening statistics"

And add "Statistics" to the Advanced category summary

* Move preferences not related to plugins out of the plugins subcategory

Moved preferences: "Text to speech", "Reset languages", "Chess notation support", "Double scrolling" and "eReader"

removeUnnecessaryAdvancedPrefs() had to be adapted, as "Double scrolling" and "eReader" aren't on the "Plugins" category anymore
2022-08-07 17:45:36 +02:00
.github chore: Set permissions for GitHub actions 2022-06-28 13:01:28 +05:30
.idea Fix crash during deck filtering (#11880) 2022-07-21 12:36:37 +01:00
AnkiDroid [GSoC] Reorganize some preferences + refactors (#11934) 2022-08-07 17:45:36 +02:00
annotations Allow JetBrains @Contract annotations 2020-05-14 20:48:36 -05:00
api Remove splitFieldsShouldReturnNullWhenStringIsNull 2022-07-24 14:40:34 -05:00
docs Updated strings from Crowdin 2022-07-04 12:48:46 -05:00
gradle/wrapper Update Gradle Wrapper from 7.5 to 7.5.1. 2022-08-05 19:15:45 -05:00
lint-rules Converted FixedPreferencesTitleLengthTest[LINT TEST] to Kotlin 2022-07-07 20:12:20 +01:00
tools updated mathjax and jquery 2022-06-03 09:00:58 -05:00
.codecov.yml coverage: disable noisy annotations on PRs 2021-03-27 09:45:48 -05:00
.gitattributes chore: Mark user dictionaries as non-generated 2022-04-13 10:42:47 -05:00
.gitignore lint: Add user dictionaries to reduce typos 2022-04-05 17:11:56 -05:00
.prettierignore fix(prettier): Ignore 'build' folder 2022-03-16 11:48:12 +05:30
.prettierrc Change .prettierrc endOfLine to auto 2022-03-17 11:01:04 -05:00
build.gradle Dependency updates 20220730 (#11943) 2022-07-30 13:31:24 -05:00
CONTRIBUTING.md Created CONTRIBUTING.md (#8222) 2021-03-15 07:53:28 -05:00
COPYING Add readme and license file back after accidentally deleting 2014-11-10 02:23:41 +09:00
gradle.properties Use IN_PROCESS compiler strategy only on CI builds 2022-06-11 13:12:10 -05:00
gradlew Update Gradle Wrapper from 7.4.2 to 7.5. 2022-07-14 21:06:24 -05:00
gradlew.bat Update Gradle Wrapper from 7.4.2 to 7.5. 2022-07-14 21:06:24 -05:00
lint-release.xml lint: enable "CheckResult" 2022-07-06 10:57:01 +01:00
lint.gradle lint: enable linting unit tests 2021-10-20 22:58:42 -05:00
pre-commit chore(lint, javascript): added prettier check (#10500) 2022-03-14 15:09:16 -05:00
README.md Add a comment stating not to rename/remove credits 2022-08-04 13:13:40 +03:00
settings.gradle Add lint checks for new time api 2020-08-25 10:04:26 +02:00

release build Open Collective backers and sponsors commit-activity forks stars contributors license

AnkiDroid

A semi-official port of the open source Anki spaced repetition flashcard system to Android. Memorize anything with AnkiDroid!

Features

  • night mode
  • whiteboard
  • progress widget
  • detailed statistics
  • syncing with AnkiWeb
  • write answers (optional)
  • text-to-speech integration
  • more than 6000 premade decks
  • spaced repetition (supermemo 2 algorithm)
  • supported contents: text, images, sounds, MathJax
  • add cards by intent from other applications like dictionaries

Install

Wiki

View Wiki

Help

Check the user manual and the wiki for usage instructions. See the help page for how to submit a bug report or contact a project member, etc.

Contribute

You can contribute to AnkiDroid by beta testing, translating, or submitting code. See the contribution wiki page for more info.

Join Us On

Credits

Code Contributors

Thanks to these awesome code contributors who keep this project going

Sponsors

Backers

Thank you to all our backers! 🙏

Translators

Thanks to our 1400 translators, for allowing us to be available, partially or totally, in 99 languages as of July 2022.

License