From b8064717e35d7c96641d94efac2b47ff16f307bc Mon Sep 17 00:00:00 2001 From: ASL97 Date: Mon, 12 Jun 2023 15:45:39 +0800 Subject: [PATCH] Add Hacker Keyboard Layout Pack --- .../languages/hackerkeyboard/apk/build.gradle | 8 ++ .../hackerkeyboard/apk/flag/flag.svg | 3 + .../apk/src/main/AndroidManifest.xml | 6 ++ .../apk/src/main/play/contact-email.txt | 0 .../apk/src/main/play/contact-website.txt | 0 .../apk/src/main/play/default-language.txt | 1 + .../play/listings/en-US/full-description.txt | 4 + .../play/listings/en-US/short-description.txt | 1 + .../src/main/play/listings/en-US/title.txt | 1 + .../main/play/release-notes/en-US/alpha.txt | 1 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3406 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2076 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4857 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7526 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10507 bytes .../apk/src/main/res/values/strings.xml | 3 + addons/languages/hackerkeyboard/build.gradle | 0 .../hackerkeyboard/pack/build.gradle | 9 ++ .../pack/src/main/AndroidManifest.xml | 20 ++++ .../hackerkeyboard/PackBroadcastReceiver.java | 5 + .../ic_status_hackerkeyboard.png | Bin 0 -> 731 bytes .../ic_status_hackerkeyboard.png | Bin 0 -> 582 bytes .../ic_status_hackerkeyboard.png | Bin 0 -> 843 bytes .../ic_status_hackerkeyboard.png | Bin 0 -> 1123 bytes .../ic_status_hackerkeyboard.png | Bin 0 -> 1435 bytes .../src/main/res/values/hacker_strings.xml | 4 + .../pack/src/main/res/xml/hacker_compact.xml | 77 +++++++++++++++ .../pack/src/main/res/xml/hacker_full.xml | 92 ++++++++++++++++++ .../src/main/res/xml/hacker_keyboards.xml | 34 +++++++ .../pack/src/main/res/xml/hacker_qwerty.xml | 54 ++++++++++ settings.gradle | 1 + 31 files changed, 324 insertions(+) create mode 100644 addons/languages/hackerkeyboard/apk/build.gradle create mode 100644 addons/languages/hackerkeyboard/apk/flag/flag.svg create mode 100644 addons/languages/hackerkeyboard/apk/src/main/AndroidManifest.xml create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/contact-email.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/contact-website.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/default-language.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/full-description.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/short-description.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/title.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/play/release-notes/en-US/alpha.txt create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 addons/languages/hackerkeyboard/apk/src/main/res/values/strings.xml create mode 100644 addons/languages/hackerkeyboard/build.gradle create mode 100644 addons/languages/hackerkeyboard/pack/build.gradle create mode 100644 addons/languages/hackerkeyboard/pack/src/main/AndroidManifest.xml create mode 100644 addons/languages/hackerkeyboard/pack/src/main/java/com/anysoftkeyboard/languagepack/hackerkeyboard/PackBroadcastReceiver.java create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/drawable-hdpi/ic_status_hackerkeyboard.png create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/drawable-mdpi/ic_status_hackerkeyboard.png create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/drawable-xhdpi/ic_status_hackerkeyboard.png create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/drawable-xxhdpi/ic_status_hackerkeyboard.png create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/drawable-xxxhdpi/ic_status_hackerkeyboard.png create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/values/hacker_strings.xml create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_compact.xml create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_full.xml create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_keyboards.xml create mode 100644 addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_qwerty.xml diff --git a/addons/languages/hackerkeyboard/apk/build.gradle b/addons/languages/hackerkeyboard/apk/build.gradle new file mode 100644 index 0000000000..7efce8d6cc --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/build.gradle @@ -0,0 +1,8 @@ +ext.shouldBePublished = false +ext.notPublishingReason = 'Testing' + +apply from: "$rootDir/addons/gradle/pack_apk.gradle" + +dependencies { + implementation project(path: ':addons:languages:hackerkeyboard:pack') +} diff --git a/addons/languages/hackerkeyboard/apk/flag/flag.svg b/addons/languages/hackerkeyboard/apk/flag/flag.svg new file mode 100644 index 0000000000..5075a682de --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/flag/flag.svg @@ -0,0 +1,3 @@ + + + diff --git a/addons/languages/hackerkeyboard/apk/src/main/AndroidManifest.xml b/addons/languages/hackerkeyboard/apk/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..1c7d5a39e4 --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/AndroidManifest.xml @@ -0,0 +1,6 @@ + + + + diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/contact-email.txt b/addons/languages/hackerkeyboard/apk/src/main/play/contact-email.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/contact-website.txt b/addons/languages/hackerkeyboard/apk/src/main/play/contact-website.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/default-language.txt b/addons/languages/hackerkeyboard/apk/src/main/play/default-language.txt new file mode 100644 index 0000000000..beb9970be0 --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/play/default-language.txt @@ -0,0 +1 @@ +en-US diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/full-description.txt b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/full-description.txt new file mode 100644 index 0000000000..53a532dbdd --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/full-description.txt @@ -0,0 +1,4 @@ +A layout base on Hacker Keyboard for AnySoftKeyboard keyboard app. + +This is an expansion layouts pack for AnySoftKeyboard. +Install AnySoftKeyboard first, and then select the desired layout from AnySoftKeyboard's Settings->Keyboards menu. diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/short-description.txt b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/short-description.txt new file mode 100644 index 0000000000..f8bf600c97 --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/short-description.txt @@ -0,0 +1 @@ +AnySoftKeyboard Hacker Keyboard layout pack diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/title.txt b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/title.txt new file mode 100644 index 0000000000..85193a0c1a --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/play/listings/en-US/title.txt @@ -0,0 +1 @@ +Hacker Keyboard for AnySoftKeyboard diff --git a/addons/languages/hackerkeyboard/apk/src/main/play/release-notes/en-US/alpha.txt b/addons/languages/hackerkeyboard/apk/src/main/play/release-notes/en-US/alpha.txt new file mode 100644 index 0000000000..5096b92002 --- /dev/null +++ b/addons/languages/hackerkeyboard/apk/src/main/play/release-notes/en-US/alpha.txt @@ -0,0 +1 @@ +* Initial release. diff --git a/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-hdpi/ic_launcher.png b/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..754f3ce89260f7828d2b3cf15b75efa868db3cb5 GIT binary patch literal 3406 zcmV-U4YBfxP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 CWzbas literal 0 HcmV?d00001 diff --git a/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xhdpi/ic_launcher.png b/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..0e456c59cb3240b9ce6897cd81164e50158037b6 GIT binary patch literal 4857 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 K^-6?Y`2PUDBSOId literal 0 HcmV?d00001 diff --git a/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xxhdpi/ic_launcher.png b/addons/languages/hackerkeyboard/apk/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..dc4c46084143633e7e6eff6c359b23b172c39ce4 GIT binary patch literal 7526 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 + AnySoftKeyboard - Hacker Keyboard Layouts Pack + diff --git a/addons/languages/hackerkeyboard/build.gradle b/addons/languages/hackerkeyboard/build.gradle new file mode 100644 index 0000000000..e69de29bb2 diff --git a/addons/languages/hackerkeyboard/pack/build.gradle b/addons/languages/hackerkeyboard/pack/build.gradle new file mode 100644 index 0000000000..4802238ad6 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/build.gradle @@ -0,0 +1,9 @@ +ext.status_icon_text = "en" + +ext.dictionaryInputPossibleCharacters = null//"".toCharArray() +ext.dictionaryInputAdditionalInnerCharacters = null//"".toCharArray() + +//no dictionary at this time +ext.shouldGenerateDictionary = false + +apply from: "$rootDir/addons/gradle/language_pack_lib.gradle" diff --git a/addons/languages/hackerkeyboard/pack/src/main/AndroidManifest.xml b/addons/languages/hackerkeyboard/pack/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..f2f7e17417 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/AndroidManifest.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + diff --git a/addons/languages/hackerkeyboard/pack/src/main/java/com/anysoftkeyboard/languagepack/hackerkeyboard/PackBroadcastReceiver.java b/addons/languages/hackerkeyboard/pack/src/main/java/com/anysoftkeyboard/languagepack/hackerkeyboard/PackBroadcastReceiver.java new file mode 100644 index 0000000000..4d513c7688 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/java/com/anysoftkeyboard/languagepack/hackerkeyboard/PackBroadcastReceiver.java @@ -0,0 +1,5 @@ +package com.anysoftkeyboard.languagepack.hackerkeyboard; + +import com.anysoftkeyboard.addon.PackBroadcastReceiverBase; + +public class PackBroadcastReceiver extends PackBroadcastReceiverBase {} diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/drawable-hdpi/ic_status_hackerkeyboard.png b/addons/languages/hackerkeyboard/pack/src/main/res/drawable-hdpi/ic_status_hackerkeyboard.png new file mode 100644 index 0000000000000000000000000000000000000000..8d84cbca12e5792172c210f4584deab15a6e4d79 GIT binary patch literal 731 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k0wldT1B8K;Lb6AYF9SoB8UsT^3j@P1pisjL z28L1t28LG&3=CE?7#PG0=Ijcz0ZK3>dAqwXFs$lTHUje4OFVsD*`KpY@NjZpz4XeS zfq`+gr;B5V$MLt5d^>srB^u^`E?u6PG>bJ&V4`MknqpRv&WTA=PCAKgN>GeEajY$E z@szVmbks~UPc`YdP1N8PtMfj4OrtPY&3@wi7k!1h<+^A7{yO*Z^3zj#f3NX-|9jr@ z@3rR})qH3DNxt)@=OFtD`RmBnWctfgs?Q7rfw15 zS7&_go)sp);@2hNcSYNm|5@>Brb|imRcXG8E34~*zd8k)tav4Q`|}B<;~{VRU49+( ztvuT|^W1COn@`2R?##WoVQ<*g_Rb9dkmA^@x(t#R{Iv~4)Vf_C3YIr))zf5IZXv(+ zn;pYv2CoBb49|AhRyLkzSd*;OZ^IWHc(j@!>eZs93^Kouu79C3=f3Jrt*o)%^{aX71BI0*p!3 z64!{5l*E!$tK_0oAjM#0U}UUoV5)0m5@Kj%WngJ#XsB&qU}a#C@Z;T76b-rgDVb@N zxHSka4buc_(16=el9`)YT#}eufLo8-hVpMfJscoCIf+TBISi?Jje?6F1H~9TUHx3v IIVCg!0NfWSHUIzs literal 0 HcmV?d00001 diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/drawable-mdpi/ic_status_hackerkeyboard.png b/addons/languages/hackerkeyboard/pack/src/main/res/drawable-mdpi/ic_status_hackerkeyboard.png new file mode 100644 index 0000000000000000000000000000000000000000..f4b6a937b9d89daf2a28934d6e2aea0634448b0d GIT binary patch literal 582 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1g=CK)Uj~LMH3o);76yi2K%s^g z3=E|P3=FRl7#OT(FffQ0%-I!a1C(G&@^*J&U|7|wYy{-7mw5WRvOi~);Nj%Hdg+xt z0|TR&r;B5V#p$<`HhM8TinzY#lRmg$Y1lz~gNPrzU9kacbaKD4|6$SA6*+w)lC?Ww zVXID4l5*E0eia23p-n=}YVTyaBh^zm0Xkxq!^40jEr>+Om&S+LJWPnaO-i~Q2q_5hXbT1Cow5ChaokuQE<^?pcsRvtDnm{r-UW| Dg!9cS literal 0 HcmV?d00001 diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/drawable-xhdpi/ic_status_hackerkeyboard.png b/addons/languages/hackerkeyboard/pack/src/main/res/drawable-xhdpi/ic_status_hackerkeyboard.png new file mode 100644 index 0000000000000000000000000000000000000000..033eaa9b223ca7a7dfbb4432c8026c80d85af12d GIT binary patch literal 843 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 literal 0 HcmV?d00001 diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/values/hacker_strings.xml b/addons/languages/hackerkeyboard/pack/src/main/res/values/hacker_strings.xml new file mode 100644 index 0000000000..4540031a20 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/res/values/hacker_strings.xml @@ -0,0 +1,4 @@ + + + hacker keyboard + diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_compact.xml b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_compact.xml new file mode 100644 index 0000000000..f898ec50cf --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_compact.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_full.xml b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_full.xml new file mode 100644 index 0000000000..01dde38127 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_full.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_keyboards.xml b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_keyboards.xml new file mode 100644 index 0000000000..083227f04e --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_keyboards.xml @@ -0,0 +1,34 @@ + + + + + + + diff --git a/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_qwerty.xml b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_qwerty.xml new file mode 100644 index 0000000000..e6b8d02d74 --- /dev/null +++ b/addons/languages/hackerkeyboard/pack/src/main/res/xml/hacker_qwerty.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/settings.gradle b/settings.gradle index 0ea46f9114..8b0df302a2 100644 --- a/settings.gradle +++ b/settings.gradle @@ -31,6 +31,7 @@ include ':addons:languages:french:pack', ':addons:languages:french:apk' include ':addons:languages:georgian:pack', ':addons:languages:georgian:apk' include ':addons:languages:german:pack', ':addons:languages:german:apk' include ':addons:languages:greek:pack', ':addons:languages:greek:apk' +include ':addons:languages:hackerkeyboard:pack', ':addons:languages:hackerkeyboard:apk' include ':addons:languages:hawaiian:pack', ':addons:languages:hawaiian:apk' include ':addons:languages:hebrew:pack', ':addons:languages:hebrew:apk' include ':addons:languages:hindi:pack', ':addons:languages:hindi:apk'