├── .github └── workflows │ └── build-debug-apk.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── PRIVACY-zh.md ├── PRIVACY.md ├── README.md ├── STYLE.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── io │ │ └── github │ │ └── yawnoc │ │ └── strokeinput │ │ └── InstrumentedTest.java │ ├── main │ ├── AndroidManifest.xml │ ├── assets │ │ ├── StrokeInputFont.ttf │ │ ├── about-zh-Hans-CN.cmd │ │ ├── about-zh-Hans-CN.html │ │ ├── about-zh-Hant-HK.cmd │ │ ├── about-zh-Hant-HK.html │ │ ├── about-zh-Hant-TW.cmd │ │ ├── about-zh-Hant-TW.html │ │ ├── about.cmd │ │ ├── about.html │ │ ├── characters-simplified.txt │ │ ├── characters-traditional.txt │ │ ├── help-zh-Hans-CN.cmd │ │ ├── help-zh-Hans-CN.html │ │ ├── help-zh-Hant-HK.cmd │ │ ├── help-zh-Hant-HK.html │ │ ├── help-zh-Hant-TW.cmd │ │ ├── help-zh-Hant-TW.html │ │ ├── help.cmd │ │ ├── help.html │ │ ├── keys.cmdr │ │ ├── lang.cmdr │ │ ├── links.cmdr │ │ ├── phrases-simplified.txt │ │ ├── phrases-traditional.txt │ │ ├── ranking-simplified.txt │ │ ├── ranking-traditional.txt │ │ ├── sequence-characters.txt │ │ ├── typography.cmdr │ │ └── webview.css │ ├── icon_launcher-playstore.png │ ├── java │ │ └── io │ │ │ └── github │ │ │ └── yawnoc │ │ │ ├── strokeinput │ │ │ ├── CandidatesView.java │ │ │ ├── CandidatesViewAdapter.java │ │ │ ├── InputContainer.java │ │ │ ├── Key.java │ │ │ ├── KeyPreviewPlane.java │ │ │ ├── Keyboard.java │ │ │ ├── KeyboardView.java │ │ │ ├── MainActivity.java │ │ │ ├── Row.java │ │ │ ├── StrokeInputService.java │ │ │ └── StrokeSequenceBar.java │ │ │ └── utilities │ │ │ ├── Contexty.java │ │ │ ├── Mappy.java │ │ │ ├── Stringy.java │ │ │ └── Valuey.java │ └── res │ │ ├── color │ │ └── candidate_button_text.xml │ │ ├── drawable │ │ ├── candidate_button_fill.xml │ │ ├── icon_external_link.xml │ │ └── icon_launcher_foreground.xml │ │ ├── layout │ │ ├── candidate_button.xml │ │ ├── candidate_order_dialog.xml │ │ ├── input_container.xml │ │ └── main_activity.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── icon_launcher.xml │ │ └── icon_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── icon_launcher.png │ │ └── icon_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── icon_launcher.png │ │ └── icon_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── icon_launcher.png │ │ └── icon_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── icon_launcher.png │ │ └── icon_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── icon_launcher.png │ │ └── icon_launcher_round.png │ │ ├── values-zh-rCN │ │ ├── dimens.xml │ │ └── strings.xml │ │ ├── values-zh-rHK │ │ ├── dimens.xml │ │ └── strings.xml │ │ ├── values-zh-rTW │ │ └── strings.xml │ │ ├── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── icon_launcher_background.xml │ │ ├── strings.xml │ │ ├── styles.xml │ │ └── themes.xml │ │ └── xml │ │ ├── data_extraction_rules.xml │ │ ├── keyboard_qwerty.xml │ │ ├── keyboard_qwerty_symbols.xml │ │ ├── keyboard_strokes.xml │ │ ├── keyboard_strokes_symbols_1.xml │ │ ├── keyboard_strokes_symbols_2.xml │ │ ├── keyboard_strokes_symbols_3.xml │ │ └── method.xml │ └── test │ └── java │ └── io │ └── github │ └── yawnoc │ └── utilities │ ├── MappyTest.java │ ├── StringyTest.java │ └── ValueyTest.java ├── fastlane └── metadata │ └── android │ ├── en-US │ ├── changelogs │ │ ├── 25.txt │ │ ├── 26.txt │ │ ├── 27.txt │ │ ├── 28.txt │ │ ├── 29.txt │ │ ├── 30.txt │ │ ├── 32.txt │ │ ├── 33.txt │ │ ├── 35.txt │ │ ├── 36.txt │ │ ├── 37.txt │ │ ├── 38.txt │ │ ├── 39.txt │ │ ├── 40.txt │ │ ├── 41.txt │ │ ├── 42.txt │ │ ├── 43.txt │ │ ├── 44.txt │ │ ├── 45.txt │ │ ├── 46.txt │ │ ├── 47.txt │ │ ├── 48.txt │ │ ├── 49.txt │ │ ├── 50.txt │ │ ├── 51.txt │ │ ├── 53.txt │ │ ├── 54.txt │ │ ├── 55.txt │ │ ├── 56.txt │ │ ├── 57.txt │ │ ├── 58.txt │ │ ├── 59.txt │ │ ├── 60.txt │ │ ├── 61.txt │ │ ├── 62.txt │ │ ├── 63.txt │ │ ├── 64.txt │ │ ├── 65.txt │ │ ├── 66.txt │ │ ├── 67.txt │ │ ├── 68.txt │ │ ├── 69.txt │ │ ├── 70.txt │ │ └── 71.txt │ ├── full_description.txt │ ├── images │ │ ├── featureGraphic.png │ │ ├── icon.png │ │ └── phoneScreenshots │ │ │ ├── phone-1-traditional.png │ │ │ ├── phone-2-strokes.png │ │ │ ├── phone-3-phrases.png │ │ │ ├── phone-4-punctuation.png │ │ │ ├── phone-5-simplified.png │ │ │ └── phone-6-meh.png │ ├── short_description.txt │ └── title.txt │ └── zh │ ├── full_description.txt │ ├── short_description.txt │ └── title.txt ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── stroke-input-screenshot.png /.github/workflows/build-debug-apk.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/.github/workflows/build-debug-apk.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/LICENSE -------------------------------------------------------------------------------- /PRIVACY-zh.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/PRIVACY-zh.md -------------------------------------------------------------------------------- /PRIVACY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/PRIVACY.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/README.md -------------------------------------------------------------------------------- /STYLE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/STYLE.md -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/build.gradle -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/androidTest/java/io/github/yawnoc/strokeinput/InstrumentedTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/androidTest/java/io/github/yawnoc/strokeinput/InstrumentedTest.java -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/assets/StrokeInputFont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/StrokeInputFont.ttf -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hans-CN.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hans-CN.cmd -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hans-CN.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hans-CN.html -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hant-HK.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hant-HK.cmd -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hant-HK.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hant-HK.html -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hant-TW.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hant-TW.cmd -------------------------------------------------------------------------------- /app/src/main/assets/about-zh-Hant-TW.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about-zh-Hant-TW.html -------------------------------------------------------------------------------- /app/src/main/assets/about.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about.cmd -------------------------------------------------------------------------------- /app/src/main/assets/about.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/about.html -------------------------------------------------------------------------------- /app/src/main/assets/characters-simplified.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/characters-simplified.txt -------------------------------------------------------------------------------- /app/src/main/assets/characters-traditional.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/characters-traditional.txt -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hans-CN.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hans-CN.cmd -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hans-CN.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hans-CN.html -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hant-HK.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hant-HK.cmd -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hant-HK.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hant-HK.html -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hant-TW.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hant-TW.cmd -------------------------------------------------------------------------------- /app/src/main/assets/help-zh-Hant-TW.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help-zh-Hant-TW.html -------------------------------------------------------------------------------- /app/src/main/assets/help.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help.cmd -------------------------------------------------------------------------------- /app/src/main/assets/help.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/help.html -------------------------------------------------------------------------------- /app/src/main/assets/keys.cmdr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/keys.cmdr -------------------------------------------------------------------------------- /app/src/main/assets/lang.cmdr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/lang.cmdr -------------------------------------------------------------------------------- /app/src/main/assets/links.cmdr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/links.cmdr -------------------------------------------------------------------------------- /app/src/main/assets/phrases-simplified.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/phrases-simplified.txt -------------------------------------------------------------------------------- /app/src/main/assets/phrases-traditional.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/phrases-traditional.txt -------------------------------------------------------------------------------- /app/src/main/assets/ranking-simplified.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/ranking-simplified.txt -------------------------------------------------------------------------------- /app/src/main/assets/ranking-traditional.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/ranking-traditional.txt -------------------------------------------------------------------------------- /app/src/main/assets/sequence-characters.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/sequence-characters.txt -------------------------------------------------------------------------------- /app/src/main/assets/typography.cmdr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/typography.cmdr -------------------------------------------------------------------------------- /app/src/main/assets/webview.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/assets/webview.css -------------------------------------------------------------------------------- /app/src/main/icon_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/icon_launcher-playstore.png -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/CandidatesView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/CandidatesView.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/CandidatesViewAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/CandidatesViewAdapter.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/InputContainer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/InputContainer.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/Key.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/Key.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/KeyPreviewPlane.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/KeyPreviewPlane.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/Keyboard.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/Keyboard.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/KeyboardView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/KeyboardView.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/MainActivity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/MainActivity.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/Row.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/Row.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/StrokeInputService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/StrokeInputService.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/strokeinput/StrokeSequenceBar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/strokeinput/StrokeSequenceBar.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/utilities/Contexty.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/utilities/Contexty.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/utilities/Mappy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/utilities/Mappy.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/utilities/Stringy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/utilities/Stringy.java -------------------------------------------------------------------------------- /app/src/main/java/io/github/yawnoc/utilities/Valuey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/java/io/github/yawnoc/utilities/Valuey.java -------------------------------------------------------------------------------- /app/src/main/res/color/candidate_button_text.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/color/candidate_button_text.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/candidate_button_fill.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/drawable/candidate_button_fill.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/icon_external_link.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/drawable/icon_external_link.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/icon_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/drawable/icon_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/candidate_button.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/layout/candidate_button.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/candidate_order_dialog.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/layout/candidate_order_dialog.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/input_container.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/layout/input_container.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/main_activity.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/layout/main_activity.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/icon_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-anydpi-v26/icon_launcher.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/icon_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-anydpi-v26/icon_launcher_round.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/icon_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-hdpi/icon_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/icon_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-hdpi/icon_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/icon_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-mdpi/icon_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/icon_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-mdpi/icon_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/icon_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xhdpi/icon_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/icon_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xhdpi/icon_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/icon_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xxhdpi/icon_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/icon_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xxhdpi/icon_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/icon_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xxxhdpi/icon_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/icon_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/mipmap-xxxhdpi/icon_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rCN/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values-zh-rCN/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values-zh-rCN/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rHK/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values-zh-rHK/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rHK/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values-zh-rHK/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rTW/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values-zh-rTW/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/attrs.xml -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/icon_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/icon_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /app/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/data_extraction_rules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/data_extraction_rules.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_qwerty.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_qwerty.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_qwerty_symbols.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_qwerty_symbols.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_strokes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_strokes.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_strokes_symbols_1.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_strokes_symbols_1.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_strokes_symbols_2.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_strokes_symbols_2.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/keyboard_strokes_symbols_3.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/keyboard_strokes_symbols_3.xml -------------------------------------------------------------------------------- /app/src/main/res/xml/method.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/main/res/xml/method.xml -------------------------------------------------------------------------------- /app/src/test/java/io/github/yawnoc/utilities/MappyTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/test/java/io/github/yawnoc/utilities/MappyTest.java -------------------------------------------------------------------------------- /app/src/test/java/io/github/yawnoc/utilities/StringyTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/test/java/io/github/yawnoc/utilities/StringyTest.java -------------------------------------------------------------------------------- /app/src/test/java/io/github/yawnoc/utilities/ValueyTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/app/src/test/java/io/github/yawnoc/utilities/ValueyTest.java -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/25.txt: -------------------------------------------------------------------------------- 1 | Initial F-Droid release. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/26.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/26.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/27.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/27.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/28.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/28.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/29.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 侍應, 樹熊 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/30.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/30.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/32.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/32.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/33.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 較為, 爆煲 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/35.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 暢順, 彈牙, 避彈衣 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/36.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/36.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/37.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/37.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/38.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 債主, 清盤 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/39.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/39.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/40.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/40.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/41.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/41.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/42.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/42.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/43.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 保重, 英皇壽辰 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/44.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/44.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/45.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/45.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/46.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/46.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/47.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 落街, 插蘇 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/48.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/48.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/49.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/49.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/50.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/50.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/51.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/51.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/53.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/53.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/54.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/54.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/55.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/55.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/56.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/56.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/57.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/57.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/58.txt: -------------------------------------------------------------------------------- 1 | * Added phrase 肚餓 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/59.txt: -------------------------------------------------------------------------------- 1 | * Added phrases 食夾棍, 爆坼 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/60.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/60.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/61.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/61.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/62.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/62.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/63.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/63.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/64.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/64.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/65.txt: -------------------------------------------------------------------------------- 1 | * Updated CMD links in Help and About 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/66.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/66.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/67.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/67.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/68.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/68.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/69.txt: -------------------------------------------------------------------------------- 1 | * Fixed keyboard failing to spawn in Android 16 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/70.txt: -------------------------------------------------------------------------------- 1 | * Fixed keyboard height not immediately updating in Android 16 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/71.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/changelogs/71.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/full_description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/full_description.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/featureGraphic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/featureGraphic.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/icon.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-1-traditional.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-1-traditional.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-2-strokes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-2-strokes.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-3-phrases.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-3-phrases.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-4-punctuation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-4-punctuation.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-5-simplified.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-5-simplified.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/phone-6-meh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/phone-6-meh.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/short_description.txt: -------------------------------------------------------------------------------- 1 | A minimalist Chinese keyboard. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/title.txt: -------------------------------------------------------------------------------- 1 | Stroke Input Method (筆畫輸入法) 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh/full_description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/fastlane/metadata/android/zh/full_description.txt -------------------------------------------------------------------------------- /fastlane/metadata/android/zh/short_description.txt: -------------------------------------------------------------------------------- 1 | 簡樸中文鍵盤者。 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh/title.txt: -------------------------------------------------------------------------------- 1 | 筆畫輸入法 (Stroke Input Method) 2 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = "Stroke Input" 2 | include ':app' 3 | -------------------------------------------------------------------------------- /stroke-input-screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stroke-input/stroke-input-android/HEAD/stroke-input-screenshot.png --------------------------------------------------------------------------------