Compare commits

..

1895 commits

Author SHA1 Message Date
Eran Leshem
d2217f099a
Export DictionaryPackInstallBroadcastReceiver (#1756) 2025-06-29 20:02:29 +02:00
Eran Leshem
4f58e5d013
Support Latin (#1749) 2025-06-28 16:25:15 +02:00
Helium314
10a5eab3bc don't change insets when view is hidden by hardware keyboard
seems to happen only in some apps, e.g. simplemobiletools notes
issue only occurs when keyboard is suppressed after it has been shown and a new input view is created

fixes GH-1455
fixes GH-702
2025-06-28 16:20:54 +02:00
Helium314
8d876a15f0 fix crash in isShowingKeyboardId with hardware keyboard 2025-06-28 15:16:25 +02:00
Helium314
945a700b71 do the correct checks when loading blacklist file
fixes GH-1475
2025-06-28 14:11:00 +02:00
Helium314
53a899794e register OnSharedPreferenceChangeListener in LatinIME.onCreate
because it's unregistered in onDestroy
(registering twice is not an issue)

though maybe not unregistering would be more correct, as it's registered in app.onCreate?

fixes GH-1670
2025-06-24 06:27:51 +02:00
Eran Leshem
c2068224a0
Change settings search keyboard action to Search. (#1734) 2025-06-22 12:23:46 +02:00
Eran Leshem
9193c95c2b
Ignore spacer columns when calculating emoji page size (#1721) 2025-06-22 12:18:37 +02:00
Helium314
76ebf99921 deal with Android refusing to add word to user dictionary
fixes GH-1735
2025-06-22 12:11:20 +02:00
Helium314
77a728e390 don't pre-select unavailable locale when adding dictionary 2025-06-19 09:35:08 +02:00
Helium314
7b0c511857 add logging when hiding window
may help with GH-1710
2025-06-16 19:43:32 +02:00
Eran Leshem
e062efb3d4
Always default popup VisibleOffset to keyboard.mVerticalGap (#1722) 2025-06-16 19:14:47 +02:00
lurebat
d356f9f54b
Add broadcast intent keys (#1675)
This commit introduces three new keycodes: SEND_INTENT_ONE, SEND_INTENT_TWO, and SEND_INTENT_THREE.

When these keys are pressed, a broadcast intent is sent with the action `helium314.keyboard.latin.ACTION_SEND_INTENT`. The intent includes an extra `EXTRA_NUMBER` (integer) indicating which of the three keys was pressed (1, 2, or 3).

This functionality allows external applications to react to these specific key presses.
2025-06-16 18:55:15 +02:00
Helium314
9549389be7 use different method for hiding keyboard
fixes GH-1719
2025-06-15 21:09:53 +02:00
Helium314
2dc838798d use hasLabels for TLD popups
and add documentation
2025-06-15 19:49:32 +02:00
Helium314
24a2eddc1f avoid StringIndexOutOfBoundsException when initializing stringbuilder from other stringbuilder 2025-06-15 17:43:06 +02:00
Helium314
ef3191a2eb prepare for selecting text with cursor movement keys when shift is enabled manually
not enabled, as it's not working reliably
2025-06-15 17:41:05 +02:00
Helium314
e430d13c4a improvements to hardware keyboard handling 2025-06-14 12:53:46 +02:00
Helium314
9c97a6b9bf move some key press logic from LatinIme into KeyboardActionListener 2025-06-14 12:16:29 +02:00
Helium314
a37de668c0 enable hardware keyboard handling again, with improved handling 2025-06-14 11:29:26 +02:00
Helium314
63dad1549e redirect suggestion strip view code input to KeyboardActionListener 2025-06-13 20:57:49 +02:00
Helium314
f06a553d2c make sure selection start is before end
this should not be necessary according to documentation, but apparently there are apps (even by Google!) that can't deal with documented behavior
see comments in GH-1512
2025-06-13 20:49:53 +02:00
Eran Leshem
e9e3bdac17
Display emoji descriptions in popups (#1542) 2025-06-11 22:17:26 +02:00
Eran Leshem
d5cd18ecaa
Remove regional indicator symbol letters from emoji list (#1680) 2025-06-11 22:17:05 +02:00
Eran Leshem
871ac110ad
Move non-com global TLDs to end of list (#1668) 2025-06-11 22:16:39 +02:00
Helium314
49c9d77978 try more aggressive proguard settings 2025-06-11 22:15:49 +02:00
Eran Leshem
79726f1a9d
Fix onInlineSuggestionsResponse crash (#1700) 2025-06-11 21:59:36 +02:00
Helium314
f2ec441f45 update version and translations 2025-06-11 21:57:06 +02:00
Eran Leshem
62f82d15cf
Show incognito button in all toolbar modes (#1681) 2025-06-11 21:43:04 +02:00
Eran Leshem
f8d3795302
Disable emoji view animation according to system setting (#1696) 2025-06-11 21:29:06 +02:00
Helium314
9cec401e1e don't add single letter words with AddToPersonalDictionary setting
fixes GH-1605
2025-06-11 20:01:59 +02:00
Helium314
83ff9b3345 bring up keyboard when adding a new word in personal dictionary screen
fixes GH-1663
2025-06-11 19:43:42 +02:00
Eran Leshem
8ae241b032
Only show some suggestion settings if toolbar is in compatible mode. (#1693) 2025-06-11 17:24:40 +02:00
Helium314
80ba394b95 move some code from RichInputConnection to StringUtils
so we can easily add unit tests
and maybe improve the awkward behavior
2025-06-09 20:20:27 +02:00
Helium314
52744b7427 full reload after changing icon style
should fix GH-1686
2025-06-09 16:05:41 +02:00
Helium314
af5c41c83c add NO_LANGUAGE inside remember
should fix GH-1678
2025-06-08 21:42:33 +02:00
Helium314
e21168b1d3 merge labelFlags when when replacing comma & period
so e.g. dvorak z key doesn't get .com popup hint by default
2025-06-08 11:40:38 +02:00
Helium314
11f45a6209 show PREF_EMOJI_KEY_FIT setting only if PREF_EMOJI_FONT_SCALE is not 100% 2025-06-08 11:26:23 +02:00
Helium314
c8322dd4a2 make KeyCode.IME_HIDE_UI work
fixes GH-1272
2025-06-08 11:16:00 +02:00
Helium314
896e207c5f remove the fallback to original key type when replacing comma & period
relevant e.g. for dvorak in url fields, where otherwise the q has functional key background
2025-06-08 11:07:51 +02:00
Helium314
5cd184e5c2 upgrade version 2025-06-07 23:04:18 +02:00
fakerat
e98c3210dc
fix forced dark mode issue in android 10 or later (#1671) 2025-06-07 23:03:21 +02:00
Helium314
7cec6b148c remove en-rXC files 2025-06-07 22:35:40 +02:00
Helium314
bd85498810 remove useless translations of strings marked as not translatable (because they reference other strings) 2025-06-07 22:31:48 +02:00
Md. Rifat Hasan Jihan
51a863d840
remove non-translatable string (#1651) 2025-06-07 21:59:12 +02:00
Helium314
defec4a27f update translations 2025-06-07 21:58:25 +02:00
Helium314
ccc287c4ea use CombiningRules extra value for setting the combiner
allows flexibility which is needed for the combiner suggested in GH-214
2025-06-07 21:44:14 +02:00
Helium314
48f6c21b57 fix recognition of our own inputMethod 2025-06-07 21:01:48 +02:00
Eran Leshem
9efe534c03
Fix locale_key_texts loading for he locale (#1669) 2025-06-07 20:38:38 +02:00
Eran Leshem
16ce183942
Fix NextScreenIcon direction for RTL system languages (#1667) 2025-06-07 20:34:47 +02:00
Helium314
867438fdc0 simplify the way of setting suggestions
remove the excursion to latinIME
have Suggest return suggestions instead of calling a callback
now the relevant code can be mostly found in inputLogic (except for handling batch input)
2025-06-07 20:26:06 +02:00
BlackyHawky
0787a79de4
Slightly adjust the dictionary dialog (#1656) 2025-06-03 19:27:01 +02:00
Helium314
97aec851e4 avoid dictionary re-ordering on UI interaction 2025-06-02 20:41:52 +02:00
Helium314
7dbf5ea86d
Add MultiSliderDialog (#1580) 2025-06-02 20:33:10 +02:00
Helium314
d951a1dbdd don't try to back up directories matching the file name patterns
fixes #1653
2025-06-02 17:36:06 +02:00
BlackyHawky
20d4704090
Fix unnecessary indentations in the Subtype screen (#1516) (#1648) 2025-06-02 17:12:11 +02:00
Helium314
d0787201ae get rid of warnings in SuggestionStripView
and add a comment
2025-06-01 19:53:56 +02:00
Helium314
0a961a68db consider that voice input key visibility should depend on the text field 2025-06-01 19:17:44 +02:00
Helium314
7499c38e13 add missing key codes to Key.isModifier, and move the information into KeyCode 2025-06-01 18:40:54 +02:00
Helium314
f81f6a7f7d some additional safety, so we show at least a working keyboard in case dictionary or native library loading fails 2025-06-01 17:03:16 +02:00
Helium314
07ea14ea16 move code related to showing more suggestions into MoreSuggestionsView 2025-06-01 16:38:59 +02:00
Helium314
32099748e5 move PopupSuggestionsView to Kotlin
and rename to MoreSuggestionsView
2025-06-01 13:36:14 +02:00
Helium314
538a26a9b8 no need to provide KeyboardIconsSet when creating a toolbar key 2025-06-01 13:21:03 +02:00
Helium314
8284adb32c small cleanup in ClipbardHistoryView 2025-06-01 13:19:38 +02:00
Helium314
180bd179c5 move device locked check to common place 2025-06-01 13:13:00 +02:00
Helium314
12c1cb0cd2 move SuggestionStripView to Kotlin 2025-06-01 13:06:14 +02:00
Eran Leshem
ec2bbb461d
Add toolbar modes (#1606) 2025-06-01 09:50:55 +02:00
Helium314
38bbcd9a83 add editorconfig, udpate gitignore 2025-06-01 09:50:24 +02:00
Helium314
8a55f57ccf decrease minimum height scale to 30%
resolves GH-1647
2025-05-31 20:46:32 +02:00
Helium314
e01714bbee mark string as not translatable 2025-05-31 20:39:11 +02:00
Helium314
3fcea486be gather crash information more aggressively
especially for crashes while device is locked
might help with #801
2025-05-31 20:30:18 +02:00
Helium314
e4e99a7e5d fix NPE related to recent RichIMM changes 2025-05-31 14:28:02 +02:00
Helium314
c321c2c684 replace AsyncTask 2025-05-31 14:01:36 +02:00
Helium314
7dc6279d87 todos after RichIMM overhaul 2025-05-31 13:56:02 +02:00
Helium314
ad71b49c04 make language slide work with fallback subtypes 2025-05-31 13:31:22 +02:00
Helium314
09eecc0502 move RichInputMethodManager to Kotlin 2025-05-31 13:22:22 +02:00
Helium314
424df5fb0d fix file handling in DictionaryGroup (again) 2025-05-31 11:59:05 +02:00
Eran Leshem
b903e10b12
Add some missing emoji variants (#1622) 2025-05-31 10:44:46 +02:00
Helium314
e6a412750d update version and changelogs 2025-05-31 10:16:54 +02:00
Helium314
7b91221339 update translations, fix broken string references escaping the @ in @string/ 2025-05-31 10:06:03 +02:00
Helium314
f0d4aaa9c3 update reading dictionaries available for download 2025-05-31 09:58:29 +02:00
Helium314
0e86978df3 different way of implementing larger toolbar key
see GH-1556, fixes GH-1621
2025-05-31 09:35:33 +02:00
Eran Leshem
82bea7facf
Don't show dictionary debug info on toolbar (#1644) 2025-05-31 08:00:00 +02:00
Eran Leshem
4d441e5bdf
Fix partial emoji swiping (#1645) 2025-05-30 22:49:37 +02:00
Eran Leshem
92b1907c61
Drop non-emoji single character suggestions from emoji dictionary (#1643) 2025-05-30 22:40:52 +02:00
Helium314
37821ff8ad use old way of getting main dictionary suggestions on facilitator thread
apparently this fixes GH-1614 (spurious crash in the native google library on Android 7)
though maybe the reason is a difference between ExecutorUtils and coroutines?
2025-05-30 20:35:32 +02:00
Helium314
dbeddcd658 don't show tld hint label in numpad
see #1640
2025-05-30 20:19:26 +02:00
Helium314
31a8761bfa don't always use the same coordinate when creating fake ComposedData for a word
avoids some sort of cache returning previous suggestions, see GH-1542
2025-05-29 09:32:12 +02:00
Helium314
120734ff41 avoid issues when resetting DictionaryFacilitatorImpl
see GH-801 (probably does not fix the OnePlus issue)
2025-05-28 22:31:18 +02:00
Helium314
0d5159c2d7 comment currently unsupported keycodes to avoid confusion 2025-05-27 20:25:05 +02:00
Helium314
b44dd29b0c consider implicitly enabled subtypes when switching with language switch button
fixes GH-1608
2025-05-27 18:14:05 +02:00
Helium314
7da068145f fix internal dictionaty file names
resulted in assets dicts being extracted on every app start
2025-05-25 16:52:56 +02:00
Helium314
deec4d1f98 upgrade version, add changelog, fix lint issues with strings 2025-05-24 18:23:29 +02:00
Helium314
e21c135b90 don't include default latin non-qwerty layout in subtype display name
so now we're back at "French" and not "French (AZERTY)"
2025-05-24 16:50:51 +02:00
Helium314
154f7c3a1e don't create unnecessary additional subtypes when manually selecting qwerty 2025-05-24 16:46:18 +02:00
Helium314
ed540466e9 remove the xliff tags from stings
caused some issues with weblate, and meaning of %s is now in comment
2025-05-24 16:04:56 +02:00
Helium314
05ea8b7f76 remove unused strings (and rename a string) 2025-05-24 15:43:44 +02:00
Helium314
bf7e0542f5 remove the explicit "alphabet" from no_language (layout is more visible than previously) 2025-05-24 15:09:22 +02:00
Helium314
c4e7c84608 remove complicated and obsolete generic ubtype_with_layout_ and subtype_no_language_ strings
and simplify the place where they were used
2025-05-24 14:56:58 +02:00
Helium314
f72e8f41f4 make SubtypeLocaleUtils less convoluted
still harder to understand than necessary...
2025-05-24 12:45:36 +02:00
Helium314
69540b8d9f improve localizedDisplayName
don't use resoruces.getIdentifier
use override names e.g. for English (UK) for consistent layout names
merge with getLocaleDisplayNameInLocale
2025-05-24 11:35:58 +02:00
Helium314
d1120807d3 move InputMethodSubtype.displayName to SubtypeLocaleUtils 2025-05-24 09:29:11 +02:00
Helium314
9dbce40fd7 remove essentially duplicate functions 2025-05-24 09:14:35 +02:00
Helium314
82e6d8a5cb move SubtypeLocaleUtils to Kotlin 2025-05-24 08:25:18 +02:00
Bernardo do Amaral Teodosio
175b5ea197
Fix Wrong "\" in pt-BR translations for the onboarding (#1581) 2025-05-24 07:09:11 +02:00
Helium314
917edee918 fix obviously broken links in description
fixes GH-1568
2025-05-24 07:04:49 +02:00
Helium314
ead8fb36cb update translations 2025-05-24 07:01:05 +02:00
Helium314
3f51bd4da5 tune layout edit dialog 2025-05-23 21:25:37 +02:00
Helium314
7bc74810b1 fix broken file handling in DictionaryGroup 2025-05-23 20:42:52 +02:00
Eran Leshem
e25300d832
Add comma to the repurposed comma key's popup in URL and email mode (#1594) 2025-05-21 22:48:33 +02:00
Helium314
e034065236 add simple DicitonaryFacilitator for a single dictionary (to be used later) 2025-05-21 22:43:01 +02:00
Helium314
954a27b7c9 refactor creation of main dictionary 2025-05-21 22:13:53 +02:00
Helium314
b1b357d6b8 move DictionaryInfoUtils to Kotlin 2025-05-21 21:02:16 +02:00
Helium314
e32a0c8e98 move ComposedData to Kotlin
and add method to create ComposedData for a given word
2025-05-21 18:13:58 +02:00
Helium314
d9a779a66e update comments and documentation
currently irrelevant changes to dump methods
2025-05-21 17:35:24 +02:00
Helium314
18549151b3 add color for popup key icons
fixes GH-1577
2025-05-20 23:05:01 +02:00
Eran Leshem
9d38471f72
Enlarge toolbar button and icon (#1556) 2025-05-20 22:57:02 +02:00
Helium314
4289e487e9 prepare for adding customizable weights for user-provided dictionaries 2025-05-20 22:17:10 +02:00
Helium314
27a2300631 remove unused "account" 2025-05-20 21:32:23 +02:00
Helium314
900dfa1b9c no need for special lock object 2025-05-20 21:18:38 +02:00
Helium314
9709c0d0a2 more detailed comment on feature 2025-05-20 21:17:08 +02:00
Helium314
960f058b7e move DictionaryFacilitatoryImpl to Kotlin
only very minor changes to behavior
using coroutines instead of ExecutorUtils
some code moved out of "main" facilitator
2025-05-20 20:44:57 +02:00
Helium314
4ecf185431 add label for timestamp key 2025-05-18 22:03:04 +02:00
Helium314
e45f0660a2 process label for simple popup keys
now toolbar keys and defined key labels work in simple layout popup keys
2025-05-18 21:52:25 +02:00
Helium314
e7ccf72fc5 reduce unnecessary json parse attempts when editing layouts 2025-05-18 21:32:53 +02:00
Helium314
e154001d44 fix broken links, remove outdated information 2025-05-18 20:48:28 +02:00
Henré Botha
44558ceeaa
Fix broken internal link (#1574) 2025-05-18 20:44:23 +02:00
Helium314
aa8068b5d2 functional key background now also sets functional key text color
for consistency, fixes GH-1576
2025-05-18 20:15:16 +02:00
Helium314
466ecfb78c reload keyboard theme when changing number row setting
otherwise emoji keyboards are not properly reloaded and may end up misaligned
2025-05-18 19:20:07 +02:00
Eran Leshem
731c6cdd5e
Allow for switching between emoji categories using swipe left/right (#1488) 2025-05-18 19:18:23 +02:00
Helium314
199f177c2d add left/right variants of alt, ctrl and meta
for picky apps, fixes GH-1579
2025-05-18 15:25:10 +02:00
Helium314
66c3dd7a81 use correct checksum 2025-05-17 20:33:31 +02:00
Helium314
9c9fe392d1 fix dealing with prases without non-whitespace letters in SpacedTokens 2025-05-17 16:56:22 +02:00
Helium314
c33c2c5823 remove test logging 2025-05-17 09:54:27 +02:00
Helium314
4d91702073 add setting for default emoji skin tone
fixes GH-817
2025-05-16 21:48:07 +02:00
Helium314
a0f77c1392 don't suggest unsuported emojis
and invert isSupported to isUnsupported to avoid confusion what happens when asking about non-emojis
2025-05-16 21:20:34 +02:00
Helium314
35df3e7bae upgrade dependencies 2025-05-16 21:09:16 +02:00
Helium314
f48438f30a use SpacedTokens instead of regex for splitting on whitespace
and where possible directly used SpacedTokens to avoid unnecessary list
2025-05-14 17:04:31 +02:00
Helium314
c96eec601d remove unused code / comments in EmojiPalettesView and related resources 2025-05-14 16:49:37 +02:00
Devy Ballard
c9059f3616
Apps dictionary (#1361) 2025-05-14 16:41:50 +02:00
Devy Ballard
2fe87eea9b
Inline code point loops (#1408) 2025-05-14 16:24:21 +02:00
Eran Leshem
c4386df186
Display a toast after restoring a backup. Seems like useful feedback. (#1531) 2025-05-14 16:23:39 +02:00
Helium314
95d4bfe97c
Update managing emoji categories (#1515) 2025-05-14 16:22:50 +02:00
Helium314
880c7eaf33 update version and translations 2025-05-14 16:11:52 +02:00
Helium314
b5837c3380 try saving crash logs when device is locked 2025-05-14 15:58:24 +02:00
Helium314
e6ec1c7bca fix debug mode crash sometimes occurring when deleting korean
fixes GH-1551
2025-05-10 17:37:20 +02:00
Helium314
549675d8d7 change query for other IME packages
should fix GH-1340
2025-05-10 15:50:58 +02:00
Helium314
a1e05c847e no need for full stack trace when system gesture lib is not found 2025-05-10 09:27:25 +02:00
Eran Leshem
1f8a94f219
Adjust emoji key size according to emoji font size (#1543) 2025-05-09 16:49:23 +02:00
Helium314
3c36033acb add more information to exception when InputMethodInfo is not found
apparently this randomly happens, see GH-1521
2025-05-09 05:16:22 +02:00
Helium314
97db67d7eb increase contacts dictionary frequency
because contacts rarely got suggested, see GH-1361
2025-05-07 18:23:47 +02:00
Helium314
a3dff524cb avoid problems with hacky way of saving AllColors theme name
see GH-1528
2025-05-06 18:58:14 +02:00
Helium314
366ee5ae28 workaround for page start / page end toolbar keys not working in compose text fields
fixes GH-1477
2025-05-04 20:33:41 +02:00
Helium314
91b177d204 update version, translations and dependencies 2025-05-03 07:52:16 +02:00
Eran Leshem
4f356086d7
Fix direction of word-left & word-right with RTL scripts (#1530) 2025-05-03 07:02:38 +02:00
Eran Leshem
60a5fe1e03
Go back to setFitsSystemWindows, with an added workaround that seems to make it reliable. (#1536) 2025-05-02 23:11:58 +02:00
Helium314
d8bf27f180 add missing items in v31 dialog theme
resolves GH-1518
2025-05-02 05:35:27 +02:00
Helium314
2a7ac3cf79 use default font for titles 2025-05-01 20:27:56 +02:00
Eran Leshem
875491a0e1
Recognize the he language code as Hebrew (#1529)
in addition to outdated `iw` that is used on Android 14 and older
2025-05-01 20:17:41 +02:00
Helium314
9f06394a1a consistent indent 2025-04-29 19:36:47 +02:00
Froingo
ad375cc3a3
Add korean phonetic layout (#1500) 2025-04-29 19:32:03 +02:00
Helium314
011bc96ec9 consider padding when adding keyboard split
fixes GH-1520
2025-04-29 16:17:28 +02:00
Helium314
da62457c90 save logs from the internal logger again, but keep logcat for getting older warning and error log entries 2025-04-28 21:20:32 +02:00
Helium314
38547b0c81 fallback to default layouts on parsing errors 2025-04-28 19:50:31 +02:00
Helium314
8b36ff1c54 skip early on empty hint labels 2025-04-28 19:25:28 +02:00
Eran Leshem
5eff3b992b
Restore Key.LABEL_FLAGS_PRESERVE_CASE, to fix uppercase TLDs in popup (#1517) 2025-04-28 14:27:36 +02:00
Helium314
b5dece2ff4 improve behvavior of slider preference
using onConfirm instead of always onValueChange (which is called when sliding, but we're mostly interested in changed settings)
2025-04-28 13:56:36 +02:00
Helium314
1d441a8ca6 more workarounds for Korean
not just space might delete text, but also other separators
now this problem is avoided in a more generic way
fixes GH-1447
2025-04-27 18:59:29 +02:00
Eran Leshem
9c727f342d
Remove TLD popup hint (#1511)
Co-authored-by: Helium314 <helium314@mailbox.org>
2025-04-27 16:19:26 +02:00
Eran Leshem
bedb9d1517
Fix settings search insets by moving top & horizontal insets to the top of the setting screen. (#1510) 2025-04-27 16:03:18 +02:00
Helium314
54c2c364a0 close background image dialog when deleting image 2025-04-27 15:44:59 +02:00
Helium314
106a74d749 upgrade version and translations 2025-04-26 13:55:40 +02:00
Helium314
322f8f9712 also consider default layouts when removing custom layouts without file
was missing in d15a97ccba
also rearrange the code a little
fixes GH-1490
2025-04-26 13:24:10 +02:00
Eran Leshem
6d9f69a4b6
Fix keyboard insets on Android 15, again (#1497) 2025-04-26 07:34:27 +02:00
Gabriele Monaco
14b5439a97
Use the euro sign for PMS (#1504) 2025-04-25 20:04:05 +02:00
Eran Leshem
01c0cd9de2
Saving log using logcat (#1487)
Old logger will be removed later, see discussion in PR
2025-04-25 17:19:58 +02:00
Helium314
e60efba59d remove some unnecessary code
looks like with edge to edge the status bar color is set automatically
also slightly rearrange code for showing welcome wizard and crash report dialog
2025-04-25 17:03:34 +02:00
Eran Leshem
5b32118b08
Add title to spell checker settings (#1501) 2025-04-25 16:53:22 +02:00
Eran Leshem
69bcca0a22
Apply padding on all sides on settings screens (#1496) 2025-04-22 22:29:03 +02:00
Helium314
49ed863a7e upgrade version and translations 2025-04-21 10:23:49 +02:00
Helium314
46f9227615 properly reload emoji keyboards (fixes split layout change not shown) 2025-04-21 09:48:22 +02:00
Helium314
7e59bcc799 remove weird workaround to get acceptable layout edit dialog positioning
not necessary any more after enabling edge to edge
2025-04-21 08:29:50 +02:00
Eran Leshem
d9f17733d9
Make settings screens fully usable on Android 15 (#1484)
enable edge to edge in settings for all Android versions to avoid minor glitches and have more consistent appearance
2025-04-21 08:06:41 +02:00
Helium314
d15a97ccba consider all layout types when checking for custom layouts without file
fixes #1490
2025-04-21 07:37:42 +02:00
Helium314
da7ab05920 remove old upgrade functionality done for migration from previous package name
should be fine after more than a year of HeliBoard
fixes issue when restoring custom layouts

upgrade now would need to be OpenBoard -> HeliBoard <= 2.3 -> HeliBoard >= 3.0
2025-04-21 07:33:58 +02:00
Helium314
d87ed8e53d fix pattern for files to back up
see #1490
2025-04-21 06:03:32 +02:00
Eran Leshem
1012386c8c
more reliable fix for bottom inset padding on edge-to-edge (#1486) 2025-04-20 18:58:58 +02:00
Helium314
7748ed75fe clarify when we use our own name for the language instead of using whatver is provided by the system 2025-04-19 08:35:46 +02:00
Benson Muite
c32b3bada4
Keyboard layouts for languages primarily used in Africa (#1483) 2025-04-19 08:27:58 +02:00
Helium314
e042adc5b8 Merge remote-tracking branch 'refs/remotes/origin/main' 2025-04-18 10:04:19 +02:00
Eran Leshem
901e745158
Fix bottom of keyboard being under navigation bar (#1461)
mostly for Android 15+, but issues may also occur on older Android versions
2025-04-18 10:02:27 +02:00
Helium314
91554b02eb fix unchanged layout list when deleting secondary layout 2025-04-14 18:46:41 +02:00
Helium314
fe7f1a1b38 fix crash when deleting subtype
fixes GH-1476
2025-04-14 17:06:34 +02:00
Helium314
8fddf94121 fix unable to change one-handed mode scale 2025-04-08 16:10:04 +02:00
Helium314
003ec854ab update version 2025-04-06 19:20:01 +02:00
Helium314
00ae92318d add missed changelog translations 2025-04-06 18:33:06 +02:00
Helium314
e4cd58a722 update translations 2025-04-06 18:32:23 +02:00
Eran Leshem
f4b4705e81
Add bottom inset padding on Android15+ (#1457) 2025-04-06 10:54:39 +02:00
Helium314
d4960c73dc fix tests after recent changes 2025-04-06 10:52:24 +02:00
Helium314
22eb48ff91 add comments about build variants 2025-04-06 10:50:10 +02:00
Helium314
6995266bd1 treat default button as value change for SliderPreference 2025-04-05 10:24:24 +02:00
Eran Leshem
087f87e95c
Optimize debug build (#1411) 2025-04-05 08:43:24 +02:00
Helium314
8edea4f7c5 allow renaming main layouts in subtypeScreen 2025-04-03 17:09:27 +02:00
Helium314
d79c84d7df fix issues when renaming or deleting layouts 2025-04-03 17:09:15 +02:00
Helium314
57deb82ca7 remove todo section from readme 2025-03-31 20:13:28 +02:00
Helium314
7a57f5a24f make searchText non-saveable and add a comment 2025-03-31 20:12:52 +02:00
Helium314
452770566c avoid creating additional subtypes that are the same as a resource subtype 2025-03-31 16:31:52 +02:00
Helium314
8247366bdd avoid issues with prefChanged not changing 2025-03-31 16:27:16 +02:00
Helium314
3dbd9c6ed9 slightly adjust behavior and layouts of subtype screen 2025-03-31 01:27:06 +02:00
Helium314
6bbce0b5ca change subtype dialog to screen
mostly just moved the content and adjusted necessary calls
still needs some minor tweaking
2025-03-30 12:40:06 +02:00
Helium314
ac805a9286 fix some issues with renaming color schemes
fixes GH-1449 and some more unreported bugs
2025-03-30 12:03:21 +02:00
Helium314
8932fc84e1 add timestamp keycode and setting for adjusting format, fixes GH-846 2025-03-29 12:36:07 +01:00
Helium314
525c4e59b6 confirm color in color picker dialog on done, fixes GH-1443 2025-03-29 11:47:06 +01:00
Helium314
a3fcce26a7 add all_colors color for popup key text, fixes #1297 2025-03-29 10:48:14 +01:00
Helium314
58778b1f23 add all_colors color for key preview text, fixes #1434 2025-03-29 10:38:43 +01:00
Helium314
fbfff03541 add all_colors color for key text in emoji keyboard, fixes #1058 2025-03-29 10:18:27 +01:00
Helium314
a1f991088d reduce font size for multilibgual typing in settings 2025-03-29 07:19:17 +01:00
Helium314
10af5def2b deal with some very bad behavior of firefox, fixes #1139 2025-03-27 21:04:42 +01:00
Helium314
a745c92e05 update ndk and translations 2025-03-26 21:26:05 +01:00
Helium314
b26ba76221 add test related to GH-1408 2025-03-26 20:57:54 +01:00
Helium314
1b1dbd4006 upgrade robolectric version to make tests work again 2025-03-26 20:38:06 +01:00
Helium314
f06521c8ec make text fields follow content language direction 2025-03-26 20:07:47 +01:00
Helium314
0847bac3d5 upgrade target SDK to 35
might cause issues with hebrew and indonesian on Android 15 devices due to changed language codes
2025-03-26 19:56:46 +01:00
Helium314
f5bc89b91d make reverting autocorrect on backspace optional
fixes GH-210
2025-03-26 19:18:13 +01:00
Helium314
c0b14635fd fix issue that could result in autospace being added before period 2025-03-26 18:29:57 +01:00
Helium314
b600431af9 reduce vertical padding for preference 2025-03-26 18:11:47 +01:00
Helium314
66a07eb8d2 Add more settings for autospace
fixes GH-1348
fixes GH-876
2025-03-26 18:05:00 +01:00
EduRGB
88a7f41038
Layout for shift + long press on number row (#1400)
Add full-featured number row layout and set it as default; set existing layout as basic.
2025-03-22 20:28:56 +01:00
Helium314
2fe0937ead apparently people want smaller icons 2025-03-22 20:05:51 +01:00
Helium314
efaddf6c51 store clipboard history as strings, fixes GH-1430 2025-03-22 19:34:27 +01:00
Helium314
9e91e7562b add another setting to disable always show suggestions just for web edit fields, which seem fo frequenty cause issues with this setting 2025-03-22 19:27:38 +01:00
Helium314
7228fa06d1 move "no limit" clipboard history retantion time to the right side
sort of fixes GH-1425 (at least the unclarity about finding the setting)
2025-03-22 19:05:24 +01:00
Helium314
a3bada8d25 upgrade version and translations 2025-03-16 15:01:39 +01:00
Helium314
9b7eaa4cf2 use default text button style for popup key order / hint source buttons 2025-03-16 14:49:04 +01:00
Helium314
7571890551 remove appcompat
was mainly used for settings
2025-03-16 14:33:53 +01:00
KuRa KuRd
cb70553484
Add Central Kurdish layout (#1417) 2025-03-16 14:00:23 +01:00
Helium314
8298542c39 add setting to switch to alphabet after typing on numpad and pressing space
fixes #1224
2025-03-15 15:59:49 +01:00
Helium314
a9e5f879d8 better way of determining whether a key should have action key background
mostly relevant for popups
fixes #1008
2025-03-15 15:35:55 +01:00
Quantom2
a6b6d1b659
Rework of UK and RU standard layout plus added extended layout (#1215)
Rework of UK and RU standard layout plus added extended layout (similar to PC keyboard) as optional;
- Added 'ї' as separate letter (it used much more often, just to be optional key in popups)
- Added [ { } } popups to fill empty hint space (similar to PC layout)
- Added ' (apostrofee) suggestion onto 'є' key (similar to oter keyboards and to PC layout)
RU)
Added siggestion to 'ъ' on 'х' key (similar to other keyboards, anyway there was no popups at all)
- Added [ { } } popups to fill empty hint space (similar to PC layout)
- Added 'э́' suggestion similar to other keyboards
Both)
- Improvements to multilanguage typing (now this is possible to sue UK-RU or RU-UK pair, I added letters from other language as popups)
Added)
- UK Extended with separate ' key (used less often than 'ї', but still used pretty often)
- RU Extended, with separate 'ъ' key (similar to full desk PC layout)
2025-03-15 14:05:05 +01:00
Helium314
ba88129641 make navigation transistion animation duration follow system transition animation scale 2025-03-15 09:06:10 +01:00
Helium314
55259b2915 fix disappearing all_colors for dark theme on upgrade from 2.3 2025-03-14 23:21:41 +01:00
Helium314
d3401e5c04 re-add background to app icon in about screen 2025-03-14 22:57:00 +01:00
Eran Leshem
18a328cd2b
Show TLD popup keys (#1399)
* Add option to replace period key's popup keys with the locale-specific top level domains for URL and email inputs. On by default.
Also change the wide keyboard's '.com' key to use the same TLD list.
Tweak TLD list order, putting default ones first, so that .com is the first TLD.

* Enable TLD hint
Avoid TLD popups on tablet
Revert to using set for TLDs, and insert default ones first
Move setting one slot up
Tweak setting description
Update docs

* Preserve case on period key

* Prevent non-TLD hints on period key
2025-03-13 16:31:03 +01:00
unlair
d05a59e4ed
Track overridden subtypes when auto-switching due to HintLocales (#1410)
* Track overridden subtypes when auto-switching due to HintLocales

* Move hint-locale switching logic to SubtypeState
2025-03-11 21:25:32 +01:00
Helium314
bf713d6967 copy user-supplied library to final file instead of renaming
apparently fixes #1251
2025-03-10 18:27:45 +01:00
Helium314
e9a2a7ebb1 remove unnecessary settings reloads during adjusting additional subtype 2025-03-08 17:55:02 +01:00
Helium314
2b8c39b125 make editing the "+" layouts work 2025-03-08 10:26:24 +01:00
Helium314
c47da4203f consistent way of for settingsSubtypes <-> string 2025-03-08 09:34:33 +01:00
Helium314
e1f02dab31 add some tests for subtype enablement 2025-03-08 09:23:41 +01:00
Helium314
a4d96a12a9 fix some issues with subtypes being disabled or not shown as enabled after editing 2025-03-08 09:05:33 +01:00
Helium314
15c1526895 toAdditional subtype not nullable any more
was causing too much trouble
and only was in there because "it always has been there"
2025-03-08 07:48:15 +01:00
Helium314
fa9ac20d39 fix edited subtypes not showing up when they weren't enabled 2025-03-08 07:35:49 +01:00
Helium314
912ba45d5e fix default additional subtypes 2025-03-08 07:35:08 +01:00
Helium314
631ab60eb9 upgrade version and translations 2025-03-06 18:13:32 +01:00
Md. Rifat Hasan Jihan
073318d7d0
Update existing incomplete bn-IN layout (#1374) 2025-03-06 18:10:44 +01:00
Helium314
43d96e3131 disable check breaking non-latin additional subtypes without custom main layout 2025-03-06 18:06:30 +01:00
Helium314
43f5dd555b remove the / at the end of layout folders
because apparently android 7 asset manager does not understand it
fixes #1393
2025-03-06 05:16:26 +01:00
Md. Rifat Hasan Jihan
ee33140106
add missing popup (#1396) 2025-03-04 22:49:14 +01:00
Md. Rifat Hasan Jihan
411bd79890
add label flag on manualOrLocked keys to hide popup hint (#1397) 2025-03-04 22:20:44 +01:00
Helium314
f60406d6ac upgrade dependencies 2025-03-04 22:19:17 +01:00
Helium314
4310025b2d fix light navbar symbols with light theme 2025-03-02 18:13:04 +01:00
Helium314
fad6c7b758 fix some bugs resulting in bad colors after entering ColorsScreen 2025-03-02 17:04:16 +01:00
Helium314
72ca12d52e pre-fill name for new color themes 2025-03-02 12:05:49 +01:00
Helium314
e342ff24b5 fix user-defined theme being added to list on first startup 2025-03-02 11:39:33 +01:00
Helium314
18693cdf20 fix welcome wizard title color in dark mode 2025-03-02 11:02:20 +01:00
Helium314
45c30b5c64 fix wrong name shown in launcher 2025-03-02 10:56:49 +01:00
Helium314
b4f3732cde better details for dictionaries 2025-03-02 10:36:05 +01:00
Helium314
2fb618888b use some resource strings again 2025-03-02 09:59:03 +01:00
Helium314
cffdbff23c remove some unused resource strings, and mark others for possible future removal 2025-03-02 09:36:13 +01:00
Helium314
5e63a7f29b add missing new metdatata file translations 2025-03-02 07:34:00 +01:00
Helium314
02e8a001cd update translations 2025-03-02 07:33:10 +01:00
Helium314
f929caa4d8
Remove old settings and clean up (#1392) 2025-03-02 07:28:37 +01:00
Helium314
8a8e8a70e3 re-add missing light theme 2025-03-02 00:47:31 +01:00
Helium314
8c557ec42c don't show welcome wizard in spell checker settings
and show crash reports only in normal settings
2025-03-01 23:39:55 +01:00
Helium314
122b51c0ed adjust welcome wizard colors 2025-03-01 23:36:05 +01:00
Md. Rifat Hasan Jihan
3d690ae371
Added Bengali (India)/Baishakhi layout (#1373) 2025-03-01 17:40:27 +01:00
Helium314
be3ccc631d minor improvements in appearance screen 2025-03-01 17:29:00 +01:00
Helium314
1fc5d60483 better instant-reload for some settings (while keyboard is showing) 2025-03-01 17:28:48 +01:00
Helium314
95b6333bf4 better way of force-reloading the keyboard theme
not duplicating an existing mechanism any more
and working while keyboard is shown (at least it looks like it)
2025-03-01 17:06:49 +01:00
Helium314
f0bb541b72 better "add dictionary" button in dictionaries screen 2025-03-01 10:31:38 +01:00
Helium314
b69ec39539 extend list of locales for which bigrams are used in contacts dictionary 2025-03-01 10:24:22 +01:00
Helium314
efa2faf474 more frequent selected subtype checks in welcome wizard 2025-03-01 10:02:56 +01:00
Helium314
5d1545687f fix broken list preferences 2025-03-01 10:01:16 +01:00
Helium314
7696beeb29 deal with empty subtype preference strings produced by old versions 2025-03-01 09:50:33 +01:00
Helium314
f016c20ca8 remove some values from old settings
preparation for removal
2025-03-01 09:23:34 +01:00
Helium314
7ec9e1a8cf sort extra value when creating SettingsSubtype 2025-03-01 08:40:50 +01:00
Helium314
c431f7043f move settings.kt and settings subtype 2025-03-01 07:32:09 +01:00
Helium314
e55b375f90 add more compose previews, and make them work better 2025-02-28 23:47:11 +01:00
Helium314
1b5a793690 more convenient access to settingsValues
Settings.getInstance().getCurrent() -> Settings.getValues()
2025-02-28 22:17:06 +01:00
Helium314
98640c6b0d add readable timestamp to logs and crash reports (similar to backup files) 2025-02-28 21:57:31 +01:00
Helium314
912be23900 avoid exception on startup
java.lang.ClassNotFoundException: Didn't find class "androidx.core.app.CoreComponentFactory"
see https://stackoverflow.com/a/65980047
2025-02-28 21:44:25 +01:00
Helium314
999c900f7f clearly show when a subtype is custom in languages & layouts 2025-02-28 21:42:09 +01:00
Helium314
27e2a6f584 determine whether to show shift key for scripts without uppercase 2025-02-28 21:29:38 +01:00
Helium314
48fbe86dcc fix accessing setting from system keyboard settings 2025-02-28 20:29:37 +01:00
Helium314
247ec2b7f3 compose welcome wizard (could look better, but good enough for now) 2025-02-28 20:26:38 +01:00
Helium314
b65d00e142 improve color picker: better landscape layout and survive orientation change 2025-02-27 19:35:07 +01:00
Helium314
1c955a34b2 convert popup multiTextKey codePoints into (KeySpec) label
fixes #1376
2025-02-26 21:16:23 +01:00
Md. Rifat Hasan Jihan
2e9ba954ad
Improved Probhat Layout (#1382)
Discussed in https://github.com/Helium314/HeliBoard/discussions/1368
2025-02-26 20:57:08 +01:00
ottosch
f65864a935
Add datestamp to backup filename (#1364)
resolve #1188
2025-02-26 20:00:25 +01:00
Helium314
aaa7fb2ad1 make unsaved changes in SubtypeDialog survive screen orientation change 2025-02-25 22:55:05 +01:00
Helium314
f0689b00f6 remove "use system locales"
now behavior is as it was disabled
if no subtypes are explicitly enabled, it behaves the same as if the setting was enabled (same as before, actually)
2025-02-25 22:41:54 +01:00
Helium314
cab9cc7de0 make subtypeDialog survive screen rotation (but currently loses changes to settings) 2025-02-25 22:32:05 +01:00
Helium314
93e6f88f6c update todo 2025-02-25 21:36:30 +01:00
Helium314
987f0560d9 add missing headers 2025-02-25 20:35:30 +01:00
Helium314
3c9d1c8795 add links to discussin sections to load dialogs for laoyuts and colors
and gather links in a single place
2025-02-25 20:24:24 +01:00
Helium314
6212f44283 fix theme not appearing after importing from file 2025-02-24 21:06:51 +01:00
Helium314
761b56fdc3 fix weird double window insets 2025-02-24 20:42:21 +01:00
Helium314
a8bd9058e7 move some icons and iconButtons to separate file 2025-02-24 19:17:21 +01:00
Helium314
875a98d3f4 rename "text" to "content" in alert dialog 2025-02-24 18:43:12 +01:00
Helium314
b7aadac07c add the "will not be translated" message to allColors 2025-02-24 18:30:12 +01:00
Helium314
f076d66f93 add contentDescription for some more icons 2025-02-24 18:16:38 +01:00
Helium314
d5d672ee33 fix links using annotatedString instead of html 2025-02-24 16:49:03 +01:00
Helium314
fa72e2bcbb work on some more todos 2025-02-23 20:57:16 +01:00
Helium314
adc5c8cf1c remove some outdated todos 2025-02-23 19:16:39 +01:00
Helium314
9ff5fda8ed fix issues with insets not being respected 2025-02-23 19:01:45 +01:00
Helium314
43cfbddf68 initialize RichIMM on app start (fixes tests) 2025-02-23 18:42:19 +01:00
Helium314
53a5cb0c92 upgrade compose dependencies 2025-02-23 18:38:07 +01:00
Helium314
4edaa485b6 some todos in SubtypeDialog 2025-02-23 17:58:04 +01:00
Helium314
e3fa210031 editing a theme does not automatically enabled it (outside edit screen) 2025-02-23 16:24:59 +01:00
Helium314
b41ad29e55 limit locales when adding dictionaries to matching scripts 2025-02-23 13:58:11 +01:00
Helium314
ff27d1f1c5 solve a bunch of recent todos 2025-02-23 13:41:30 +01:00
Helium314
86f15e11d8 compose PersonalDictionariesScreen 2025-02-23 11:38:06 +01:00
Helium314
52c887e941 add dictionary screen and dialogs 2025-02-22 22:42:36 +01:00
Helium314
7494d85aea allow editing main layouts in subtype dialog 2025-02-22 12:21:26 +01:00
Helium314
f15f65daa8 properly handle layout deletion 2025-02-21 05:07:13 +01:00
Helium314
05fc53c96f move file pickers to separate composable 2025-02-21 05:04:57 +01:00
Helium314
4efc33dba4 fix toast spam in layout editor 2025-02-20 18:24:59 +01:00
Helium314
31f7ef6182 also rename layout in preferences when renaming the file 2025-02-20 18:11:23 +01:00
Helium314
d03801f22e make the "+" layouts selectable with normal name 2025-02-20 16:18:19 +01:00
Helium314
f7cf1762b5 add better icon for using default setting 2025-02-20 00:31:13 +01:00
Helium314
e7acef5396 fix editing "+" layouts, update todos 2025-02-19 23:56:02 +01:00
Helium314
35083e6515 do some inits on app create instead of in the services 2025-02-19 23:33:51 +01:00
Helium314
0899245ae7 use existing constants for NO_LANGUAGE and QWERTY 2025-02-19 23:06:52 +01:00
Helium314
8d094e268a make the settings overrides in subtype work 2025-02-19 23:00:58 +01:00
Helium314
eec197c32c cache subtype display names for improved performance 2025-02-17 19:32:02 +01:00
Helium314
40de17c148 solve some todos in SubtypeDialog 2025-02-17 19:19:08 +01:00
Helium314
47070c1086 change ShowMorePopupKeys to string
and some minor adjustments / comments
2025-02-17 15:55:31 +01:00
Md. Rifat Hasan Jihan
23a067187c
Removed redundant number row for bn-BD (#1369)
And formatted the json for better readability
2025-02-17 14:09:20 +01:00
Helium314
85382de881 add language screen (not finished) 2025-02-16 22:58:19 +01:00
Helium314
12f1e20d9f make popup order prefs shorter 2025-02-16 22:45:48 +01:00
Helium314
56c7748dff fix issues with restoring old settings 2025-02-16 20:32:32 +01:00
Helium314
0fa8f58750 fix issue with creating subtype extra value 2025-02-16 13:09:18 +01:00
Helium314
6f1e79caa1 fix issues with settings upgrades when starting from 0 2025-02-16 13:01:31 +01:00
Helium314
2c1d6a5f4c change subtypeSettings to object, so it's clear which init is called 2025-02-16 12:49:19 +01:00
Helium314
6e77437ea9 copy the dictonary cleanup and crash report checker to new settings 2025-02-16 10:57:38 +01:00
Helium314
a25ed6d5e0 store layouts in the same way in selected, enabled and additional layouts 2025-02-16 10:44:11 +01:00
Helium314
d005ffac06 modify some separators we don't get into trouble when storing more data in extra values, and when storing extra values in prefs 2025-02-15 21:45:26 +01:00
Helium314
4c060689fa shorter name for some functions for custom layouts 2025-02-15 20:11:27 +01:00
Helium314
bccb10ea39 store custom latin layouts with scripts instead of language tag, so they can be used across languages 2025-02-15 18:31:25 +01:00
Helium314
5ccc117ae1 remove unused layout edit preference, read layout edit errors immediately 2025-02-15 17:44:24 +01:00
Helium314
682a4ae911 improve handling of IME padding
still not really good...
2025-02-15 14:35:59 +01:00
Helium314
d8e9a004e5 reduce padding for LayoutEditDialog 2025-02-15 13:30:48 +01:00
Helium314
42f4561422 convert additionalSubtypeUtils to kotlin 2025-02-15 12:22:53 +01:00
Helium314
aa3bf37852 put LayoutUtilsCustom into an object 2025-02-15 11:39:53 +01:00
Helium314
a3e85bc664 add layout screen for choosing and editing default (non-main) layouts 2025-02-15 10:52:56 +01:00
Helium314
6b86ea236b use isError and trainingIcon to indicate invalid name for color 2025-02-15 02:43:01 +01:00
Helium314
5ba40f7875 adjust arrangement for layouts
so we can have more than one layout per type (was possible only for main)
2025-02-14 13:37:21 +01:00
Helium314
846388de97 better checks for custom json layouts
and a todo
2025-02-13 19:47:01 +01:00
Helium314
fe59a598b7 fix potential issue with not set autocorrect threshold
and an unintentionally changed default
2025-02-13 18:08:34 +01:00
Helium314
201b430362 change what can be stored in KeyboardLayoutSet subtype extra value
and some more preparations for adjustments related to language/layout settings upgrade
2025-02-13 17:29:51 +01:00
Helium314
f2f7426ee5 merge pref for toolbar normal and longpress codes
and remove old toolbar customizer dialog
2025-02-12 16:47:31 +01:00
Helium314
b31b8f8fe2 string resources for load and error dialogs in color theme picker 2025-02-12 05:52:13 +01:00
Helium314
767be15006 fix issues with loading / adding / removing user theme 2025-02-12 05:46:42 +01:00
Helium314
589179e626 fix button text in info dialog 2025-02-12 05:39:54 +01:00
Helium314
e105f39752 add option to load colors 2025-02-11 23:21:34 +01:00
Helium314
6d9763d079 add save color options to new colors screen 2025-02-11 22:43:29 +01:00
Helium314
cb08d32d14 slightly improve weird behavior 2025-02-11 22:16:18 +01:00
Helium314
9bb087b422 make sure the right theme is shown in colors screen
proobably there is a way to do it more straightforward...
2025-02-11 21:42:31 +01:00
Helium314
f8bdd7dd1c add menu for switching moreColors 2025-02-11 19:47:05 +01:00
Helium314
1484d7021e allow renaming user themes 2025-02-11 19:20:15 +01:00
Helium314
bd7e92bcf8 fix issues with color screen navigation 2025-02-11 18:21:02 +01:00
Helium314
63bda02cc4 upgrade user theme selection, now multiple themes are possible
currently missing: old "show more/all colors", and import/export
2025-02-11 17:40:53 +01:00
Helium314
40433bd8d2 move radiobuttons to left side in listpickerdialog 2025-02-11 15:23:14 +01:00
Helium314
5300c4d930 change how colors are stored (color and appearance settings currently not working properly)
with settings upgrade from previous version
version code increase to make sure colors are upgraded
2025-02-10 18:39:16 +01:00
Helium314
6dad54b83d switch spell checker settings to compose 2025-02-09 21:14:27 +01:00
Helium314
57313a4b79 directly start SettingsActivity when keyboard is selected 2025-02-09 20:18:30 +01:00
Helium314
2a76b49f3a fix wrong text on setting 2025-02-09 19:30:13 +01:00
Helium314
e36a20719f remove todos (was already mostly solved) 2025-02-09 19:08:17 +01:00
Helium314
d807e08195 put setting defaults in one place
notable exceptions: color settings
they will be re-done anyway...
2025-02-09 19:01:57 +01:00
Helium314
ecf7aabdb1 stricter checks for json layouts (and fix an old bug in hebrew layout) 2025-02-09 15:17:06 +01:00
Helium314
2700c3428a fix unexpected dialog dismisses 2025-02-09 14:36:01 +01:00
Helium314
b31d6d0051 add a ktx shortcut for default shared preferences 2025-02-09 14:23:44 +01:00
Helium314
125a483591 use context.prefs() instead of the long DeviceProtected... 2025-02-09 13:52:59 +01:00
Helium314
deb9dda7e7 consistently check for landscape when looking for portrait/landscape orientation 2025-02-09 13:36:25 +01:00
Helium314
e845e38e42
Settings upgrade (#1325)
Re-implement most of the settings in compose, searchable
Languages & Layouts, Colors, and Personal Dictionary still missing, will be done later
2025-02-09 13:27:55 +01:00
PurplePickleMonster
679754bb2d
Add toolbar option to toggle Split Keyboard Setting - Enhancement #1218 (#1263)
---------

Co-authored-by: Josh <joshtidal24@gmail.com>
Co-authored-by: Helium314 <helium314@mailbox.org>
2025-02-09 11:32:16 +01:00
Helium314
c0b3e76741 use backspace key event instead of deleteSurroundingText when a browser claims it does not have text before the cursor
fixes #1337
2025-02-06 22:48:45 +01:00
Helium314
7c77f4d1c4 add tests related to #210 2025-02-03 20:44:30 +01:00
Helium314
f2a46cfa9a disable undo-like functionality for textInput, fixes #1019 2025-02-03 00:20:48 +01:00
Helium314
73988394a9 improve detection of emojis when deleting 2025-02-03 00:11:34 +01:00
QuantumSoul
ad3086183d
Arabic Hija'i Layout (#1329)
---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2025-02-02 21:52:07 +01:00
Helium314
d57301918e clarify that some parts of the contribution guidelines are (strongly) recommended, but not necessary 2025-02-02 21:50:33 +01:00
Md. Rifat Hasan Jihan
274c6b0212
Improve behavior for language swipe cycling (#1319)
---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2025-02-02 21:46:11 +01:00
Eran Leshem
82ec37f339
Optionally show popup hints on number row (#1303) 2025-01-31 22:53:08 +01:00
Md. Rifat Hasan Jihan
0d48a18264
adjust unijoy layout for bn-BD (#1321) 2025-01-28 19:10:25 +01:00
Helium314
92bc79b7e6
Add side padding scale setting (#1309) 2025-01-26 17:31:23 +01:00
Helium314
635cd5f8da toolbar key activated state now responds to settings changes 2025-01-26 13:16:13 +01:00
Helium314
79c9a85082 better choice of color for deactivated toolbar key 2025-01-26 11:36:17 +01:00
Helium314
833aa321b9 rename stateList to pressedStateList for clarification 2025-01-26 11:27:40 +01:00
Helium314
54f222c0ee fix weird issue with toolbar keys having wrong color for their state
and remove related semi-workaround
2025-01-26 11:25:50 +01:00
Helium314
419c0d847b switch from start / stop one-handed mode key codes to a toggle code
mainly so there is no awkward state-dependent key code on the toolbar key
2025-01-26 09:48:21 +01:00
Helium314
5afb1e3a0c use custom font also for hint labels, fixes #1323 2025-01-26 09:31:32 +01:00
Helium314
105a6a7791 add font scale setting (separat for emoji view, because here it feels different)
fixes #1149
2025-01-26 09:27:48 +01:00
Helium314
f45f69f8a2 add setting for adjusting bottom padding in landscape mode
fixes some issue I can't currently find
slight issue: will remove the bottom padding on large tables (sw768-land), users need to get it back by switching to 100%
2025-01-26 09:10:07 +01:00
Helium314
fc12877795 fix additional subtypes being removed when upgrading from 2.2 beta or older 2025-01-23 16:53:26 +01:00
Helium314
453683a925 fix typo, add short text to contributing about app size 2025-01-23 00:54:09 +01:00
zyachel
05816e4436
fix link to license file in about screen (#1315) 2025-01-22 17:35:32 +01:00
Helium314
35e0fe6be3 add TLD information to LocaleKeyboardInfos
preparation for #492
2025-01-20 21:28:12 +01:00
Helium314
df8c0c6c59 switch tests from junit to kotlin.test (mostly) 2025-01-19 18:27:31 +01:00
Helium314
da8827efc3 migrate build.gradle to kts 2025-01-19 18:15:58 +01:00
Helium314
5283c5878c consider custom font in floating preview 2025-01-18 14:07:36 +01:00
Helium314
cde1a70427 avoid repeated checks for custom typeface when there is none 2025-01-18 12:49:57 +01:00
Helium314
789b533358 set custom typeface also in clipboard suggestion view
and rename read method to get
2025-01-18 12:45:26 +01:00
Helium314
c1bbf51fa1 add custom font file to backup
and remove outdated unnecessary text
2025-01-18 07:59:05 +01:00
Helium314
9edbbcf0ea add button to clear all custom toolbar codes 2025-01-18 07:55:50 +01:00
Helium314
9a2009d182 allow using user-provided font
fixes #494
2025-01-17 21:47:13 +01:00
Helium314
c581e9601b allow setting background image for landscape and portrait separately
fixes #798
2025-01-17 20:10:16 +01:00
Helium314
71d17f6792 update readme / templates / guidelines 2025-01-17 18:15:25 +01:00
Helium314
092cac529f add setting to autocorrect shortcuts
fixes #1287
2025-01-14 22:19:44 +01:00
Helium314
83b48b474e use the first non-typed suggestion for determining autocorrect
otherwise the correction score is sometimes based on the typed word, and not on the word that will be corrected to
2025-01-14 21:25:24 +01:00
Eran Leshem
8931f79b62
Add a Hebrew 1452-2 layout (#1288) 2025-01-13 23:13:06 +01:00
Helium314
df37e3589e move keyboard coordinate transformation to KeyboardActionListener as per ancient TODO 2025-01-13 22:40:37 +01:00
Helium314
10c0b64e45 only show default button in reorder dialog if default actually exists 2025-01-13 20:40:20 +01:00
Arsen Abdusalamov
a4b07d6de2
Add Dargwa(Urakhi) layout (#1127) 2025-01-13 20:26:46 +01:00
tenextractor
0076f04639
Greek accent/dead key support (#1240)
Greek accent/dead key support: simplify by making every combining accent key a dead key

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2025-01-13 20:12:01 +01:00
Helium314
4638709db5 add missing default for navbar_color in prefs, and change in SettingsValues 2025-01-13 17:18:07 +01:00
Helium314
44015f6857 upgrade test dependencies 2025-01-13 17:16:34 +01:00
Helium314
13e2260aab tiny update to contributon guidelines 2025-01-13 17:14:34 +01:00
Helium314
1e7ea7d699 rename LICENSE-GPL-3 to LICENSE because GitHub is stupid and wrongly shows Apache-2.0 (can't choose, only determined automatically) 2025-01-12 21:12:14 +01:00
Helium314
c2fdce9d58 upgrade emojis to unicode 16.0
and set default emoji SDK level to 21, as we don't support 19 any more
2025-01-12 21:10:06 +01:00
Helium314
7339000df3 allow overriding sdk level for determining which emojis are shown
might show that dreaded [x] symbol, but allows newer emojis on older android versions with upgraded fonts
2025-01-12 21:08:20 +01:00
Helium314
465fc86e61 add new groupId -1 for suppressing default popups e.g. on action or comma keys
fixes #1243
2025-01-12 21:04:32 +01:00
Helium314
7e3657185f prevent selected text being the first suggestion when overwriting with glide typing
fixes #1284
2025-01-12 21:02:29 +01:00
npnpatidar
de5968d04a
Add Hindi Phonetic layout (#1278) 2025-01-12 21:00:47 +01:00
Mario Restuccia
bf37a7f947
Add schwa ə for Italian (#1275)
Added lowercase schwa `ə` to Italian keyboard layout, for inclusive language use
2025-01-12 21:00:08 +01:00
Helium314
0543ccdb2d update translations and version 2025-01-12 20:46:51 +01:00
Helium314
cd5ac492be revert fix for #994, fixes #1281 2025-01-12 20:31:22 +01:00
Helium314
548bf64c9d add option to also vibrate in dnd mode 2025-01-12 20:28:23 +01:00
Helium314
d4d3ba16e0 remove outdated comment 2025-01-11 12:20:43 +01:00
Helium314
9f09d28f4e update description of TextKeyData 2025-01-11 11:43:11 +01:00
Helium314
ce61fa9a21 fix broken width of emoji & clipboard bottom rows in one-handed mode 2025-01-11 11:33:24 +01:00
Helium314
fce02d4669 add missing emojis (to make-emoji-keys only) 2025-01-11 08:39:18 +01:00
Helium314
30180165cb update make-emoji-keys to unicode 16.0 2025-01-11 08:06:06 +01:00
Helium314
16b6196c54 make emoji task work again 2025-01-11 08:05:32 +01:00
Helium314
846ab1edef fix crap introduced with Android 15
using fixes from GrapheneOS
bdc88aaf46
3b7322437a

fixes #1186
2025-01-07 20:38:03 +01:00
Helium314
5251bcd989 re-add l·l for catalan
was wrongly removed in d7d47670a7
fixes #1176
2025-01-07 20:17:41 +01:00
Helium314
76990814e1 only trigger fix for #994 when we have an alphabet keyboard
fixes #1268
2025-01-07 17:20:49 +01:00
Helium314
5e64e94085 avoid known test failure when running via github workflow 2025-01-07 16:59:44 +01:00
Helium314
250a43e4e7 update version, translations, and dictionary list 2025-01-06 15:57:05 +01:00
Helium314
ab974a980e update changelog 2025-01-05 22:48:59 +01:00
Helium314
3cf9d4c87e don't set tablet extra keys for custom layouts
fixes #1180
2025-01-05 22:46:40 +01:00
Helium314
d25df2c4de remove popup label when the popup key is removed 2025-01-05 22:21:26 +01:00
Helium314
2ad45af856 disable remove redundant popup keys by default
looks like people don't like it (#1052 and more)
2025-01-05 22:06:31 +01:00
Helium314
3989c1348a make remove redundant popup keys work on base layout only
fixes #1052
2025-01-05 22:05:55 +01:00
Helium314
ca67fc71a6 add info about labelFlags 2025-01-05 20:53:10 +01:00
Helium314
eb8d204d00 add failing test as some sort of todo / reminder 2025-01-05 20:37:18 +01:00
Helium314
4b21e3e54e add preliminary changelog 2025-01-05 19:25:29 +01:00
Helium314
afd7bc2985 add button to reset all customized icons 2025-01-05 19:16:51 +01:00
Helium314
8c3ed1ac22 sort icons in icon customiz er alphabetically 2025-01-05 18:59:58 +01:00
Helium314
fe041293b6 add label for bin icon and rename drawable 2025-01-05 18:49:38 +01:00
Helium314
51a7508374 reload icons before opening icon customizer 2025-01-05 18:42:22 +01:00
Helium314
044f6dd81c allow entering minus and nothing (same as 0) 2025-01-05 18:36:47 +01:00
Helium314
f7c694bfe0 reload custom layouts on restoring backup
fixes #1235
2025-01-05 16:56:47 +01:00
Helium314
c9b8dfd4c2 properly reload on DPI changes 2025-01-05 14:47:03 +01:00
Helium314
cd1ed0e1e7 avoid doing unnecessary consistency checks during text reload / reset 2025-01-05 13:41:33 +01:00
Helium314
d3bd97a104 reload text on selection updates even if selection is as expected
if composing region was changed
e.g. KDE Connect removes composing region after entering a letter, and we should be able to deal with it
this is not really a good solution, as it will reload the suggestions, which flashes the underline and has noticeable performance impact

fixes #1141
2025-01-05 13:18:14 +01:00
Helium314
d08afcd279 improve situation when local state is out of sync with editor
related to / found during tests for 6100186f73
2025-01-05 12:08:48 +01:00
Helium314
6100186f73 deal with keyboard layout changing between pressing and quickly releasing a key
fixes #994
2025-01-05 09:40:17 +01:00
Helium314
32a37eaddf do not switch for hintLocales if we have a matching secondary locale
fixes #1181
2025-01-04 08:52:27 +01:00
Helium314
6e50d6e208 perform recapitalization on shift only in alphabet mode
fixes #1256
2025-01-03 18:50:04 +01:00
Helium314
a1c70a1181 truncate display of clipboard text for performance reasons
fixes #1236
2025-01-03 18:09:51 +01:00
Helium314
7652af888d upgrade dependencies 2025-01-03 17:24:43 +01:00
Helium314
d0157361f7 update translations 2025-01-03 17:17:09 +01:00
Helium314
71d98e1e4f require a minimum frequency value in history before adding a word to personal dictionary 2024-09-29 19:30:12 +02:00
Helium314
d754e7ca7f do not vibrate if do not disturb is enabled, fixes #1125 2024-09-28 22:28:37 +02:00
Helium314
27d257ce1d udpate templates 2024-09-28 22:28:25 +02:00
Helium314
640f26d0fc avoid adding potentially unwanted capitalized version of words to dictionary in capitalized manually at beginning of sentence 2024-09-28 19:33:50 +02:00
Helium314
b4eb63e9a9 mark string as not translatable 2024-09-25 05:30:19 +02:00
Helium314
05523ecd30
Allow changing toolbar icon and codes (#1110) 2024-09-23 20:45:23 +02:00
Md. Rifat Hasan Jihan
7d1cf0dd63
Update strings.xml (#1068) 2024-09-18 16:55:48 +02:00
Helium314
723812d913 add discussion templates for colors and layouts
and hope it works because apparently there is no preview
2024-09-15 12:18:11 +02:00
Helium314
b1798d5777 update translations 2024-09-15 11:07:49 +02:00
Helium314
056452775c update readme (some stuff is now in the wiki) 2024-09-15 10:57:27 +02:00
Helium314
404f6a5726 actually use downEvent detection, fixes #1075 2024-09-02 21:08:37 +02:00
Helium314
ab34815c7d
Replace bottom keys in emoji / clipboard view customizable keyboard (#966) 2024-09-01 21:33:49 +02:00
Helium314
be13ca40a1 fix setting the correct script in tests 2024-08-30 20:58:44 +02:00
Helium314
8ca65aebc9 allow customizing text on space bar
fixes #956
fixes #875 (set text to space)
2024-08-28 22:08:00 +02:00
Helium314
4ddfd2d5a9 allow numpad key in custom layout
fixes #1020
2024-08-28 20:53:44 +02:00
Helium314
374b840127 don't expect number row to have 10 keys 2024-08-28 19:01:23 +02:00
Helium314
c96326a256 be a bit more strict when determining a clearly preferred language in multilingual typing
should somewhat reduce addition of unwanted words to personal dictionary when auto-add is enabled
2024-08-27 19:52:10 +02:00
Helium314
6f71e577d3 don't show toolbar key names as popup hint labels 2024-08-26 23:27:48 +02:00
Helium314
3306ffb849 allow customizing number row
so users can do #558 themselves
2024-08-26 23:11:59 +02:00
Helium314
44eb296d38 don't use json/txt file endings for custom layouts
just determine json or simple when parsing

fixes #1034
2024-08-26 22:51:09 +02:00
Helium314
a1a7489856 fix bad backup
apparently settings keys can be null
2024-08-26 21:57:59 +02:00
Helium314
ee748023fd move number row into assets
make it customizable later
2024-08-26 21:11:23 +02:00
Helium314
be5c86ac31 add escape to processCode
fixes #1009
2024-08-25 20:19:55 +02:00
Helium314
b43e06c66f always add punctuation popups to non-priority popups
fixes #1062

(also remove unused function)
2024-08-25 20:12:34 +02:00
Helium314
c0e3811698 don't remove the layout when switching between text and json
app still needs to be restarted when switching types
workaround for #1034, but should be fixed properly at some point
2024-08-25 19:51:39 +02:00
Alex
7b4420cc6b
fix(uk): remove non-existing symbol (#1038)
Symbol `ъ` does not exist in Ukrainian language, therefore there's no need to have it on keyboard.
2024-08-25 19:23:16 +02:00
Helium314
2de5798504 small update to guidelines 2024-08-25 19:00:03 +02:00
Helium314
48b0bb1cbf allow independent selection of icon style and theme style 2024-08-25 18:46:29 +02:00
Helium314
aed5704582 set keyboard icon ids per style in keyboardIconsSet instead of using styleable
increases flexibility
preparation for planned changes
2024-08-24 23:46:13 +02:00
Helium314
8a457c1821 add empty hi-Latn.txt, fixes #305 (again) 2024-07-27 10:35:26 +02:00
Helium314
2b135481be update version and translations 2024-07-25 07:18:56 +02:00
Devy Ballard
83ae078cfa
More visual options for gesture typing (#944) 2024-07-25 07:08:50 +02:00
Helium314
28ba8a7a72 update logging 2024-07-25 07:04:45 +02:00
BlackyHawky
136b45880e
Update rounded icons for rounded style - Fix #694 (#977) 2024-07-23 22:51:15 +02:00
Helium314
446b0fb826 remove barely used semi-foreign diacritic character from sl.txt 2024-07-23 19:43:11 +02:00
Helium314
9a273a25ab update translations and version 2024-07-14 21:29:24 +02:00
BlackyHawky
3dea314e52
Change dialog & drop down menu backgrounds color for Android12+ (#975) 2024-07-14 20:46:07 +02:00
Helium314
c0c11d75b2 add setting to remove redundant popup keys 2024-07-13 09:13:14 +02:00
Devy Ballard
544132974c
select keys can now de-select text (#973) 2024-07-12 22:35:23 +02:00
Helium314
b9e116ed13 adjust how priority language popups work (follow-up to #659) 2024-07-12 22:25:46 +02:00
Helium314
5378d8d0a3 add another option to the "more letters with diacritics" settings
with letters that used to be default in many languages
now this setting is default
2024-07-12 20:55:38 +02:00
clmbmb
d7d47670a7
Remove language popup keys for other languages (#659)
also removes potentially used keys for common foreign words, but this should be handled using the "more letters with diacritics" setting

Co-authored-by: Helium314 <helium314@disroot.org>
2024-07-12 20:41:22 +02:00
Devy Ballard
ec8efcd678
Small changes to toolbar long-clicks (#959)
* make "select all" key select word on long press
* long-press 'copy' to cut text (instead of copy all)
2024-07-12 19:51:42 +02:00
Helium314
bee51de8a5 add setting when to switch to main keyboard view
fixes #546
2024-07-10 17:23:10 +02:00
Helium314
a3bc3b56ff fix clipboard suggestion being shown for a split second when starting gesture typing 2024-07-10 16:32:18 +02:00
Devy Ballard
105d044aa8
Space swipe to toggle numpad layout, with side bonuses (#950)
* make the numpad key toggle-based, allowing for use in its own layout. it also remembers the symbols-shift state.
* add space swipe gesture to toggle the numpad
* fix sliding key input for the numpad key bugs
2024-07-09 22:26:23 +02:00
Helium314
309d7f299e clarify no-new-dictionaries in some more places 2024-07-07 21:06:24 +02:00
Helium314
1e3c764750 add quotation marks for russian, fixes #912 2024-07-07 20:35:33 +02:00
Helium314
9f37c5505c avoid accessing uninitialized RichInputMethodManager, fixes #952 2024-07-07 20:23:21 +02:00
Helium314
e5b82b53c4 fix contacts access being asked when turning setting off instead of when turning on 2024-07-07 20:09:59 +02:00
Helium314
595e7ab680 qwerty fallback if keyboard parsing fails 2024-07-07 19:09:29 +02:00
Helium314
1bd585ab76 update layout checking 2024-07-07 18:55:42 +02:00
Devy Ballard
0bd76de9d9
Add paste key and slightly re-arrange toolbar keys (#945) 2024-07-06 09:41:19 +02:00
Helium314
cc4d8cfedc remove unused rm.txt 2024-07-06 07:42:55 +02:00
codokie
bdab98c2c9
Clipboard suggestions (#647) 2024-07-05 23:14:54 +02:00
Devy Ballard
21124a5a45
Fix erroneous keyswipes (#919) 2024-07-05 22:42:09 +02:00
Helium314
2bce73ad7d fix build 2024-07-03 22:44:19 +02:00
Devy Ballard
bcf2a52d6a
More cursor keys (#933) 2024-07-03 22:42:33 +02:00
Helium314
e57e2e8de5 dont store cursor position when it can be reloaded before actually using the position
should fix #935
also make expected selection start / end private (access still via get methods)
2024-07-03 22:30:47 +02:00
Devy Ballard
a92d108444
make arrow keys repeatable (#932)
only applies to keyboard keys, not in toolbar
2024-07-01 21:30:29 +02:00
Helium314
74571a3202 add ability to save / load custom themes
start for #852
2024-06-30 19:15:56 +02:00
Helium314
7dac19cec7 make all colors setting independent for day and night mode 2024-06-30 18:21:23 +02:00
Helium314
b26ac87ece update translations and version 2024-06-30 16:48:09 +02:00
Helium314
61f1534b71 fix functional key layout for tablets 2024-06-30 16:33:56 +02:00
Helium314
2f6bef478e add new key codes for a bunch of hw keyboard keys (no labels except for escape)
also make sure they are handled together with meta-state (e.g. ctrl+arrow keys)
fixes #237
2024-06-30 11:27:45 +02:00
Helium314
beb52d322f safeguard against potential issues with custom currency key 2024-06-30 09:03:13 +02:00
b02860de585071a2
2150b399aa
Extend existing superscript symbols on popup keys (#902) 2024-06-30 08:49:55 +02:00
Devy Ballard
05e9af9bc6
Reduce longpress timeout for shift (caps lock) and symbols (for numpad) (#924) 2024-06-30 08:39:08 +02:00
Devy Ballard
57b99e27b0
Upscale the d-pad arrows globally (#934) 2024-06-30 08:35:12 +02:00
Helium314
f7d82b9589 allow customizing currency keys, fixes #353 2024-06-29 20:34:32 +02:00
Helium314
d7cb655c21 reload keyboard when next-word suggestion setting is changed
fixes #76
2024-06-29 17:25:24 +02:00
Helium314
cec47bf03d adjust templates and stuff 2024-06-29 15:08:18 +02:00
Devy Ballard
efd7d53ca1
Option to customize start lag for gestures during fast typing (#894)
fixes #882
2024-06-26 21:00:06 +02:00
Helium314
4aac81391e set random (but fixed) default colors for "all colors", see #903 2024-06-25 18:42:26 +02:00
Helium314
3b30864b00 correctly set placeholder default width 2024-06-24 20:58:12 +02:00
Helium314
d0983e6c3b stick to language key setting
don't show langauge switch key in comma popups when there is nothing to switch
fixes #897
2024-06-24 20:48:34 +02:00
Helium314
6e520bf84c update PR workflow to run tests
skip tests known to fail because of unfixed bugs
avoids wasting time on the native build
2024-06-24 20:05:17 +02:00
Helium314
4255dc2ce8 remove fillGapsWithSpacers
was only necessary for old AOSP keyboard parser
2024-06-24 19:44:46 +02:00
Helium314
e707ade006 new version and updated translations 2024-06-24 19:28:30 +02:00
Helium314
2c3493fe93 update tests
remove failing test because issue is not reproducible on device any more
add special build variant intended for running tests in github workflow
2024-06-24 18:53:27 +02:00
codokie
fc0d27459f
fix phantom space after double quotes (#842)
and add a bunch of related tests

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2024-06-24 18:32:16 +02:00
Helium314
4a9dc6bff6 reload theme on orientation change
should actually happen anyway, but possibly not for newer android versions?
could help with #401
2024-06-23 16:12:40 +02:00
Helium314
08f194a369 block key swiping while using sliding key input
fixes #892, which also contains the fix by @devycarol
2024-06-21 15:13:13 +02:00
Helium314
3e74a29f2e improve popup key handling and update tests
remove outdated part from layouts.md
fixes #883
2024-06-19 22:42:36 +02:00
Helium314
5b7f4dae4c clarify error messages when layout can't be saved, see #887 2024-06-18 17:51:03 +02:00
Helium314
0b9fb7334d reload the cursor position from text field when in doubt 2024-06-18 00:38:07 +02:00
Helium314
9efb22bd0c fix #881 and improve related tests 2024-06-17 16:05:22 +02:00
Helium314
4ab7e8b78e use fallback layout when custom layout file can't be opened 2024-06-17 15:12:05 +02:00
Helium314
3961060710 add logging that should help with #829 2024-06-15 22:28:18 +02:00
Helium314
0da6f6e4da Revert "adjust alphabet for AlphabetIndexer"
This reverts commit bc1e4d52a8.
see discussion in #803: the commit makes things worse
2024-06-15 22:06:12 +02:00
Helium314
c064ba199c move that special handling for emoji and language switch keys into layouts
for that, a new keyboard_state_selector is added
this allows modifying functional key layouts without having to manually adjust those keys
2024-06-15 21:54:47 +02:00
Helium314
17f30ad6d6 fix typo in split distace (6000 -> 600)
and increase max split distance for high dp devices
fixes #869
2024-06-14 22:01:15 +02:00
Helium314
f7b12757ed set correct icon when voice input key is on keyboard, but no voice input method is available 2024-06-14 18:59:37 +02:00
Helium314
5d0341195e fix newly added layout file not loaded 2024-06-14 18:26:42 +02:00
Helium314
753e5fa6a2 properly open json files
not sure why it works now, while it apparently did not before
2024-06-14 18:17:26 +02:00
Helium314
3eafce9265 update key labels
remove emoji label, not necessary any more as it's a toolbar key
access toolbar labels via enum map
allow CLIPBOARD_CUT key(code)
2024-06-14 17:44:32 +02:00
Helium314
61cff40d3c only use alt-code-while-typing when not clearly inside key
and add alt code to emoji and clipboard keys
fixes #630
2024-06-14 17:08:49 +02:00
Helium314
181ea3b586 disable shrinkResources because the build process seems to randomly ignore tools:keep 2024-06-14 16:32:50 +02:00
Helium314
d1c2ad0a39 fix system sometimes enabling wrong subtype 2024-06-13 20:36:04 +02:00
Helium314
237adc991b properly update toolbar prefs 2024-06-13 20:08:40 +02:00
Helium314
3add493888 version and translations 2024-06-13 00:21:41 +02:00
Helium314
5ccb79a078 disable preview popup for language switch and emoji keys 2024-06-12 23:59:33 +02:00
Helium314
6a34f2c832 improve emoji detection when deleting
still has issues with hand + skin tone emojis
2024-06-12 23:54:23 +02:00
Helium314
d91350524a move cursor in whole codepoints on space / delete swipe
and when space-swiping across emoji, send fake arrow keypress instead (discouraged, but avoids e.g. splitting pirate flag emoji and thus justified)
fixes #859
2024-06-12 22:46:42 +02:00
Helium314
5b1f40f0f6 do a sanity check when setting composing text on text fields that have suggestions disabled
fixes #225
could cause unnecessary text / suggestion reloads or performance regressions, though not found in testing
2024-06-12 20:24:16 +02:00
Timo
0e992dd8b9
fixed typos in layouts.md #870 (#871) 2024-06-11 22:13:44 +02:00
Helium314
b7fa85dcee fix broken tests 2024-06-11 22:12:31 +02:00
Helium314
843b8c44f7 replace old fix from 9713c4a25a with improved consistency check
and avoid somewhat unexpected crash
2024-06-11 22:02:32 +02:00
Helium314
ce30c3b294 fix issue with text being inserted when deleting quicky in joplin (and probably other apps) 2024-06-10 22:53:41 +02:00
Helium314
d596c028a1 more logging 2024-06-09 12:12:38 +02:00
Helium314
9c926911fc set preview popup icons as left drawable instead of bottom
fixes #811

remaining issue:
when pressing a key with icon and preview popup before a letter popup, preview and popup height is too low
but this should only trigger rarely, and is not worse than the fixed issue
2024-06-09 11:25:34 +02:00
Helium314
743874f74c remove icon name "undefined" and use null instead 2024-06-08 11:47:42 +02:00
Helium314
a297b6037c fix missing preview popups for keys with icon and negative code 2024-06-08 11:31:40 +02:00
codokie
d11237ba23
add emoji toolbar key (#845) 2024-06-07 08:21:13 +02:00
Helium314
a841777b92 improve currency popup handling 2024-06-06 22:18:53 +02:00
Helium314
bdc418cb70 improve popup key compatibility woith codes and labels 2024-06-06 21:53:23 +02:00
Helium314
4de8f770ef update description 2024-06-06 18:27:08 +02:00
Helium314
1ea8d936a4 upgrade dependencies 2024-06-03 19:07:39 +02:00
Helium314
c212d9e551 clarify that json layout contributions should only use key type and code if necessary 2024-06-02 17:55:28 +02:00
Helium314
1b5ed60017 add changelog and adjust version name 2024-06-02 15:30:57 +02:00
Helium314
da6d3d1f78 update translations 2024-06-02 15:07:05 +02:00
Helium314
7b7fcb18c4 disable auto-show/hide toolbar by default
to be consistent with previous behavior
2024-06-02 14:04:53 +02:00
Helium314
53c66b8b84 fix toolbar being visible when device is locked and auto-show toolbar is on 2024-06-02 14:03:09 +02:00
Helium314
bc1e4d52a8 adjust alphabet for AlphabetIndexer, might help with #803 2024-06-01 23:15:41 +02:00
Helium314
a1d32b84fd separate language switch key behavior from key enablement 2024-06-01 22:27:41 +02:00
Helium314
4dc0e98321 move new show/hide toolbar settings and do some cleanup 2024-06-01 22:18:19 +02:00
codokie
b9451e4f09
auto show / hide toolbar (#674)
Co-authored-by: codokie <@>
Co-authored-by: Helium314 <helium314@disroot.org>
Co-authored-by: Helium314 <helium314@mailbox.org>
2024-06-01 14:32:12 +02:00
Helium314
c048ff6ff6 update tools scripts 2024-06-01 13:50:06 +02:00
Helium314
f0ab9cdd21 remove ... hint from symbols period key 2024-05-31 20:29:27 +02:00
codokie
e357f84572
Add toast notification when copying from clipboard (#752)
and use the toast for showing dictionary on double-long-press word: switch from one ugly workaround (popup menu) to another (hiding more suggestions panel)

Co-authored-by: codokie <@>
Co-authored-by: Helium314 <helium314@mailbox.org>
2024-05-31 17:01:50 +02:00
Helium314
df6af1f07e fix broken popup key width in number layouts 2024-05-31 12:10:46 +02:00
Helium314
af636badab add comma key popups for number layouts
(for phone layouts it's on period because there is no comma key)
fixes #823
2024-05-31 09:58:35 +02:00
Helium314
d171c6b3c6 reduce issues when splitting layout with customized functional keys and uncommon space bar 2024-05-31 09:42:49 +02:00
Helium314
4ea2929139 update hebrew layout, fixes #735
see discussion in #738

Co-authored-by: codokie <@>
2024-05-30 21:04:51 +02:00
Helium314
e69a54303d move mns.txt to the correct folder 2024-05-28 22:04:21 +02:00
Helium314
f8a2e2adcc move toolbar preferences to a separate fragment
with 2 more settings coming soon this is probably justified
2024-05-28 22:02:31 +02:00
Helium314
388366c242 make long-press toolbar pinning optional 2024-05-27 20:34:26 +02:00
Helium314
0f503389b3 minor cleanup and add comment 2024-05-27 20:21:59 +02:00
Helium314
7473d5b32b fix unwanted popups on language extra keys
regression from recent parser updates
2024-05-27 18:36:35 +02:00
Helium314
b868b583dd remove old device-dependent behavior
not updated in 10 years, only few of those are still in use

device-specific default key press volume and vibration duration
and a workaround for bad touch firmware on Motorola Xoom
2024-05-26 20:25:13 +02:00
Helium314
fb26eb8e7a fix inconsistent behavior when switching text fields
actually the previous input attributes were used initially, which caused suggestions to show up or not depending on the previously selected field
moving the settings reload should be safe, at least i checked for potential issues
2024-05-26 19:34:55 +02:00
Helium314
af3d0535b2 fix issue when trying to paste text while cursor is in a word 2024-05-26 19:15:57 +02:00
Helium314
6c2a3e8b5f add tab key 2024-05-26 14:43:37 +02:00
Helium314
7d1627ffc6 adjust locale confidences in incognito mode 2024-05-26 14:17:31 +02:00
Knut Ingvald Dietzel
19ff4a5837
Add primary quotation marks for 'Norwegian bokmål' (#806) 2024-05-25 23:13:40 +02:00
codokie
2c24f190c1
Allow clear clipboard history toolbar key in normal toolbar (#679)
Co-authored-by: codokie <@>
Co-authored-by: Helium314 <helium314@disroot.org>
2024-05-25 23:12:11 +02:00
Helium314
c98d6d0cc6 fix broken ctrl/alt/fn/meta 2024-05-22 23:47:51 +02:00
Helium314
a9ec745650 understand ctrl/alt/fn/meta and toolbar key labels in keyboard layouts 2024-05-22 23:28:44 +02:00
Helium314
bd7461f628 add / to symbols layout and adjust functional key layouts for symbols layouts
i remember this was requested, can't find the issue though
anyway, now with fully customizable layouts this is not blocked by "people might be used to this" any more
2024-05-22 22:55:52 +02:00
Helium314
0459971e3a add setting for customizing functional key layouts 2024-05-22 22:34:17 +02:00
Helium314
17aa321fbd move background image and customizing number/symbol layouts out of experimental settings 2024-05-21 17:55:50 +02:00
Helium314
c566c93bff import translations, upgrade version 2024-05-20 22:26:26 +02:00
Helium314
1a1c8890f6 use existing arrow icons instead of duplicating the vector data 2024-05-19 22:27:06 +02:00
codokie
bb3fe9d9f9
Add caps lock indicator (#692) 2024-05-19 16:42:20 +02:00
Helium314
f81e24d550 allow enabling popups on keypress on tablets
still disabled by default, because the popups are too small (size should not be in dp, but in % of screen width or something like that)
fixes #799
2024-05-19 15:26:57 +02:00
Helium314
77f03b0756 allow customizing all colors, fixes #529 2024-05-18 20:27:22 +02:00
Helium314
eada9bc51c don't store colors immediately when changing
only store when user presses ok
avoids bugs, most prominently that the color remains when closing the app while in color picker
2024-05-18 18:37:13 +02:00
Helium314
1f0f7f6b7c simplify setting touchPositionCorrectionData 2024-05-18 15:59:47 +02:00
Helium314
2cb2a5da21 sort HeliBoard subtypes by name in InputMethodPicker 2024-05-18 15:01:30 +02:00
Helium314
6bf29ffc16 remove label processing from KeyboardParser 2024-05-18 14:52:12 +02:00
Helium314
1a630821db move information to subtype extra value:
whether layout has shift key
whether proximity-based corrections should be enabled when shift is enabled
2024-05-18 14:34:46 +02:00
Helium314
b76dc8ced5 move content of layoutInfos to more suitable places
and add plans for moving it around some more
2024-05-18 14:14:56 +02:00
Helium314
2466187eb3 (partially) remove workaround for key params 2024-05-18 10:30:46 +02:00
Helium314
5b4ba11fb7 remove some old attrs stuff 2024-05-17 22:05:36 +02:00
tenextractor
e54d816126
Add Mansi layout (#791) 2024-05-17 19:57:23 +02:00
Helium314
8ea693d92e add a failing test for stuff that should be fixed 2024-05-17 19:30:52 +02:00
Helium314
ec72b49ead move contribution guidelines into default file CONTRIBUTING.md 2024-05-17 19:04:39 +02:00
Helium314
4a6ef14309 after upgrade, disable new toolbar keys if the toolbar is customized 2024-05-17 18:36:41 +02:00
Helium314
71727de5a0 add basic support for modifier keys, fixes #479 2024-05-17 17:24:34 +02:00
Helium314
1a91ce5dd0 allow commenting lines in json layouts by starting the line with // 2024-05-17 17:22:51 +02:00
Helium314
82705e5d5e remove unused fields in DictionaryHeader 2024-05-15 22:54:11 +02:00
Helium314
528bbb4f7f upgrade build.gradle and do some code inspection stuff 2024-05-15 22:47:24 +02:00
tenextractor
f825436449
Add Hungarian (Extended) layout (#774) 2024-05-15 19:56:20 +02:00
Helium314
71ddc20041 don't show input method pick on long pressing a custom space key with popups 2024-05-14 23:40:56 +02:00
Helium314
ed776c3804 overhaul style of parsing layouts
and add a cache
2024-05-14 23:31:55 +02:00
Helium314
1bd30f612b fix long-pressing pinned toolbar key when it's not in normal toolbar 2024-05-13 19:34:59 +02:00
Helium314
1d1e0cc987 always set AllowRedundantPopupKeys in the same place 2024-05-12 19:06:04 +02:00
Helium314
3862d1e9b2 identify keyboard icons by name only
re-work KeyboardIconsSet
also fixes a recent regression where some icons are not displayed
2024-05-12 18:08:15 +02:00
Helium314
789b76b790 add eo diacritics needed for multilingual typing, fixes #740 2024-05-12 14:27:53 +02:00
Helium314
7f1161218e fix some issues with key texts and icons
fixes #750
2024-05-12 14:09:43 +02:00
Helium314
b3aac1a05a add input logic test for double space -> period (and deletion) 2024-05-12 12:00:49 +02:00
Helium314
8f3e4fff8c allow selecting more icons in custom keys, update layouts.md 2024-05-12 00:20:56 +02:00
Helium314
38228f8b70 parse number and alpha/symbol layouts using the same function 2024-05-11 23:25:47 +02:00
Helium314
9bb64d561f read use_contacts pref as false if permission was revoked
avoids resetting dictinary facilitator on every startInputView
2024-05-11 17:40:49 +02:00
Helium314
6b05d019a1 update workflow triggered on PR 2024-05-11 16:12:15 +02:00
Helium314
0b7f0adc56 small refactor / remove unused code 2024-05-11 15:51:55 +02:00
Helium314
34d8bd16f0
Migrate functional key layouts to json (#778)
Now the functional key layouts should be (mostly) compatible to FlorisBoard
Not yet customizable, this is a large step towards customizable functional key layouts
2024-05-11 15:41:00 +02:00
Helium314
691ae017bc rename langauge_key_texts to locale_key_texts 2024-05-02 16:20:49 +02:00
Helium314
da3a7dd854 move decapitalize into a separate function 2024-05-02 16:17:46 +02:00
Pa1NarK
955359e33b
add extended layout for kannada (#444) 2024-05-02 15:05:51 +02:00
Radik Islamov
5440a3ec7d
Add Eastern Mari layout (#755)
Co-authored-by: Helium314 <helium314@mailbox.org>
2024-05-01 23:56:40 +02:00
Helium314
2fc5286b97 make clipboard toolbar keys customizable 2024-05-01 23:41:11 +02:00
Helium314
edd4ae2c68 small adjustments after #691 2024-05-01 22:59:16 +02:00
codokie
83fc10ff02
Add long press functions to more toolbar keys, and more clipboard history toolbar keys (#691)
Co-authored-by: codokie <@>
2024-05-01 22:44:51 +02:00
Helium314
6bb49ee1a0 fix broken build 2024-05-01 20:39:46 +02:00
Helium314
3d74ef342e update texts, should help with #766 2024-05-01 20:25:14 +02:00
Volterxien
e0c5da380e
Option to always show word to be enterd as middle suggestion (#739)
Co-authored-by: codokie <@>
Co-authored-by: Volterxien <volerxien.github@jacbo.me>
2024-05-01 06:33:57 +02:00
Marko Kocić
26a5934e2f
Correct Russian Students Layout (#763)
replaced latin Y with cyrillic У
2024-04-29 23:45:56 +02:00
Gabriele Monaco
5cffb0b3c8
Add Piedmontese language (#748) 2024-04-29 23:43:51 +02:00
Helium314
4476456b83 workaround for languages that don't have a display name in all languages 2024-04-29 23:41:36 +02:00
codokie
dc4cdea687
Fix key preview text cut off (#744) 2024-04-25 20:57:10 +02:00
Helium314
6ff98d3a05 update templates
maybe there is a way of convincing users to at least understand the 15 word tl;dr
2024-04-25 20:35:14 +02:00
codokie
9c2cf04d4a
fix issues with clipboard after switching keyboard (#728) 2024-04-21 12:04:35 +02:00
Helium314
290944635f simplify loading pinned clips
we don't need to read a file any more
also makes sure pinned clips are initially loaded before fetching the primary clip
2024-04-20 23:24:14 +02:00
Helium314
a58a7cc932 avoid crashes when logging exceptions 2024-04-20 21:58:18 +02:00
Helium314
fc1f193720 upgrade dependencies 2024-04-20 19:36:14 +02:00
Helium314
bd453c26cd lint 2024-04-20 12:43:58 +02:00
Helium314
eea2dd4ee8 update version and translations 2024-04-20 12:08:48 +02:00
Helium314
5e421f0d1c fix unit tests 2024-04-20 11:47:17 +02:00
tenextractor
6549fd3573
Update Estonian layout (#693)
Co-authored-by: tenextractor <tenextractor@outlook.com>
2024-04-20 11:46:50 +02:00
Helium314
80a0668237 reduce margin in reorder dialogs
now with the icons for toolbar keys more space is preferable
2024-04-20 11:32:37 +02:00
Helium314
f1b4e3ad3a add izzy badge to download links, update translation fetch script 2024-04-19 22:58:58 +02:00
Helium314
e2b687a567 add logging for finish input (view) 2024-04-19 22:19:11 +02:00
Helium314
da467a6751 mark some getText methods as nullable and avoid related issues
fixes one of the crashes in #723
2024-04-19 21:46:13 +02:00
codokie
9a893d8e22
fix toolbar reorder dialog icons color (#716)
Co-authored-by: codokie <@>
2024-04-17 22:19:16 +02:00
Md. Rifat Hasan Jihan
6deffee801
New fastlane images (#713) 2024-04-17 22:18:13 +02:00
codokie
300cb6e184
Only add text clips to clipboard history (#711)
Co-authored-by: codokie <@>
2024-04-16 19:51:16 +02:00
Helium314
382bdb6ff6 fix spellchecker crash when keyboard has never been initialized, fixes #684 2024-04-15 22:59:33 +02:00
Helium314
87f1092eac allow line breaks in setting titles
only necessary for PreferenceScreen and ListPreference, others already allow it be default
2024-04-15 22:38:21 +02:00
codokie
19c22dd497
fix duplicated pinned clipboard entries (#680) 2024-04-15 22:17:15 +02:00
Marko Kocić
7bad5c94a4
Update Serbian Cyrillic layout (#705)
Fix #704
2024-04-15 21:41:11 +02:00
Helium314
28bc9a433e upgrade version and update translations 2024-04-12 17:49:06 +02:00
Helium314
a9411b3631 properly re-sort the list when copying an existing clipboard entry 2024-04-12 17:35:57 +02:00
codokie
f915e46468
cut toolbar key (#678) 2024-04-12 17:05:53 +02:00
tenextractor
6a9156f0eb
Add Chuvash layout (#677)
Co-authored-by: tenextractor <tenextractor@outlook.com>
2024-04-12 16:46:43 +02:00
Helium314
d3ddf8d9d2 update layouts.md 2024-04-11 22:52:38 +02:00
Helium314
3754b2be82 display "<language> (<layout>)" also for custom layouts 2024-04-11 19:44:37 +02:00
Helium314
9bd2136ebe avoid potentially unwanted layout switches due to hint locales 2024-04-11 18:23:59 +02:00
Helium314
58f98e3024 use constant to define "good" language match 2024-04-11 18:22:45 +02:00
Helium314
159fd55695 update templates 2024-04-09 23:25:38 +02:00
Helium314
846c25a0a3 fix missing ı popup key, #648 2024-04-08 16:43:29 +02:00
Helium314
136a12ad6c
add F-Droid & GitHub links to readme 2024-04-07 21:49:40 +02:00
Helium314
1c075de0c8 make long press symbols key -> numpad optional, fixes #588 2024-04-07 10:03:08 +02:00
Helium314
58e56e5528 update readme
add section about installing / copying to system app folder
fixes #605
2024-04-06 20:14:23 +02:00
Helium314
8870601402 remove unnecessary rounded close icon, see #649
and rename closeView to close, as the icon can be more generic than the toolbar key
2024-04-06 19:33:11 +02:00
codokie
38126d2840
add close history view toolbar button (#649) 2024-04-06 18:11:28 +02:00
codokie
dcddcccf09
improve auto correct & select all icons (#651) 2024-04-06 12:47:37 +02:00
Helium314
4ee01527a2 show toolbar icons in toolbar key dialog 2024-04-06 12:22:14 +02:00
Helium314
52f567ff9e rename reorderPopupKeysDialog to reorderDialog
add icon to layout, should later display toolbar key
2024-04-06 11:17:56 +02:00
Helium314
0ab9aeb8e6 update readme 2024-04-06 09:54:41 +02:00
Helium314
34b9799710 remove theme logging added in a657d0e300
wasn't necessary, everything working here
2024-04-06 09:23:50 +02:00
Md. Rifat Hasan Jihan
605c5842e9
match COLORS_DARK default (#637) 2024-04-06 08:17:30 +02:00
Helium314
4354b33fa4 make extra currently keys work in popups 2024-04-05 23:51:35 +02:00
Helium314
a25ce3aa87 display correct name when editing symbol and number layouts 2024-04-05 23:27:47 +02:00
Helium314
5628cbf2b6 avoid bad interaction between symbols layout name and assumed locale
fixes #632
2024-04-05 23:25:31 +02:00
Zolax
231ffedd90
add Russian (Student) layout (#640) 2024-04-05 19:57:31 +02:00
Md. Rifat Hasan Jihan
99d03db478
Update formatting of Hidden features text 2024-04-04 19:52:26 +02:00
Fahim Montasir Misbah
beba8f1b3d
alter fullstop and equivalent in probhat layout (#628) 2024-04-04 19:11:54 +02:00
Zolax
77cdf48846
fix markdown link in readme (#635) 2024-04-03 20:43:27 +02:00
Helium314
c8a10b9d42 add donation information (might be extended) 2024-04-03 19:04:44 +02:00
Helium314
8d546fad5e update version 2024-04-02 17:28:23 +02:00
Helium314
39e00276fe avoid adding duplicate clipboard entries 2024-04-02 16:55:08 +02:00
Helium314
88cde3ee3a update readme and add issue template for issues related to the spell checker 2024-04-02 16:44:54 +02:00
Helium314
41d3c466cf add tl;dr to issue templates 2024-04-01 08:20:48 +02:00
Helium314
42f7b62543 fix haptic and audio feedback
got broken in cd44d2dc9f
fixes #597
2024-03-31 23:05:37 +02:00
Helium314
f859e80aca upgrade version, update translations and changelog 2024-03-31 21:55:01 +02:00
The Eclectic Dyslexic
252b435fd3
Add new vector icon (#592) 2024-03-31 21:24:10 +02:00
arcarum
69d60742c4
Simplify InlineAutofillUtils code (#595) 2024-03-31 09:33:12 +02:00
Fahim Montasir Misbah
47b5502c1d
add probhat layout (#489) 2024-03-29 15:14:15 +01:00
Helium314
e289e7ef5f move zwj and zwnj codes from Constants to KeyCode
and support florisboard name half_space for zwnj
2024-03-27 06:10:31 +01:00
Helium314
cd44d2dc9f move keyboardActionListener implementation into separate class
(it will be extended later)
2024-03-27 06:09:59 +01:00
Helium314
8ec6138771 set move cursor as default horizontal spacebar swipe action
to have same default as previously
2024-03-27 06:09:23 +01:00
codokie
fb9008e9fe
Make toolbar direction for RTL layouts adjustable (#574) 2024-03-27 06:04:59 +01:00
Helium314
613f2e80a3 update readme 2024-03-25 21:49:34 +01:00
Helium314
086647761d change features section in readme to html, copy to full_description.txt for f-droid 2024-03-25 20:49:38 +01:00
Helium314
c4fcb74b0e disable IS_HARDWARE_KEYBOARD_SUPPORTED
not working properly when enabled (e.g. ctrl+v)
2024-03-25 20:21:50 +01:00
Helium314
d867c6127c udpate workflows
debug apk not built automatically any more
automatic build does not produce an apk, but only needs to build a single abi
2024-03-24 17:43:35 +01:00
Helium314
700867d6d6 add manual trigger to build workflow 2024-03-24 17:30:49 +01:00
Helium314
f07c6d9c77 send key event instead of text when entering numbers in a non-text field
fixes #585
2024-03-24 07:38:51 +01:00
Helium314
7adeb408cc no need to get editorInfo for inputType 2024-03-24 07:09:35 +01:00
Helium314
3bf7d0ea5c add % to shift symbols layout
see #568 and #428
2024-03-23 22:45:36 +01:00
Helium314
a657d0e300 add some logging on selected theme for #565 2024-03-23 17:16:01 +01:00
Helium314
c3ec124c86 allow disabling layout popup keys
becuase sometimes layout popup keys are a bit mis-used, and it should be the user's choice
2024-03-23 11:42:07 +01:00
Deltadroid
63de83ac94
Enable abort on lint check failure (#570) 2024-03-17 21:35:18 +01:00
Helium314
e8a71fbe04 update comments / plan 2024-03-17 19:19:33 +01:00
Deltadroid
4fff31d1f5
Update NDK to r26c (#560) 2024-03-17 13:52:40 +01:00
Helium314
fd03b7ce43 setup color prefs after restoring view state
because the (re)stored view state is not correct for some reason
fixes #563
2024-03-16 07:47:05 +01:00
Helium314
c20489d1de update readme (todo section) 2024-03-15 21:06:12 +01:00
Helium314
3ee768fe17 show links to known dictionaries when enabling a locale without local dictionary 2024-03-15 18:01:15 +01:00
Helium314
7058fb78b8 use timeout for both space swipe directions, and require minimum move distance
fixes #555
2024-03-14 02:58:12 +01:00
Helium314
0ccc500c1e update layouts.md 2024-03-12 22:05:52 +01:00
Helium314
dab2fa4f42 better error message when loading invalid json layout 2024-03-12 21:48:17 +01:00
Helium314
b47bc52e7d improve support for special keys and floris layouts (not fully there yet...) 2024-03-12 21:37:53 +01:00
Helium314
c29eb0d03e fix wrong filename for customized json layouts 2024-03-12 14:14:16 +01:00
Helium314
29a4bb4558 add that always showing suggestions may cause issues 2024-03-11 23:12:45 +01:00
Helium314
f7086d32b5 update strings 2024-03-11 23:04:14 +01:00
arcarum
4b78546e97
Add support for vertical cursor movement using the spacebar (#486)
---------

Co-authored-by: Helium314 <helium314@disroot.org>
2024-03-11 22:42:25 +01:00
Helium314
1ffa4766af update readmes 2024-03-11 19:08:40 +01:00
Helium314
3b8b44b34b fix issue when specifying codes in json layouts 2024-03-10 20:10:23 +01:00
Helium314
3feac6d966 don't hide voice input key for TYPE_TEXT_VARIATION_URI
see #544
URL fields are frequently used as search fields
2024-03-10 19:41:46 +01:00
Helium314
ec4d0558e7 store clipboard history entries in companion object
fixes #548
2024-03-10 19:08:18 +01:00
Helium314
7d004c1c79 add python script for updating translations and running the makeDictList task 2024-03-10 13:26:58 +01:00
Helium314
9e375e9926 adjust build workflow 2024-03-10 08:25:08 +01:00
Helium314
8d13a66a00 adjust colors so pressed toolbar keys change background color 2024-03-10 06:10:59 +01:00
Helium314
0f250d72bb allow storing AllColors in prefs (still not used) 2024-03-10 05:29:05 +01:00
Helium314
aa94c84d52 rename subtype settings and clean up when renaming in shared prefs 2024-03-06 22:07:38 +01:00
Helium314
2a13ae186a avoid immediate switch to other app when language key switches both layouts and keyboard apps 2024-03-06 21:29:11 +01:00
Helium314
0298973d91 fix minor issues when copying custom layout from existing layout 2024-03-06 21:19:22 +01:00
Helium314
273cd87c2b add separate turkis layout
fixes #339
fixes #508
2024-03-06 21:18:09 +01:00
Helium314
a0c7b28b91 use TypedValueCompat for dp <-> px conversion 2024-03-06 20:55:47 +01:00
Helium314
1874e11d30 update readme 2024-03-04 22:10:47 +01:00
Helium314
b263b96b96 always load recent emoji keys right after creating recents keyboard, fixes #527 2024-03-03 15:13:11 +01:00
Helium314
4b52f2d51d properly determine length of emojis when deleting
fixes issue described in https://github.com/Helium314/HeliBoard/issues/426#issuecomment-1944132643, but not the initial problem
2024-03-03 14:48:03 +01:00
Helium314
fe5aa2c33c remove unused SYMBOL_SHIFT key 2024-03-02 21:07:27 +01:00
Helium314
a34b3f4cdd switch internal codes for functional keys to the same as florisboard
for better compatibility of layouts
also convert labels
2024-03-02 21:02:48 +01:00
Helium314
7b0ee924ae use less specific key codes 2024-03-02 18:52:55 +01:00
Helium314
b30ac99b09 prepare for adding AllColors 2024-02-27 20:31:00 +01:00
Helium314
777737db72 add todo section to readme 2024-02-27 16:55:46 +01:00
Helium314
c9d9ef5c63 udpate readmes 2024-02-27 11:29:44 +01:00
Helium314
ae52951b59 remove native build id for reproducible builds 2024-02-27 11:19:10 +01:00
Mæxæmæt
056ba3731a
Kaitag language support (#519) 2024-02-27 11:18:26 +01:00
Helium314
6c6799e97e clarify that changing layout is only possible if "use system languages" is disabled 2024-02-20 11:05:34 +01:00
Helium314
5e4361b119 avoid loading uris from content resolver on main thread
because uris might point to network locations, which triggers an exception
main thread is still blocked by loading, this is purely to get around the crash (files are small, and usually stored locally)
2024-02-20 10:33:47 +01:00
Helium314
2dfc824319 allow customizing more layouts (number, phone, numpad, ...) 2024-02-20 08:44:12 +01:00
Helium314
71cfe3fbef update translations from weblate 2024-02-20 08:12:57 +01:00
Michael Keck
060f98af13
CI: Enable for main branch and PRs + update actions (#485)
* CI: Run on all branches and pull requests

* CI: Update actions

* CI: Only run on the main branch + all PRs

* CI: Use official gradle action

It promises to handle CI caching better than the setup-java action.

9e899d11ad/setup-gradle/README.md
2024-02-20 07:31:26 +01:00
Helium314
d3da4478b4 disable onCheckedChangeListener while setting switch state, fixes #505 2024-02-19 14:33:51 +01:00
Helium314
fd95b4dc87 add list of known dictionaries for more convenient links 2024-02-19 14:10:49 +01:00
Helium314
b1eb33f6e2 add more locales to spellchecker.xml 2024-02-17 17:07:18 +01:00
Helium314
8ff7810df9 update readmes 2024-02-17 07:42:18 +01:00
src
f177bb984b
Fix typo in README.md (#493) 2024-02-16 05:00:32 +01:00
FineFindus
2646c0ae10
chore: fix typos in feature_request template (#491) 2024-02-15 18:33:50 +01:00
Helium314
759cb48e1e update readme and do some more logging 2024-02-15 16:32:25 +01:00
Helium314
b34ac45312
Update layouts.md 2024-02-15 12:39:31 +01:00
Helium314
a0324b54d7
Update layouts.md 2024-02-15 11:57:30 +01:00
Helium314
27259ac376 update readme and pr template 2024-02-15 11:53:01 +01:00
Helium314
5ce9e09f7d update readme and description 2024-02-15 11:13:42 +01:00
Helium314
857fe3c59f update readme and fastlane data 2024-02-14 19:02:40 +01:00
Helium314
161409a73e update readme, remove old images
and properly close stream
2024-02-14 11:47:38 +01:00
Helium314
daa20a1c2c fix inclusion of separator in language popup keys 2024-02-14 11:21:47 +01:00
Helium314
b4a223ae67 rename LocaleKeyTexts, move some parts from LayoutInfos there 2024-02-14 11:08:44 +01:00
Helium314
be9b438cca fix some minor issues 2024-02-14 10:49:26 +01:00
Helium314
130bbbd56f update fastlane screenshots 2024-02-14 10:48:47 +01:00
Helium314
9df66bdf42 fix missing changes from 150cbe626e 2024-02-14 09:59:53 +01:00
Helium314
150cbe626e update strings, add translation link
remove msgid from strings resources
move action key texts into normal strings file for easier translation
2024-02-14 09:56:54 +01:00
Helium314
be38a58c13 update app name in resources, readme, comments, ... 2024-02-14 09:22:30 +01:00
Helium314
0109b073fa add log message when subtype has unknown language 2024-02-13 23:32:25 +01:00
Helium314
d983b469fe fix crash when using credential protected preferences too early 2024-02-13 08:23:07 +01:00
BlackyHawky
d0dc242a28
Fix "For all languages" display (#473)
Co-authored-by: Helium314 <helium314@mailbox.org>
2024-02-13 07:45:44 +01:00
Helium314
5ec55f3e0e
fix small almost-edge keys (#478) 2024-02-11 19:40:54 +01:00
Helium314
f657ebad3d don't include dependenciesInfo, see #477 2024-02-11 06:53:49 +01:00
Helium314
84713fb0f9 slight adjustments to kannada layout for #444 2024-02-10 19:44:20 +01:00
Helium314
b872975189 remove HIDE_SOFT_INPUT permission 2024-02-10 18:55:30 +01:00
Helium314
7ea85d597b
Update README.md 2024-02-08 20:03:09 +01:00
arcarum
abc23d23be
Avoid hiding the toolbar and pinned keys during inline autofill (#474) 2024-02-07 20:49:38 +01:00
Helium314
ea2e2b301b a little cleanup in Suggest 2024-02-06 22:00:12 +01:00
Helium314
00a45a621e convert Suggest to kotlin
no functional changes
should simplify the todos
2024-02-06 20:55:15 +01:00
Helium314
26809444bd rename more keys to popup keys
user-facing name is already popup keys, now internal rename is done to avoid confusion and for consistency
2024-02-05 09:33:06 +01:00
Helium314
e708c026bc rename layouts to always use the full language name 2024-02-05 08:06:26 +01:00
Helium314
4645e425e6 remove or add info to some todos 2024-02-04 09:31:45 +01:00
Helium314
8eb8a2368a remove unused code 2024-02-03 11:35:11 +01:00
Helium314
38fd364178 work on a bunch of todos 2024-02-03 10:59:46 +01:00
Helium314
f06193f1f0 avoid potential issues when restoring settings 2024-02-02 21:47:25 +01:00
Helium314
246cd6c5cf add a log message when selected subtype is not found 2024-02-02 20:46:51 +01:00
Helium314
3a354524f3 remove unused annotations 2024-02-01 22:42:25 +01:00
Helium314
978d76ed7c adjust build and add a variant that doesn't allow user-added libraries 2024-02-01 22:10:54 +01:00
Deltadroid
53022afdab
Filter NDK ABI list (#443)
Allow filtering ABI for creating faster test builds
2024-02-01 21:43:43 +01:00
Helium314
27f2492edd fix some missed cases of using langauge tag instead of locale string
string conversion was implicit, so a bit harder to find
fixes #469
2024-02-01 19:46:44 +01:00
Helium314
faf75963a8 minor adjustments to colors and settings 2024-02-01 18:40:47 +01:00
Helium314
e0c37b81fd remove unnecessary code/resources 2024-02-01 17:01:41 +01:00
Helium314
5e5f045495 consider script when evaluating hint locales 2024-02-01 10:56:41 +01:00
Helium314
9cce029e06 don't allow disabling popop keys in non-alphabet layouts
and slightly adjust readme
2024-02-01 10:31:21 +01:00
Helium314
eb7333b1da long-press symbols key for numpad
issue: immediately switches to symbols layout, after delay switches to numpad
2024-02-01 09:25:37 +01:00
Helium314
21254d895c add "block offensive words" setting to spell checker settings too
and make sure we have settingsValues when using spell checker only
2024-02-01 08:51:17 +01:00
Helium314
d18c15d027 add the tests missed in last commit 2024-02-01 07:26:47 +01:00
Helium314
d5c97a9697 follow code in popup keys
code will always be preferred over a|b style labels
add some tests for adjusted KeySpecParser
fixes #466
2024-02-01 07:22:41 +01:00
Helium314
f19ffa54c9 fix rtl detection 2024-02-01 06:47:40 +01:00
ButterflyOfFire
a0caa00a1d
Add Kabyle layout (#468) 2024-01-31 21:54:53 +01:00
Helium314
1490ddddd8 some adjustments after renaming the package 2024-01-31 21:12:34 +01:00
Helium314
40f39a70d0 some fixes 2024-01-31 19:49:50 +01:00
Helium314
a91a90bfbd rename package
introduces weird bugs for some reason
2024-01-31 18:32:43 +01:00
Helium314
8c40d4f3e8 a bunch of minor fixes 2024-01-31 17:26:27 +01:00
Helium314
09803fdf92 rename prefs for more keys to popup keys
more internal renaming will follow (later)
2024-01-31 16:54:31 +01:00
Helium314
0c868ab22a remove welcome video, use the image instead
that video is not worth 300 kB
2024-01-31 16:28:43 +01:00
Helium314
7b649eeb12 adjust backup of preferences 2024-01-30 17:32:58 +01:00
Helium314
0ba7b6370a only use locale.toString directly where necessary
stick to Locale as long as possible
2024-01-30 14:23:31 +01:00
BlackyHawky
6211f42963
Change a confusing French translation (#463) 2024-01-30 13:50:50 +01:00
Helium314
983897e96e lint 2024-01-29 16:00:24 +01:00
Helium314
2f5e3230d0 some adjustments / lint / unused code 2024-01-29 14:32:51 +01:00
Helium314
e98d8fa092
Update layouts.md 2024-01-29 13:24:52 +01:00
BlackyHawky
9fb59ede63
Add dynamic colors to settings (#454) 2024-01-29 12:54:23 +01:00
Helium314
2beb949aed always show typed word when autocorrect can happen
fixes #458
2024-01-28 20:01:34 +01:00
BlackyHawky
c761f6f357
Prevent debugging parameters from being visible after a restore (#358)
Co-authored-by: Helium314 <helium314@disroot.org>
2024-01-28 18:36:38 +01:00
Helium314
d5956ed891 remove unused tools for old xml layout style, update readme 2024-01-28 18:16:48 +01:00
Helium314
89afcfd9d3 adjust where things are stored, and improve migration from old version
pinned clips and library checksum are now in normal (not device protected) preferences (sensitive data)
layouts and background images are now in device protected storage (required after boot)
2024-01-28 18:05:38 +01:00
Helium314
b714fc6566 reload enabled subtypes on settings restore 2024-01-28 15:02:06 +01:00
Helium314
2020db2e63 rename some prefs and add upgrade function when coming from old app name 2024-01-28 14:23:38 +01:00
Helium314
b3a56bec10 add version upgrade function 2024-01-28 13:55:11 +01:00
Helium314
7f1a7d9007 fix wrong dictionary info shown when replacing, fixes #456 2024-01-28 13:01:21 +01:00
Helium314
4a36c646c7 fix crash reported in #459 and improve formatting 2024-01-28 12:45:58 +01:00
BlackyHawky
4d071e294c
Add missing French translations (#442) 2024-01-28 11:10:05 +01:00
Helium314
c8f99e67e8 warn about submitting new PRs until package is renamed 2024-01-28 11:06:51 +01:00
Helium314
10d46619f9 get rid of reflection for creating dyamic dictionary types 2024-01-28 11:00:56 +01:00
Helium314
9f36109feb no need to backup userunigram files
it's just the cache for personal dictionary as read from the system
2024-01-28 10:50:26 +01:00
Helium314
bf1f024082 remove unused hu_rZZ resources, move some stuff to normal hu
and fix hi_rZZ to use language tag instead
2024-01-28 10:49:09 +01:00
Helium314
ac7fb752df
Use language tags (#445)
WARNING: due to renames, your existing user history and blacklist files might not be used after this commit. If you build the app with this commit, backup and restore settings ot fix it.

Use language tags for identifying a string locale, not Locale.toString.
This allows to avoid issues with non-default scripts, e.g. we can now use `sr-Latn` instead of the `sr_ZZ` workaround.
Existing files are not renamed, but rename will happen when restoring backups.

Most of the occurrences of a locale string have been replaced with Locale where possible. One notable exception is in user dictionary settings, where the locale string must be used to retrieve contents from system personal dictionary.

Internal script IDs are switched to string as used in language tags, e.g. Latn for latin. This allows for correct interpretation of a Locale with explicitly specified script.
2024-01-28 10:42:42 +01:00
Helium314
93dfecfe9e update readme and layout info 2024-01-26 20:42:39 +01:00
Helium314
bd534bf5c0 don't hide "with gesture typing" when it's actually available 2024-01-26 19:30:45 +01:00
Helium314
6fe4a5b6f3 enable setting key background color for key borders off, use it for pressed key background
useful for adding transparency with a background image
2024-01-26 19:16:57 +01:00
Helium314
b35eb64800 fix key preview showing up at wrong position in one-handed mode 2024-01-26 19:04:17 +01:00
Helium314
2226bb98a8 remove unused keyboard_background color 2024-01-26 18:52:49 +01:00
BlackyHawky
2353cf491a
Add dynamic colors when installing Openboard (#447) 2024-01-26 18:13:05 +01:00
Helium314
9d8a22880c allow setting a background image (separate for day and night)
todo: allow setting transparent background that should only apply to pressed keys with borders disabled?
2024-01-26 16:42:35 +01:00
Helium314
fa04c393c8 remove unused code 2024-01-26 09:33:05 +01:00
Helium314
958e253c87 remove mistakenly added one-handed key form clipboard, adjust order so clear key is further left 2024-01-26 09:17:47 +01:00
Helium314
932d996c6b more concise toScaledBitmapDrawable 2024-01-26 09:10:49 +01:00
Helium314
171c1f451b adjust colors, so the three main view have a common background
also slightly changes appearance of top strip, now all views use the same background
2024-01-26 09:01:39 +01:00
Helium314
ac71f8724f adjust issue templates
mention that issue might alredy be mentioned in the readme
2024-01-26 05:43:41 +01:00
Helium314
ecbee995bf remove unnecessary stuff 2024-01-25 14:05:39 +01:00
Helium314
911c609f7c change KeyboardTheme to kotlin 2024-01-23 21:53:42 +01:00
BlackyHawky
a270653082
Add preset colors (#437) 2024-01-23 20:48:27 +01:00
BlackyHawky
a058190b1d
Rounded icons (#438)
---------

Co-authored-by: arcarum <134963929+arcarum@users.noreply.github.com>
2024-01-23 20:47:34 +01:00
Helium314
64f6e70717 add missed gu locale key texts 2024-01-23 20:42:11 +01:00
Helium314
4a277b8c32 replace RunInLocale with less deprecated functions 2024-01-23 20:41:36 +01:00
Helium314
8a7a41764c disable app icon toggle also for android 10 2024-01-23 18:35:27 +01:00
Helium314
f699d16d10 correctly set starting alpha for gesture trail 2024-01-23 16:25:36 +01:00
Helium314
cb0cc4e65a remove unused code 2024-01-23 12:43:18 +01:00
Helium314
2b1d9e6df9 add to personal dictionary only if autocorrect enablement is what the user expects 2024-01-23 12:36:35 +01:00
Helium314
0e15ee9b26 slightly tune when autocorrect is used
and add setting whether autocorrect should be used when not explicitly requested
2024-01-23 12:29:14 +01:00
Helium314
5348486418 use correct gesture color for night theme, fixes #441 2024-01-23 06:57:52 +01:00
BlackyHawky
ab712e262f
French translations added (#430) 2024-01-21 19:29:02 +01:00
BlackyHawky
675fc08b83
Improve switch alignment for layout list (#431) 2024-01-21 19:28:46 +01:00
Helium314
bf05980349 improve layout for gujarati, fixes #417 2024-01-21 19:24:09 +01:00
Helium314
8601b841f2 fix issues with looking up suggestions when it should not happen
was introduced in e8e4354600
2024-01-21 19:02:40 +01:00
Helium314
dbb966f7af better deal with missing layouts in debug mode 2024-01-21 17:30:31 +01:00
BlackyHawky
d223864c81
Use Openboard's personal dictionary (#322)
Allows more customizablilty than default Android settings
More consistent UI (possibly depends on device and settings)

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2024-01-21 17:29:51 +01:00
Helium314
279c564c72 add gujarati layout (likely needs improvement, see #417) 2024-01-21 11:08:29 +01:00
BlackyHawky
c81f7fc59b
Update the description of hidden features (#424) 2024-01-20 15:32:49 +01:00
Helium314
21d1df9da3 fix #407 2024-01-20 15:14:35 +01:00
Helium314
96ad9482fb some cleanup after increasing required api level 2024-01-18 16:27:22 +01:00
Helium314
ffea3271f9 remove emoji, symbol and accented letter descriptions
related code was labeled with 10 year old TODO to remove it "once TTS supports emoji verbalization"
web search strongly indicates this has been solved several years ago
further, only ~1200 out of ~4000 emojis actually had a description, so state is bad anyway
2024-01-18 14:56:27 +01:00
Helium314
c9d52e8090 add home, end and select word toolbar keys, fixes #409 2024-01-18 10:18:22 +01:00
Helium314
e8e4354600 only ignore TYPE_TEXT_FLAG_NO_SUGGESTIONS when user explicitly wants it 2024-01-17 09:09:33 +01:00
Helium314
9e94aa1143 add log when toolbar key is pressed, should help with #391 2024-01-16 21:06:42 +01:00
arcarum
27477fe002
Fix incorrect alert dialog behavior when dismissing (#420) 2024-01-16 20:57:14 +01:00
BlackyHawky
0c804fb7c3
Fix alignment of the drag icon (#419) 2024-01-14 17:14:18 +01:00
arcarum
0eab3c3281
Fix scrollbar overlapping icons in the toolbar container on some devices (#411)
by setting a custom scrollbar thumb color / drawable
2024-01-13 06:36:00 +01:00
Helium314
3b48e49067 load the correct file when editing symbols layouts, fixes #407 2024-01-12 11:05:38 +01:00
Helium314
095946738e update templates 2024-01-12 09:29:17 +01:00
Helium314
6546686070 fix #397 and add some related tests 2024-01-10 12:21:39 +01:00
Helium314
3d8c908a49 fix issue with latin layout with additional keys (de_DE, sr-Latn, ...) 2024-01-08 16:42:03 +01:00
Helium314
d64681c973 reverse toolbar expand icon for rtl languages 2024-01-08 12:11:04 +01:00
Helium314
acdbd18a55 fix broken dvorak layout (and others), fixes #394 2024-01-08 11:34:14 +01:00
Deltadroid
e86d87cc74
Update minSdkVersion to 21 (#343) 2024-01-08 09:27:06 +01:00
arcarum
0ac496d5ef
Improve inline autofill code (#392) 2024-01-08 09:18:16 +01:00
Helium314
da69d04993 fix / word around issues with clipboard toolbar 2024-01-07 14:44:23 +01:00
Helium314
c80b92dbdc use linear layout instead of tab host for emoji strip 2024-01-07 13:36:57 +01:00
Helium314
f0410fd783 adjust clipboard toolbar key background 2024-01-07 11:05:02 +01:00
Helium314
71ff8bc7aa don't copy if selected text is null, fixes #390 2024-01-07 10:50:52 +01:00
arcarum
e5af924a4a
Fix the inline suggestions remaning visible when switching keyboards and fix missing toolbar (#386) 2024-01-07 09:39:51 +01:00
BlackyHawky
c4fd392c8a
Add French translations and improve existing ones (#388) 2024-01-07 09:04:00 +01:00
Helium314
545991260b don't append text if there is no text
fixes #389
bug was present also in old versions, but only exposed due to possibilty of using arrow keys
2024-01-07 08:42:26 +01:00
Helium314
7758f125a5 use android default strings for copy and select all, scrape android undo/redo translations 2024-01-07 07:55:23 +01:00
Helium314
3e38253c0f fix some padding issues 2024-01-06 16:33:37 +01:00
Helium314
447df7ab0d formatting, remove test log line 2024-01-05 18:30:16 +01:00
Helium314
73561e0e70 remove old workaround where issue isn't mentioned in linked documentation any more 2024-01-05 18:14:44 +01:00
Helium314
615d1711b5 update readme and other texts 2024-01-05 11:14:39 +01:00
Helium314
b98a208b69 fix #384
and make (semi-)related code more concise
2024-01-05 08:02:11 +01:00
Helium314
2fffe31a3b rename "Language" settings to "Languages & Layouts"
should clarify and thus fix #380 for people who don't read readmes or release notes
2024-01-04 20:25:41 +01:00
Helium314
f52c3e69e8 remove special labels from symbols layouts (except currency key) 2024-01-04 20:03:13 +01:00
Helium314
14e54686b2 allow customizing symbols layouts 2024-01-04 18:59:28 +01:00
BlackyHawky
058317b449
Fix background suggestions for dynamic colors (#375)
Only the material style without key border is affected
2024-01-02 17:33:02 +01:00
Helium314
66267f8ce5 comments, unused code, minor adjustments 2024-01-02 15:39:05 +01:00
Helium314
5f42d00bca add most recent log lines to crash reports 2024-01-02 09:59:12 +01:00
arcarum
af957be561
Disable more suggestions when inline autofill is visible and fix chip background color (#371) 2024-01-02 09:05:31 +01:00
Helium314
2f5ed3d5e2 fix #373 2024-01-02 08:57:14 +01:00
Helium314
e38e88a198 some todos in KeyboardParser 2024-01-02 08:44:05 +01:00
Helium314
0872f786c8 fix issue with sliding input when showing moreKeys 2024-01-01 22:33:21 +01:00
Helium314
58ddee786e remove unused / unneeded code 2024-01-01 22:04:29 +01:00
Helium314
d6769f6d65 basic checks for supplied gesture library 2024-01-01 20:35:12 +01:00
Helium314
7c5b96a034 remove more unused code, solve some warnings, ... 2024-01-01 19:20:28 +01:00
arcarum
92c08e40ef
Remove ic_setup_earth and address some warnings (#369) 2024-01-01 17:45:42 +01:00
Helium314
091222d16d remove unused stuff, solve warnings 2024-01-01 17:42:26 +01:00
Helium314
cc3a406e51 fix typo that broke russian layout, fixes #370 2024-01-01 15:58:12 +01:00
Helium314
2ec34b68ad remove unused resources, update readme 2024-01-01 15:55:21 +01:00
Helium314
e7d9080c49 correctly read pinned keys when they are not in the toolbar 2024-01-01 14:07:53 +01:00
Helium314
a0e60fb9ce rename some settings 2024-01-01 13:36:02 +01:00
Helium314
3bee2261f1 add incogito and autocorrect toggle keys to toolbar
rename strings for the new keys
fix layout issue in toolbar/morekey dialog
adjust colors so disabled toolbar keys are a little darker
2024-01-01 13:16:49 +01:00
Helium314
f093319436 adjust background of re-order dialogs 2023-12-31 19:20:54 +01:00
Helium314
1df82d9b84 try delaying init of clipboard and emoji views 2023-12-31 18:27:25 +01:00
Helium314
00fe89ee93 fix key code for one-handed mode toggle 2023-12-31 17:09:44 +01:00
Helium314
c7ea083176 add separate color for suggestion strip, fixes #285 2023-12-31 17:05:57 +01:00
Helium314
7941fd8ac4 add a line about clipboard pinning tp readme, fixes #366 2023-12-31 13:38:25 +01:00
Helium314
e90d4a1633 re-add som symbol keys on a few layouts
were removed in 2c03623b8a
better would be adding them to the symbols layout
  would require different symbols layout for those layouts
  or symbol layout that gets cut down to number of keys of base layout
2023-12-31 11:12:33 +01:00
Helium314
3da9f67940 deal with some warnings, remove unused code, formatting 2023-12-31 10:07:30 +01:00
Helium314
30201f91ba fix #298 2023-12-31 09:40:31 +01:00
Helium314
296f37c829 remove unused code 2023-12-31 00:13:46 +01:00
Helium314
3ec8315d03 increase default height with number row enabled 2023-12-30 23:38:48 +01:00
Helium314
ab9701d483 add confirmation dialog for deleting custom layouts 2023-12-30 23:32:53 +01:00
BlackyHawky
13fadb9fb5
Remove bar under clipboard strip (#362)
Only Rounded style is affected
2023-12-30 23:19:04 +01:00
Helium314
54abf44628
Make layouts customizable (#361)
now layouts can be added from files, or default layouts can be copied and edited
2023-12-30 23:18:10 +01:00
arcarum
450338c080
Minor improvements to the inline autofill (#364) 2023-12-30 13:39:57 +01:00
BlackyHawky
5c4b888d00
Add French translations (#365) 2023-12-30 13:39:13 +01:00
Helium314
b8a6443a8f cache device protected prefs instance 2023-12-30 13:38:59 +01:00
arcarum
98fb94de8d
Inline autofill theming support (#360) 2023-12-29 12:27:47 +01:00
Helium314
a323baca5f fix toolbar key setting doing nothing 2023-12-29 12:14:33 +01:00
Helium314
dc898cd3ca remove some unnecessary stuff 2023-12-29 12:08:32 +01:00
Helium314
fcff8c9098 fix build and small style adjustments after adding autofill 2023-12-29 10:03:22 +01:00
arcarum
ab183c53d7
Inline autofill support (#336)
Theming support is still missing
2023-12-29 09:51:46 +01:00
Helium314
c19441310d always show suggestion strip 2023-12-28 23:00:17 +01:00
Helium314
b5d68986be allow customizing toolbar keys 2023-12-28 22:47:31 +01:00
Helium314
26168b0e09 use enum class for toolbar keys 2023-12-28 20:32:29 +01:00
Helium314
1fd0ed4464 disable debug mode when disabling debug settings 2023-12-28 20:19:00 +01:00
BlackyHawky
68d44c435c
Replace icons for rounded style (#351) 2023-12-28 13:36:59 +01:00
BlackyHawky
43fc92d974
Implemented "SlidingKeyInput" to Numpad (#101) 2023-12-28 13:16:11 +01:00
Helium314
ebd7e3fa24 use original symbols as moreKeys on symbol number row 2023-12-28 09:50:36 +01:00
Helium314
33ea631235 avoid duplicate symbols moreKeys 2023-12-28 09:43:06 +01:00
Helium314
2c03623b8a determine symbols from symbols layout instead of putting the keys on each keyboard layout separately 2023-12-27 23:12:10 +01:00
Helium314
c5c42bc5d7 allow overriding popup hint settings in locale settings 2023-12-27 17:38:19 +01:00
Helium314
7097fd8fae allow adjusting popup order and label source 2023-12-25 09:20:15 +01:00
Helium314
07f2c43e38 show emoji action moreKey in url fields
remove some logging
2023-12-21 23:11:32 +01:00
Helium314
53620e7728 split emoji keyboard 2023-12-21 23:07:28 +01:00
Helium314
dfa3a568be add more keys to clipboard toolbar 2023-12-21 21:57:53 +01:00
Helium314
461eb2a551 rename some keyboard layouts, simplify layout names, enable "hidden" layouts 2023-12-21 18:27:49 +01:00
Helium314
c943082f98
Remove old keyboard parser (#344)
* remove stuff that is not used any more after parser removal
* fix some small warnings
2023-12-21 15:02:18 +01:00
Md. Rifat Hasan Jihan
00dcbf2c62
Update bn_bd.txt (#347)
updated to comply with the original layout behavior. removed unnecessary ligatures.
prioritized some characters over numbers or symbols.
2023-12-21 10:54:47 +01:00
Helium314
b3e1b7be42 update comments 2023-12-20 23:07:33 +01:00
Helium314
3168d7738c swipe left to remove clipboard history entry 2023-12-20 23:00:41 +01:00
Helium314
b921667c22 add space and delete keys to clipboard view, move clear button to top strip 2023-12-20 22:08:07 +01:00
Helium314
9f21f540af
Allow resizing emoji and clipboard views in one-handed mode (#337) 2023-12-20 19:46:18 +01:00
Helium314
9a62d85dbf add undo and redo keys to toolbar, fixes #149 2023-12-20 10:03:45 +01:00
Helium314
228f859cbd still adjust multilingual typing confidences on slow input connections 2023-12-20 10:03:29 +01:00
arcarum
8d3a32bcb2
Updated gradle, kotlin, ndk, and dependencies to their latest versions. (#335) 2023-12-20 10:02:11 +01:00
Helium314
347a9555b4 create toolbar keys programmatically
for easier addition of keys, and adjustment of order
2023-12-20 08:44:47 +01:00
Helium314
1cc331387f use LocaleKeyTexts instead of KeyboardTextsSet 2023-12-19 23:49:24 +01:00
Helium314
b4d0349d59 rename settings, reset parser again 2023-12-19 23:32:30 +01:00
Helium314
f98910ce7a set cliboard placeholder background to invisible by default
avoids showing it in some cases after rotating when it should not be shown
2023-12-19 23:29:53 +01:00
Javier Caballero
f7e1e8b682
fix workman layout duplicated 'd' in 'c' position (#341)
The 'd' character has his place at the top row. Between 'm' and 'v' must be the missing 'c'.
2023-12-19 19:44:33 +01:00
Helium314
c3f64d05a8 improve key preview size for large height scale 2023-12-19 14:39:51 +01:00
Helium314
a70c927d75 remove some unused colors and attrs 2023-12-19 09:40:38 +01:00
Helium314
0c231b18ed add color to one-handed mode resize button 2023-12-19 09:40:01 +01:00
Helium314
d005c52a80
update readme 2023-12-19 09:37:06 +01:00
BlackyHawky
0edbf9c08a
Add dynamic colors (#277)
Add "dynamic colors" using Android 12+ system colors
Change colors into an interface
* allow the desired more exact copy of colors from Gboard
* avoid needlessly exposing Colors stuffs

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2023-12-19 07:48:10 +01:00
Helium314
62bff1e68a allow fullscreen mode again, but limit to cases where the keyboard blocks more than 60% of the screen 2023-12-19 00:27:19 +01:00
Helium314
0b55a92e02
Improve main views (#321)
* views now have the same height
* add one-handed mode width setting
* key text and emojis scale more adequately with keyboard height and one-handed mode width
* slightly adjust landscape config to match better with portrait
2023-12-18 17:30:53 +01:00
BlackyHawky
e78618fd6a
Update licenses for incognito icons (#334) 2023-12-17 16:20:59 +01:00
arcarum
75641fcb4a
Simplify the remaining long vector paths (#332) 2023-12-17 08:32:08 +01:00
BlackyHawky
f3e5f099cd
Add icon to "Save log" setting (#333) 2023-12-17 08:27:07 +01:00
Helium314
656f43a962 set emoji and clipboard visibility to gone by default, fixes #47
issue happened because clipboard view is coming after emoji view, i.e. is drawn on top
when keyboard view is shown, it sets emoji and clipboard visibility to gone, but when view is re-created after rotation the keyboard view is not shown, thus clipboard visibility is unchanged
2023-12-17 07:49:01 +01:00
BlackyHawky
b2e2c9ef4a
Replace "popup_panel_background" images with drawables for all styles (#295) 2023-12-15 20:18:36 +01:00
Helium314
c1516b33d3 add undo and redo codes
now we only need the actual keys for #149
2023-12-15 19:27:47 +01:00
Helium314
18aa209ee7 revert addition of valid word cache, fixes #307 2023-12-15 14:55:41 +01:00
arcarum
6453daf18e
Simplify various long vector paths (#331) 2023-12-15 12:07:35 +01:00
Helium314
8b236fd51a only add number to integrated number row moreKeys
other moreKeys appear to be unwanted, see #324 and #314 (comment)
2023-12-15 11:17:35 +01:00
Helium314
15e4c9aa9f shrink PR template 2023-12-15 11:05:59 +01:00
Helium314
ef4acba9c3 add logging when configuration changed, might help with #298 2023-12-15 10:59:38 +01:00
Helium314
ad9282ea25 add internal logger, so user is able to provide logs on issues 2023-12-15 10:51:46 +01:00
arcarum
0739eca2ff
Updated build.gradle (#320)
Co-authored-by: arcarum <github.iwi95@aleeas.com>
2023-12-14 21:25:04 +01:00
BlackyHawky
44b4d72080
Detect other input methods - Fixes #251 (#325) 2023-12-13 11:07:16 +01:00
Helium314
245ee27053 add copy key, fixes #253 2023-12-11 23:19:04 +01:00
Helium314
5d173d0981 don't care about icons for invisible keyboard 2023-12-11 20:00:52 +01:00
Helium314
6e6bbbd0da fix addition of emojis to history 2023-12-11 11:18:19 +01:00
Helium314
ca73709a7d update comments 2023-12-11 10:33:19 +01:00
Helium314
3107144f38 load emoji keyboards only when used, and not on keyboard start
ca 30% faster keyboard loading (on first start, or when theme/color change)
ca 5-10% reduced memory use
may result in short loading times when an emoji tab is opened for the first time
2023-12-11 10:03:21 +01:00
Helium314
89f8c44cfc call readAttributes in the right builders directly 2023-12-10 21:34:10 +01:00
BlackyHawky
0d83ea4112
Add summary to "show_hints_from_first_popup_key" (#313)
French translation added
2023-12-10 21:31:50 +01:00
Helium314
bb7c1f5242 add setting to show first popup key as hint label 2023-12-10 18:31:03 +01:00
Helium314
c5f3d4bfcf misc improvements, update todo 2023-12-10 15:52:10 +01:00
Helium314
f471cf81ed make space bar trackpad work in apps that always report empty text 2023-12-10 14:22:50 +01:00
Helium314
57423626d3 add numpad landscape layout 2023-12-10 13:44:33 +01:00
Helium314
615fde1a7b add new parser for emoji arrays 2023-12-10 10:49:05 +01:00
Helium314
4406f1b224 use new parser for number layouts (tablet/landscape still missing some keys) 2023-12-09 21:11:46 +01:00
Helium314
100da1beae slightly tune glide typing garbage word detection 2023-12-05 08:14:11 +01:00
Helium314
43987ad037 don't use old parser for moreKeys and moreSuggestions 2023-12-04 16:04:47 +01:00
Helium314
3121bd5816 add pcqwerty layout (functional keys are a bit different now) 2023-12-04 13:26:02 +01:00
Helium314
d438438aca use visual insets instead of spacers for edge keys (fixes #308, #294) 2023-12-04 12:30:06 +01:00
Helium314
2232bc3848 improvements for tablet layouts with new parser 2023-12-04 12:11:53 +01:00
Helium314
8edf006a32 reset parser setting, fix zwnj key background 2023-12-02 10:04:18 +01:00
Helium314
0343eaf83c add helper script 2023-12-02 09:41:16 +01:00
Helium314
28098a52c7 fix a bunch of mostly small issues with the new parser and layouts
write up some issues for tablet layout (to be fixed later)
2023-12-02 09:28:57 +01:00
Helium314
eafd0d4276 add missing labelFlag to hindi (compact) and marathi
and add debug info for some rarely occurring glitches
2023-12-01 16:16:04 +01:00
Helium314
5eaeb5892f slightly tune when entries are added to user history 2023-12-01 14:26:42 +01:00
Helium314
935dd77cf1 faster recovery from slow input connection 2023-12-01 14:14:29 +01:00
Helium314
cbb1798dc1 fix some issues with layouts
compare old and new parsing when debug mode is on
2023-12-01 00:08:54 +01:00
Helium314
6fc558962f add remaining layouts 2023-11-30 21:47:11 +01:00
Helium314
493343f477 add hinglish locale_key_text, fixes #305
just copied from english
2023-11-30 15:12:22 +01:00
Helium314
cb70ee2656 tune glide typing suggestions
prefer multi-letter over single letter suggestions
prefer suggestions that also occur in next word suggestions for this ngram context
(and do some tiny tuning)
2023-11-30 14:57:38 +01:00
Helium314
7397deac57 add cache for next word suggestions 2023-11-30 12:46:26 +01:00
BlackyHawky
108ee5476a
Add French translations (#304) 2023-11-30 11:26:37 +01:00
Helium314
006ba16f60 fix issues with some hint labels 2023-11-30 11:25:45 +01:00
Helium314
99cf72684d add layout infos for new parser, to be (re)moved after removing old parser 2023-11-30 11:01:03 +01:00
Helium314
fd247eeb50 add more layouts for new parser 2023-11-30 11:00:44 +01:00
Helium314
662c6f638d fix localized number row 2023-11-30 10:58:53 +01:00
Helium314
9a3c631a75 always show language on spacebar if multilingual typing is enabled 2023-11-30 09:03:19 +01:00
Helium314
ff06aa9701 fix order of quote moreKeys (#302) 2023-11-30 08:52:00 +01:00
Helium314
8045ecc8a3 fix being undable to disable new parser 2023-11-30 07:57:41 +01:00
Helium314
38d8365e5b add some more layouts 2023-11-28 21:27:29 +01:00
Helium314
26c890a3e2 add slavic layouts for new parser 2023-11-28 18:34:28 +01:00
Helium314
a1dbfedc0b fix issues with moreKeys in json layouts (e.g. azerty) 2023-11-28 18:30:04 +01:00
Helium314
50b38d7687 fix minor issues with suggestions debug string 2023-11-28 13:48:30 +01:00
Helium314
c43e3efbc1 make internal user dictionary fragment work (mostly) 2023-11-28 11:04:55 +01:00
Helium314
bd3e73ea10 non-null comute for KeyData, comments 2023-11-28 09:18:47 +01:00
Helium314
3f30d5ce1f fix some warnings 2023-11-28 08:32:23 +01:00
Helium314
cd33575446 use auto-adjusted comma label only in alphabet keyboards 2023-11-28 07:50:35 +01:00
BlackyHawky
1b1118f320
Replace and delete images with vector drawable (#296)
* Replace and delete images with vector drawable

- Applied to "ic_ime_switcher_dark";
- "ic_ime_switcher_dark" renamed to "ic_ime_switcher";
- "ic_notify_dictionary" deleted because never used.
2023-11-27 23:56:45 +01:00
Helium314
1c9a8c597c hide toolbar and pinned keys if device is locked, fixes #271 2023-11-27 19:19:33 +01:00
Helium314
1dfce9f89a sort the all/more more keys by frequency 2023-11-27 17:43:40 +01:00
Helium314
79b84a0b58 somewhat improve garbage word issue 2023-11-27 16:51:39 +01:00
Helium314
4d015d0c83 add setting for localized number row (if applicable for enabled subtypes) 2023-11-27 15:50:06 +01:00
Helium314
2b8c62cb02 avoid adding null dictionaries, see #293 2023-11-27 14:50:36 +01:00
Helium314
57bf742da0 use new parser for symbols layouts 2023-11-27 13:50:46 +01:00
Helium314
4d0b7915c8 clear some caches on low memory 2023-11-24 13:27:25 +01:00
Helium314
ca3790b519 add keyboard parser for more complicated layouts
parsing mostly taken from FlorisBoard, thus json files are compatible
some small modifications
added json files for missing latin layouts
2023-11-24 12:19:29 +01:00
Helium314
dc0490a0e1 improve suggestion infos and make them optional 2023-11-22 23:22:38 +01:00
Helium314
48e0b05d26 tune language weights for multilingual typing 2023-11-22 22:41:41 +01:00
Helium314
38fde35890 fix broken parsing of labels and extra keys 2023-11-22 22:18:16 +01:00
Helium314
e1a89c811c debug mode extension
make it available on all build variants
show multilingual typing confidences on space bar
2023-11-22 21:51:48 +01:00
Helium314
9ef79821f4 more thoroughly test added dictionaries 2023-11-22 20:32:04 +01:00
Helium314
800fb29f21 update correct preview when setting colors, fixes #284 2023-11-21 14:07:18 +01:00
Helium314
4af0f2d3a1 update readme and todos 2023-11-21 12:30:22 +01:00
Helium314
439330fc12 fix build after #272 2023-11-21 10:34:14 +01:00
Makar Razin
35969f53ff
Update of East Slavic translations (#272) 2023-11-21 10:27:56 +01:00
Helium314
d3d1f25c7f get suggestions when typing with cursor in front of composing word, fixes #265 2023-11-20 15:27:58 +01:00
Helium314
43a914f270 fix npe 2023-11-20 14:45:35 +01:00
Helium314
e337f742b2 close toolbar when hiding keyboard, fixes #185 2023-11-20 14:27:40 +01:00
Helium314
24d771f89a disable learning only if explicitly requested by the input field
related to #266, but can't be a fix for always incognito
2023-11-20 13:46:55 +01:00
Helium314
5a15e4f8f2 remove clipboard and settings keys while device is locked
fixes #271
only works with new parser, so issue still applies with some layouts
2023-11-20 13:43:06 +01:00
Helium314
b2ae020d7e hide "show app icon" setting on android 11+
leave open #256, need feedback for android 10
2023-11-20 12:18:20 +01:00
Helium314
a31b408351 show warning that disabling persinalized suggestions will clear learned words 2023-11-20 10:49:15 +01:00
Helium314
92815c6af6 fix npe 2023-11-20 10:15:48 +01:00
Helium314
6ec03290a5 avoid unnecessary dictionary facilitator resets
a reset also resets confidence values for multilingual typing, which is most likely unwanted
2023-11-20 09:44:52 +01:00
Helium314
7f970e2efd set action done in search field
after a recent change, action was automatically set to next, which is inappropriate
2023-11-20 09:42:53 +01:00
Helium314
0002ed63eb enable validSpellingWordCache for spell checker 2023-11-20 01:11:06 +01:00
Helium314
0187beeae5 add test & fix for another url detection auto-space issue 2023-11-20 00:48:26 +01:00
Helium314
ea17006570 update keyboard when input field restarts with change in force ascii flag 2023-11-20 00:22:03 +01:00
Helium314
907c307c2b don't offer locales without any own dictionary for multilingual typing 2023-11-20 00:12:56 +01:00
Helium314
7d2dad3862 remove unused extracted main dictionaries 2023-11-20 00:06:03 +01:00
Helium314
e4bc6996a5 restrict search field to a single line 2023-11-19 23:12:19 +01:00
Helium314
f944751737 remove useless file 2023-11-19 23:08:01 +01:00
Helium314
50ba6e3129 properly set text size for "internal main dictionary", so it should work for all devices 2023-11-19 23:04:28 +01:00
Helium314
0a6a667ef1 update readme 2023-11-19 22:08:52 +01:00
Helium314
c2f4b617b3 replace some dividers with shape drawables, avoids them turning green depending on some display settings 2023-11-19 22:00:31 +01:00
Helium314
cbfa934721
Switch most latin layouts to use the simple parser (#276)
And do some tweaks so it works better
2023-11-19 21:16:23 +01:00
BlackyHawky
da6dcece7f
Gesture input color can be customized (#269)
and don't show all colors by default, rather have a menu option for this

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2023-11-17 07:50:58 +01:00
Helium314
9f67113216
Add keyboard parser for simple layout definitions (#270)
and one example layout
and some todos containing the further plan
2023-11-13 11:44:40 +01:00
Helium314
1e79e3e2f6 fix white icon color for zwnj (only available on few layouts) 2023-11-06 16:11:14 +01:00
Helium314
fce6805018 dont try loading user-supplied library if it doesn't exist 2023-11-04 14:01:56 +01:00
Helium314
2dc9b12b13 store pinned clips in shared prferences instead of separate file 2023-11-04 13:38:24 +01:00
Helium314
aad8c68bf9 fix potential crash 2023-11-04 12:05:23 +01:00
Helium314
6968488e45 add settings to backup 2023-11-04 12:05:01 +01:00
Helium314
7ae0d0783d reduce code duplication, remove useless string 2023-11-03 17:03:07 +01:00
BlackyHawky
e1da2ffdc1
Add Rounded style (#260) 2023-11-03 16:41:49 +01:00
Helium314
c2a48b27fe add setting from bottom padding scale 2023-11-03 14:24:43 +01:00
Helium314
fec5bc97b4 improve automatic text color selection 2023-11-03 12:59:23 +01:00
Helium314
f8165e5505 remove traces old name theme family/variant 2023-11-03 12:42:23 +01:00
Helium314
1c0fb0c672
Allow splitting all layouts instead of having to define split layouts in xml (#258) 2023-11-03 12:28:00 +01:00
Helium314
778f160c07 update readme 2023-11-02 21:04:37 +01:00
Helium314
230d5fcb03 switch from deprecated startActivityForResult to registerForActivityResult 2023-11-02 21:02:11 +01:00
BlackyHawky
a69656a446
French translations added and improved existing ones (#261) 2023-11-01 19:43:29 +01:00
Helium314
b8f4f589e8 add backup / restore option
and convert AdvancedSettingsFragment to kotlin
fixes #200
2023-10-31 12:06:44 +01:00
Helium314
62dd2d954f
Update README.md 2023-10-31 08:07:00 +01:00
Helium314
99081527ad enable use of more than a single background thread 2023-10-31 07:50:05 +01:00
Helium314
51c906863d comment (currently) unused color filters 2023-10-30 22:19:50 +01:00
Helium314
d4a47508cd set suggestion strip layout direction on changing layout 2023-10-30 22:15:37 +01:00
Helium314
37caf9ad9a don't obfuscate logs 2023-10-27 13:20:54 +02:00
Helium314
309f121848 properly set relative key(board) params 2023-10-27 13:19:57 +02:00
Helium314
1916eb233f udpate issue templates 2023-10-26 07:54:21 +02:00
Helium314
69b4fa494f split keyboard builder and (xml) keyboard parser
another step towards #216
2023-10-25 12:21:38 +02:00
Helium314
b326011e0c prepare for splitting parsing and building of keyboards
one step towards #216
2023-10-24 22:52:36 +02:00
John Betaro
f3c52e9f6c
Update GitHub workflow file (#248) 2023-10-24 16:17:39 +02:00
Helium314
bf1cf1b91a fix adding words to personal dictionary, remove logging 2023-10-24 16:07:03 +02:00
BlackyHawky
4ec8ff343d
Simplify vector drawables (#246)
- for "zwj" & "zwnj" icons
2023-10-24 11:54:22 +02:00
Helium314
a18351d9ba "user dictionary" -> personal dictionary, cleanup manifest 2023-10-24 11:45:04 +02:00
Helium314
66927e1990 possibly fix #247 2023-10-24 11:32:57 +02:00
Helium314
c7a8548921 fix isInsideDoubleQuoteOrAfterDigit not determining inside quote status correctly
happened because only quotes followed or preceded by space can be identified correctly

previously unclear quotes, e.g. followed by comma, were ignored
now the number of ignored quotes is counted and taken into account

fixes ##230
2023-10-24 01:06:34 +02:00
Helium314
f1de1a6410 allow setting alpha for all colors except keyboard background 2023-10-24 00:36:24 +02:00
BlackyHawky
02a3fe2d19
Expose more colors to users (only for user-defined themes) (#239) 2023-10-23 23:55:19 +02:00
Helium314
9a7968ea14 always show text field in color settings 2023-10-23 17:23:57 +02:00
BlackyHawky
b797ebd064
Add "Default" button to the color picker (#242) 2023-10-23 12:15:26 +02:00
Helium314
a55cd619dc add "simplify" todos to some vector drawables 2023-10-23 11:38:35 +02:00
BlackyHawky
209d97449c
Replace images with vector drawables for Material style (#234) 2023-10-23 11:27:53 +02:00
BlackyHawky
b1c1ea5fac
Fix white bar on top after Android 12 upgrade by @Helium314 (#238)
Co-authored-by: Helium314 <helium314@mailbox.org>
2023-10-23 08:55:03 +02:00
Md. Rifat Hasan Jihan
c58bd52261
Update Bengali translation (#241) 2023-10-23 08:41:26 +02:00
Md. Rifat Hasan Jihan
b59d0b525d
Refined the hidden feature description (#235)
* refined the hidden feature description

* Update README.md
2023-10-23 08:38:51 +02:00
BlackyHawky
9f291ac2b3
Replace images with vector drawables for holo style (#233) 2023-10-23 07:41:44 +02:00
Helium314
2cd6c28b12 fix #243 2023-10-23 07:09:59 +02:00
BlackyHawky
f53f0e5120
French translations added and improved existing ones (#232) 2023-10-22 10:42:14 +02:00
Helium314
b3a9613710 upgrade target and compile sdk 2023-10-21 10:23:18 +02:00
BlackyHawky
ecadcce08d
Add descriptions of hidden features to the "About" section (#227)
- icons added in this section
- translation in French done
2023-10-21 09:30:06 +02:00
BlackyHawky
c0597a46bc
Provide a better "ic_setup_key" icon (#228) 2023-10-21 09:23:53 +02:00
Helium314
9efeb7e339 add tests for string utils, see #230 2023-10-21 09:22:07 +02:00
Helium314
9975a7d8f6 fix missing auto-space with url detection
caused by bug in nonWordCodePointAndNoSpaceBeforeCursor
fixes #229
2023-10-21 08:29:47 +02:00
Helium314
d47386c745 rename theme family to style and variant to colors
much more suitable names
unfortunately there won't be as many translations, but still it's much better
2023-10-20 21:16:53 +02:00
Helium314
f8f7444b74 emojis are added to history only when next word prediction is enabled 2023-10-20 18:32:24 +02:00
Helium314
b07f4bb489 use new drawable when setting background after removing pinned toolbar key
fixes #184
2023-10-20 18:15:04 +02:00
Helium314
ff009beb78 reload keyboard when changing functional hint setting
fixes #189
2023-10-20 17:49:47 +02:00
Helium314
1640b53dfc fix some issues with korean input 2023-10-20 17:36:26 +02:00
Deltadroid
48ad8efff5
Update gradle and AGP (#218)
Update gradle and android gradle plugin
2023-10-20 17:02:58 +02:00
Makar Razin
339ec6d056
Slavic languages ​​update (#222) 2023-10-20 16:58:10 +02:00
Helium314
a5fb604d2e add invisible view to block language switch when language has more than one layout 2023-10-20 13:44:14 +02:00
Helium314
b8b0ea7dbb remove ic_menu_add (use ic_plus instead) 2023-10-20 13:23:31 +02:00
Helium314
d2f43e21c2 fix regression, abc and delete keys sharing background state in emoji view 2023-10-20 13:21:49 +02:00
Helium314
2677e3eeb8 add emojis for history for next-word suggestions 2023-10-20 13:11:05 +02:00
Helium314
df59ea71c0 fix regression with spacebar in emoji view 2023-10-20 10:13:46 +02:00
Helium314
fd65e92e39 set maxHeight/maxWidth of toolbar key programmatically
fixes #221
2023-10-20 09:50:27 +02:00
Helium314
d183baf401 remove some unused code and todos 2023-10-20 09:43:14 +02:00
Helium314
6fd6113271 add spdx licence identifiers to remaining files 2023-10-20 09:04:57 +02:00
Helium314
94420f8c51 remove useless switch statements (all themes result in the same case) 2023-10-19 21:27:33 +02:00
Helium314
ae8335d816 remove holo_no_border theme, just make the keys transparent 2023-10-19 21:21:44 +02:00
Helium314
92e986609c rename otherKey to toolbarKey, set correct scale/mirror on updateVisibility 2023-10-19 13:15:12 +02:00
BlackyHawky
515db3edc9
Add expand indicator to incognito icon (#224) 2023-10-19 13:11:31 +02:00
BlackyHawky
e62c40d4ae
Replace setup wizard images by vector drawables (#202) 2023-10-18 13:24:17 +02:00
Helium314
9ba8300bb7 add / switch to SPDX identifiers for vector drawables 2023-10-18 10:11:11 +02:00
BlackyHawky
aa333448f8
Replace emoji categories images by vector drawables (#198) 2023-10-18 09:41:42 +02:00
Helium314
ec1a91d1e0 don't reload when moving cursor within a word using space bar gesture
gives performance improvement noticeable at least on slow phones
2023-10-17 20:57:02 +02:00
Helium314
78e924ee6d add start padding to suggestion strip 2023-10-17 16:02:36 +02:00
Helium314
1dc53663f0 more exhaustive search for hinLocales, if present 2023-10-17 15:01:02 +02:00
Helium314
67d4f53e73 workaround for bad implementation of ClipboardManager, #203 2023-10-17 13:58:13 +02:00
Helium314
56906775e9 update license headers in java / kotlin code
switch to SPDX
keep original copyright notice
add "modified" to AOSP files to clarify file was modified as required by Apache-2.0 license
clarify license is GPL-3.0-only for files added after initial OpenBoard commit (except for java -> kotlin conversions)
license for modified AOSP files is Apache-2.0 AND GPL-3.0-only (for modifications)
2023-10-17 13:44:01 +02:00
BlackyHawky
a5fde31ca2
Restored pin icon color for material style (#196)
* Pin icon uses accent color for both styles
2023-10-17 12:23:24 +02:00
BlackyHawky
4baca025f9
Replace color picker by new one with editable hex values (#220) 2023-10-17 12:12:57 +02:00
BlackyHawky
87009e8921
Replaced pin images for holo style by vector drawable (#199) 2023-10-17 10:33:15 +02:00
BlackyHawky
10f6e30e44
Restored delete key color in emoji view (#197) 2023-10-17 10:27:49 +02:00
BlackyHawky
997bda22c2
French translations added and improved existing ones (#219) 2023-10-17 07:53:39 +02:00
BlackyHawky
aedadd7afb
Replace Preferences setting images with vector drawable (#194) 2023-10-16 23:32:29 +02:00
Helium314
0e74baaeff remove duplicate translations 2023-10-16 23:25:37 +02:00
BlackyHawky
2deaa60498
Fix color of settings icons (#193) 2023-10-16 23:05:36 +02:00
MXC48
ddaef0653c
Update strings.xml (#207)
I finished the translation in French
2023-10-16 22:39:45 +02:00
Helium314
02db89b9a0 tint settings icons for kitkat programmatically 2023-10-16 20:45:41 +02:00
Helium314
8abfe26411 fix some issues with url detection 2023-10-16 20:45:41 +02:00
Deltadroid
3eba91e55c
Update targets to java 17 (#186)
The newly upgraded dependencies (gradle 8.3) now require java 17
and the java and jvm targets must both match or there will be a build
failure due to lint.
2023-10-15 16:33:51 +02:00
Helium314
df4bdce00d show more dictionary details when clicking and replacing
and kotlinize DictionaryHeader, because it's much easier to handle that way
2023-09-26 17:48:04 +02:00
Helium314
2be6eaa10d fix urls field being detected when it shouldn't 2023-09-26 16:30:09 +02:00
Helium314
0c8cd42a03 replace some more images with vector drawables 2023-09-26 15:11:04 +02:00
Helium314
bed2812887 upgrade dependencies 2023-09-26 11:34:32 +02:00
Helium314
22a5c6dbe0 add another test, situation may need improvement 2023-09-26 07:40:46 +02:00
Helium314
3447212447 make toolbar scrollable 2023-09-25 19:35:51 +02:00
Helium314
7074302798 add language tags to method.xml (using language codes and python module langcodes) 2023-09-25 15:22:30 +02:00
Helium314
e6495f5868 some more adjustments to URL detection and related tests 2023-09-25 13:56:58 +02:00
Helium314
bc1557cc69 fix some issues with url detection, add tests for some more issues to be fixed 2023-09-25 10:10:56 +02:00
Helium314
cf261bf5ef update tests and readme 2023-09-25 07:11:33 +02:00
Helium314
a330e9dd17 fix url detction ignoring no-suggestions request, fixes #180 2023-09-25 06:04:04 +02:00
BlackyHawky
d8c80b72ff
Add support for themed icons (#182) 2023-09-24 23:43:19 +02:00
Helium314
57f0fcb32c show details when tapping dictionary 2023-09-24 23:10:39 +02:00
Helium314
2e899ae3e5 replace some graphics by vector drawables 2023-09-24 22:57:19 +02:00
Helium314
4b323d4277 add cursor keys to toolbar, replace next/previous images with vector arrows 2023-09-24 22:00:41 +02:00
Helium314
25ad4a3178 add toolbar to suggestion strip
arrow to expand
long-press keys to pin them (replaces old voice and clipboard key settings)
fixes #139
2023-09-24 21:31:37 +02:00
Helium314
0497bf4702 make popup hint optional for both styles 2023-09-23 13:02:56 +02:00
Helium314
85ecce430e add test for text selection 2023-09-21 19:06:16 +02:00
Helium314
3aeaeb0009 reduce ong file size a little 2023-09-21 12:26:36 +02:00
Deltadroid
e143fc9c61
Update ndk (#177)
* Use latest LTS NDK 25.2.9519653 (r25c)
* Do not fail on warnings
2023-09-21 07:35:23 +02:00
Helium314
f27baef12e set background on each emoji / clipboard start instead of onFinishInflate
fixes #171 and apparently #169 too
2023-09-21 07:28:21 +02:00
Helium314
966340156d fix space background for phone input 2023-09-20 22:38:27 +02:00
BlackyHawky
2e12c161cc
Holo style: set color of default number pad spacebar icon (#172) 2023-09-20 22:35:21 +02:00
Helium314
1e292d152d fix number pad space background 2023-09-20 22:33:59 +02:00
Helium314
3147d22a18 fix crash 2023-09-20 22:13:08 +02:00
Helium314
dd16ac2135 fix bulgarian bds and bekl having the same subtypeId, some formatting 2023-09-20 21:56:19 +02:00
Helium314
ee68c8d42d move some settings out of experimental section 2023-09-20 21:17:33 +02:00
Helium314
454727eaeb warn instead of crashing 2023-09-20 21:12:26 +02:00
Helium314
90b4c60dd0 fix appcompat error messages, some formatting 2023-09-20 21:05:59 +02:00
Helium314
82d0d46ca3 properly remove capitalized suggestions, fixes #170 2023-09-20 20:07:17 +02:00
Helium314
32fe3a1d90 remove shift drawables for v31 2023-09-20 20:06:45 +02:00
BlackyHawky
ff8a2e74e4
Replace shift icons with white ones and use normal color filter (#173) 2023-09-20 19:24:03 +02:00
BlackyHawky
741b60a8b4
Link of "Add Unicode 15 emojis" corrected in Readme (#174) 2023-09-20 19:11:18 +02:00
Helium314
424420b1af
Add URL detection (#157)
* detect all as one word if it contains one of `.`, `:`, `_`, `@` (and no whitespace)
* resume word suggestions after entering a non-space after one of the characters above
2023-09-20 19:10:01 +02:00
Helium314
52a049bee6 update InputLogicTest 2023-09-20 16:51:13 +02:00
Helium314
9bd6c2403e make InputLogicTest mostly work 2023-09-20 11:45:23 +02:00
Helium314
70f419efe5 add unit tests for input logic (wip very much) 2023-09-19 19:39:47 +02:00
BlackyHawky
f1fde08a55
Holo icons in the comma popup are now all the same height (#165) 2023-09-18 23:38:07 +02:00
Helium314
c007366966 replace InputConnectionCompatUtils by API check 2023-09-18 21:27:53 +02:00
Helium314
c7751423a1 fix hangul issue, some formatting 2023-09-17 22:00:06 +02:00
Helium314
c4781e3da0 attempt to fix issue in https://github.com/Helium314/openboard/issues/99#issuecomment-1722394199
and some formatting
2023-09-17 15:24:36 +02:00
Helium314
67c328ec1f formatting, remove unused functionality 2023-09-17 12:55:59 +02:00
Helium314
7b9ba8d60e pull updates accidentally committed to hangul_update branch 2023-09-16 22:49:05 +02:00
Helium314
dbc6a83366 set suggestions to use transparent background when not pressed, use this also for clear clipboard key 2023-09-16 22:47:16 +02:00
Helium314
14b3158289 remove some unused / outdated resources 2023-09-16 22:18:31 +02:00
Helium314
9c272fd881 remove unused key popup animation code already marked for removal 2023-09-16 21:50:17 +02:00
Helium314
017c057585 address some warnings 2023-09-16 21:30:12 +02:00
Helium314
4377effa9e clear touch listeners when updating suggestions, fixes #164 2023-09-16 20:29:39 +02:00
Helium314
5861c892bf fix messed-up default icon height scale 2023-09-16 20:18:37 +02:00
Helium314
6e46f5c9f6 more readable kotlin files, get rid of much !! 2023-09-16 20:12:47 +02:00
Helium314
eb45495d13
Hangul update (#160)
Add Hangul layout from https://github.com/Lee0701/openboard/tree/hangul

Further changes:
* merge current state and make it compile
* some formatting
* remove Korean dictionary (to be downloaded from original repo)
* add file in make-keyboard-text for auto-generating KeyboardTextsTable
* disable Hangul combiner when not using Hangul (otherwise symbols are seen as parts of a word)

---------

Co-authored-by: Lee0701 <hgl1002@naver.com>
2023-09-16 11:09:15 +02:00
Helium314
9c091e7f31 Merge branch 'new' into hangul_update 2023-09-16 10:48:06 +02:00
Helium314
5f8ed528ab fix hangul combiner being used for symbols input 2023-09-16 10:46:20 +02:00
Helium314
21871e32f9 make numpad work 2023-09-16 10:33:30 +02:00
Helium314
a7fdf6c700 fix the combiner chain issue 2023-09-16 09:19:47 +02:00
Helium314
7bd960e1a7 mostly fix that bug for latin
still happens for the first word after language switch (also breaks korean)
more precisely: until first reset of combinerChain
2023-09-15 20:14:38 +02:00
Helium314
baa7df8cda some comments, re-arrange hangul related part in inputLogic 2023-09-15 19:26:19 +02:00
Helium314
4cdabe2680 add file to create keyboardTextsTable (looks like it works), some formatting
and slight adjustment to korean handling in latinIme
2023-09-15 18:40:40 +02:00
Helium314
a7a3465e9b some formatting 2023-09-15 16:36:25 +02:00
Helium314
5f29248855
add section about hidden features to readme 2023-09-15 13:21:21 +02:00
Helium314
9b39101bae shrink icons when keyboard scale is below 80% 2023-09-15 12:35:59 +02:00
Helium314
bca519efe4 don't align keys off-center if hints are disabled, fixes #155 2023-09-15 11:16:55 +02:00
Helium314
3d0e590852 address some potential nullability issues in dictionary facilitator 2023-09-15 10:55:47 +02:00
Helium314
41a24295ae fix some minor glitches in language settings 2023-09-15 10:07:12 +02:00
Helium314
eee94f2924 make it compile (again, why did it work before?) 2023-09-14 19:21:54 +02:00
Helium314
04430fdb21 revert dictionary deletion (done to get a < 25 mb file for github upload) 2023-09-14 13:49:20 +02:00
Helium314
cf17b4984a Merge branch 'new' into hangul_update 2023-09-14 13:43:15 +02:00
Helium314
92283f415c make it compile 2023-09-14 13:23:07 +02:00
Helium314
d56f241b82 add bulgarian script to attrs
according to description, it should be aligned with scripts in ScriptUtils, but bulgarian was missing for some reason
2023-09-14 11:43:42 +02:00
Helium314
217749857d better fix for issues with wrapper view 2023-09-13 21:42:01 +02:00
Helium314
81d422fdc6
Show delete button when long-pressing suggestion (#148)
remove old style of removing suggestions via popup menu
2023-09-13 18:09:53 +02:00
Helium314
8fbb0ce0c7 fix 9713c4a25a not working when word ends with two equal codepoints 2023-09-13 18:05:18 +02:00
Helium314
c78e729daa provide the correct dictionary name (used for debugging only) 2023-09-13 17:09:23 +02:00
Helium314
9abcd15c5f update readme 2023-09-13 15:38:58 +02:00
Helium314
f321de326a set background color filters for icons in suggestion strip, hopefully fixes #141 2023-09-13 14:12:24 +02:00
Helium314
726e923f79 brighten a bit more when color is really dark 2023-09-13 12:33:48 +02:00
Helium314
5dbf6c5e60 redirect dictionary requests to dictionary repository 2023-09-13 10:49:17 +02:00
Helium314
60a608960b add hint to tap languages 2023-09-13 10:05:02 +02:00
Helium314
7d7d983471 some more todos updated, revert use of ?android:colorForeground 2023-09-13 09:22:22 +02:00
Georg Veichtlbauer
5d2696e725 LatinIME: Update the number pad
* Shuffle buttons to match other keyboards

Change-Id: I7ba42cc70127086f2082d7d311af30a7e09ca0a1
2023-09-13 08:11:36 +02:00
Helium314
9dd8dec55e re-arrange colors, add some todo 2023-09-13 08:11:02 +02:00
Helium314
b68bfcfd4c enable language switch when sliding upwards on space 2023-09-12 22:53:14 +02:00
Helium314
131a813a54 remove padding for ColorPickerView to fix issues with selecting a color outside the view 2023-09-12 19:22:03 +02:00
Helium314
3e86723556 mark emoji arrays as used, as this isn't foudn automatically 2023-09-12 15:19:45 +02:00
Helium314
042bd14a71 rename language settings fragment 2023-09-12 14:50:36 +02:00
Helium314
d867eb13bf fix returning to main fragment after screen orientation change 2023-09-12 14:46:19 +02:00
Helium314
2ade6b3b09 fix wrong day/night theme showing in ColorsSettingsFragment
and run the keyboard reload in background to avoid visual glitches
2023-09-12 14:43:50 +02:00
Helium314
b18b7dc820 add a separate fragment for setting user-defined colors
issues:
when using day/night mode, active keyboard is shown in preview, not the acually modified varian
reloading / updating the preview is either slow or will not show the keyboard again
2023-09-12 14:21:40 +02:00
Helium314
d33650586b use percentage-based inset drawable only on android 8+
for older versions it's now a fixed dp inset, which sometimes looks a little weird
fixes #94
2023-09-11 18:29:56 +02:00
Helium314
2ae736db08
Update README.md 2023-09-11 16:18:08 +02:00
BlackyHawky
9c112f6de6
For Holo style: added 3 dots missing for key style less/greater (#144)
"hasPopupHint" parameter has been removed from the row_symbols4.xml and row_symbols_shift4.xml files as it's already defined in "settingsMoreKeysStyle".
2023-09-11 12:53:08 +02:00
BlackyHawky
e4b00ee041
Comma pop-up for Numpad in portrait mode is the same as for symbol view (#143)
In landscape mode, the comma pop-up contains all keys, as there is no style for this particular key
2023-09-11 12:45:32 +02:00
Helium314
3d5136f891 adjust issue templates 2023-09-11 12:40:59 +02:00
Helium314
12cbd43bda make history learn next word after auto-capitalized words, improves #135 2023-09-11 11:39:02 +02:00
Helium314
8840411039 todos and unused code
show debug settings in the original place in advanced settings
2023-09-10 21:39:56 +02:00
Helium314
bc9150b007 work off some "todo"s, mostly related to colors
make threshold score for autocorrect depedent on autocorrect threshold
2023-09-10 19:45:03 +02:00
Helium314
eebaa2881b add option to enable phrase gesture 2023-09-10 16:29:29 +02:00
Helium314
52d50a6de6 autocorrect for shortcuts specified in user dictionary 2023-09-10 15:44:42 +02:00
Helium314
169e0feb20 less additions to personal dictionary if language is not clear enough 2023-09-10 13:50:10 +02:00
Helium314
fd1270dd11 remove some unused code 2023-09-10 13:39:24 +02:00
Helium314
ac1cc0a690 address some more warnings 2023-09-10 12:39:01 +02:00
Helium314
6c0f1361d9 enable debug settings in debug mode 2023-09-10 12:04:05 +02:00
Helium314
f992fa9ffd add comma-popup to comma key for symbol keyboards 2023-09-10 10:54:54 +02:00
Helium314
40bd6d5d04 remove some colors and fix setup color broken in a recent commit 2023-09-10 10:48:06 +02:00
Helium314
22a8f285d5 allow setting space bar color for no-border themes 2023-09-10 10:42:35 +02:00
Helium314
3a01d59ac6 switch material pressed key color to same as unpressed, remove some unnecessary files
same color when pressed because the old (darker) color was counter-acting the brighter pressed state color when using a dark theme
2023-09-10 10:33:18 +02:00
Helium314
975a815c4f remove some unused images 2023-09-10 09:40:39 +02:00
BlackyHawky
be6cae94fa
For Holo style: added 3 dots missing for some functional keys (#138) 2023-09-10 00:22:04 +02:00
Helium314
79badf93b1 allow showing all moreKeys 2023-09-10 00:20:21 +02:00
Helium314
850f75585b merge moreKeys for main and secondary locales, fixes #64 2023-09-09 23:26:35 +02:00
Helium314
3ba28b7a22 some more warnings addressed 2023-09-09 18:47:21 +02:00
Helium314
9426a2d616 next try for using same icon files for holo and material emoji tabs 2023-09-09 14:30:45 +02:00
Helium314
e543788920 address some more warnings 2023-09-09 12:51:49 +02:00
Helium314
af1eb551cf slightly larger holo recent emoji icon, by @BlackyHawky 2023-09-09 09:56:02 +02:00
Helium314
565c9504db partially revert 43626b009c
commit got rid of many (almost) duplicate files, but introduced visual glitches on some Android versions
see https://github.com/Helium314/openboard/issues/110#issuecomment-1709317156
2023-09-09 09:50:50 +02:00
Helium314
cbca99843b add options for language switch key, fixes #15 2023-09-09 08:29:06 +02:00
Helium314
ed7e6cff04 fix suggestion stip color for material no border theme 2023-09-07 18:13:39 +02:00
Helium314
9223c4c1f2 enable minify (might crash, in that case needs proguard adjustments or revert) 2023-09-07 17:51:37 +02:00
Helium314
cc84ff6a00 address some warnings, migrate user dictionary settings to androidx 2023-09-07 16:29:59 +02:00
Helium314
c6efd5a843 fix some warnings, disable "with gesture typing" text 2023-09-07 15:54:08 +02:00
Helium314
27fdd6d081 address some warnings/errors
move some xml files to default xml from xml-land and xml-sw600dp
they are only used for land / sw600dp, but generate compiler warnings
having them available without qualifier is definitely safer, otherwise doesn't change anything

rename KeyboardIcons.LXX_Light.Parent to KeyboardIcons.LXX_Light_Parent to remove detected circular dependency
2023-09-07 14:56:50 +02:00
Waqar Ahmed
065beab72a
Add ur_PK (urdu pakistan) keyboard (#133) 2023-09-07 13:38:51 +02:00
BlackyHawky
ebffe9927e
French translations added and improved existing ones (#136) 2023-09-07 13:30:47 +02:00
Helium314
098628b9ee hide settings instead of disabling 2023-09-07 13:29:21 +02:00
Helium314
cb2495f5f0 less duplication for sepup-dimens resources, remove more unused stuff 2023-09-07 13:10:00 +02:00
Helium314
22181fb8b5 remove unused strings, small adjustments 2023-09-07 12:01:45 +02:00
Helium314
0b92c6ce0d remove old unused dictionary pack settings 2023-09-07 09:19:47 +02:00
Helium314
25b1c628e3 remove attempt to find non-existing fallback dictionary 2023-09-07 08:17:19 +02:00
Helium314
efb54c7573 make back button in settings work again 2023-09-07 07:59:44 +02:00
Helium314
20a265e327 update keyboard texts table, and script to create it 2023-09-06 23:45:11 +02:00
Helium314
1978944e9f remove some more unused drawables 2023-09-06 23:44:40 +02:00
Helium314
5ad4ba41b9 mark some resource strings as used 2023-09-06 23:27:25 +02:00
Helium314
43626b009c remove more unnecessary icons 2023-09-06 17:37:07 +02:00
Helium314
e64d49a50e remove unnecessary emoji images 2023-09-06 17:08:50 +02:00
Helium314
b17ab1a3a3 remove setting for keyboard resizing (100% / default height is the same as disabling) 2023-09-06 15:45:41 +02:00
Helium314
f37420c4a8 default to auto day/night on api29+ 2023-09-06 15:44:23 +02:00
Helium314
64fa453ea1 adjust appearance settings for the simplified theme choice 2023-09-06 15:22:08 +02:00
Helium314
9650c7a85c fix issies with holo colors 2023-09-06 13:23:26 +02:00
Helium314
efffc02fed convert Colors to kotlin, move some theme-dependent logic inside colors 2023-09-06 12:15:22 +02:00
Helium314
a0d37dc3ab make holo key popup drawables whiter
by @BlackyHawky, https://github.com/Helium314/openboard/issues/110#issuecomment-1706302980
2023-09-05 14:24:23 +02:00
Helium314
0c8f1dc333 Merge branch 'hangul' into hangul_update
todo:
make it compile
move dictionary to dict repo (wordlist?)
test
2023-09-04 16:53:03 +02:00
Helium314
7eaba95f01 address some warnings, remove "state_has_morekeys" drawabled from holo key popup 2023-09-04 16:28:18 +02:00
Helium314
e6d4c4f604 fix issue with material no-border suggestion strip 2023-09-04 15:57:05 +02:00
Helium314
10753d780b add holo no border theme (wip)
issues:
small pressed drawable for emoji key and action key
black line in clipboard history
2023-09-04 15:27:17 +02:00
Helium314
6b44f24a76 add cancel button to secondary language selection dialog 2023-09-04 12:12:08 +02:00
Helium314
cc0b7927cf fix #123 2023-09-04 12:05:28 +02:00
Helium314
0055ba1c89 move some static color functions to separate file, adjust holo navbar color 2023-09-04 11:28:10 +02:00
Helium314
7b9644a9ae set background drawable for keyboardWrapperView 2023-09-04 10:59:36 +02:00
Helium314
11655eea26 add comment and deal with some warnings in code that will likely be removed 2023-09-04 10:49:38 +02:00
Helium314
42ee6639b0 update readme, small adjustments 2023-09-04 10:21:08 +02:00
BlackyHawky
454a54ada7
Popups drawables are colored white for Holo style (#132) 2023-09-04 10:20:21 +02:00
BlackyHawky
d23488191a
Bar under the selected emoji category follows accent color (#126)
This only applies to the Holo style, which is the only one to have the "categoryIndicatorEnabled" parameter set to true.
2023-09-04 10:00:00 +02:00
Helium314
fb81b8c722 reduce number of deprecation warnings for the same issue 2023-09-04 09:57:05 +02:00
Helium314
3a14893e9e reload enabled subtypes when switching "use system languages" 2023-09-04 09:50:34 +02:00
Helium314
ee5fd241ac re-use holo background drawable 2023-09-04 09:46:12 +02:00
Helium314
a757b00922 fix bad workaround for suggestion strip word background 2023-09-04 09:35:01 +02:00
Helium314
d9d1204647 update comments 2023-09-04 08:52:50 +02:00
Helium314
fe51ee5f98 fix holo action key moreKeys 2023-09-04 08:35:12 +02:00
BlackyHawky
395c4bac09
Emojis no longer have the key drawable for Holo themes (#127) 2023-09-04 07:37:38 +02:00
BlackyHawky
c4ecf7b156
Fixed the width of "ABC" key for Holo style in clipboard view (#128)
Material style isn't impacted by this modification
2023-09-03 22:37:28 +02:00
BlackyHawky
0c38c936aa
Fixed gradient drawable not used for background (#125) 2023-09-03 22:35:33 +02:00
BlackyHawky
5ec846d8f2
For Holo theme only : pinned icon follow accent color (#124) 2023-09-03 22:19:31 +02:00
BlackyHawky
25e89f7555
Fixed emoji categories icons for holo theme (#121) 2023-09-02 06:45:52 +02:00
Helium314
ba70be8b65 cleanup keyboardThemes, remove holo blue (but keep the file for now) 2023-09-01 23:01:47 +02:00
Helium314
529839b6c8 hopefully fix spell checker language detection 2023-09-01 21:54:37 +02:00
BlackyHawky
445eb37b5f
Fixed clipboard icons for holo theme (#117) 2023-09-01 20:35:56 +02:00
Helium314
136f060d6a consider contacts dictionary when removing suggestions, fixes #114 2023-09-01 20:23:54 +02:00
Helium314
6cac9e2512 use instanceof instead of comparing classes 2023-09-01 20:08:26 +02:00
Helium314
50e175509b make language settings work nicely again
now actually it's not part of preferences any more, but looks the same
2023-09-01 19:49:37 +02:00
Helium314
71187f4b32 migrate preferences to androidx (bad state... wip) 2023-09-01 18:20:09 +02:00
Helium314
70a86d9326 use appcompat dayNight theme, alertDialogs and popupMenus 2023-09-01 10:19:09 +02:00
Helium314
2a19114ccb change nullable / nonnull annotations to androidx 2023-09-01 08:08:36 +02:00
Helium314
e2d2889d81 add holo theme base on custom colors, and remove old theme selection (wip) 2023-09-01 00:35:40 +02:00
Helium314
ede5bf8f4f make custom colors always active 2023-08-31 20:49:43 +02:00
Helium314
61a73572b8 fix crash when day/night switch is removed 2023-08-31 16:05:16 +02:00
Helium314
50258ef435 remove no-dictionary warning when a fallback dictionary for the same language can be used 2023-08-31 12:20:41 +02:00
Helium314
59ce1a1cb3 set color state lists inside Colors 2023-08-31 11:52:10 +02:00
Helium314
556ff23b98 remove bad workaround
InsetDrawable is the solution I was looking for...
2023-08-31 11:21:12 +02:00
Helium314
a7a40d9ed1 set key background colors only once
no functional change, but this will allow more complicated color setting fucntions without impacting performance
2023-08-31 11:06:42 +02:00
Helium314
8916c67d15 workaround for toasts not showing up on some android versions 2023-08-30 12:03:57 +02:00
Helium314
3758cfe403 offer opening dictionary repository if no local dictionary is found when enabling a subtype 2023-08-30 11:45:30 +02:00
Helium314
b3764239b8 tune autocorrections once again 2023-08-30 09:05:29 +02:00
Helium314
963ceacec9 remove some unused strings than can be simply replaces with system strings anyway 2023-08-30 07:50:25 +02:00
Makar Razin
8b2f6270be
East Slavic translations update (#113) 2023-08-29 22:59:55 +02:00
Helium314
305fcdf221 fix too aggressive correction for words with same base latin characters 2023-08-29 22:47:59 +02:00
Helium314
e3240965a8 register app for opening .dict files (content uri only) 2023-08-29 22:26:57 +02:00
Helium314
e623d14829 better check for scripts supporting uppercase
previously language was used, which fails for hinglish
2023-08-29 12:22:39 +02:00
Helium314
cb09538b32 fix crash 2023-08-29 11:10:29 +02:00
Helium314
ccece45596 switch from Char.toInt() to Char.code
removes a lot of deprecation warnings
internally kotlin still seems to use toInt() when calling code
2023-08-29 09:41:22 +02:00
BlackyHawky
b48c6b0077
Fixed misalignment in 4th row when splitting for tablet only (#67) 2023-08-29 08:44:42 +02:00
Helium314
0bcf0ee78d show secondary locales when using system languages, update comments 2023-08-29 08:15:32 +02:00
Helium314
6475ed7d74 remove unused dependencies and compress native libraries 2023-08-29 07:52:18 +02:00
Md. Rifat Hasan Jihan
38edc6fb3e
Enabled split keyboard for landscape (#46)
* Enabled split keyboard for landscape

Enable split keyboard is available from medium-sized (720dp) phones (landscape). On smaller phones, this toggle will be hidden. No change on tablet layout behavior.
2023-08-29 06:52:51 +02:00
Helium314
e0174d1872 mark some strings as used (for detection of unused resources) 2023-08-29 00:14:11 +02:00
Helium314
a8d7702e95
fix French translation for prefs_key_longpress_timeout_settings
see #106
2023-08-29 00:03:03 +02:00
BlackyHawky
4a136b0dd9
French translations added and improved existing ones (#106) 2023-08-28 23:26:19 +02:00
BlackyHawky
15dc59539a
Add string resource for night mode pref (#105) 2023-08-28 21:01:06 +02:00
Helium314
9713c4a25a further improve fix in ce0bf06545 2023-08-28 20:48:57 +02:00
Helium314
78cccee9bb add unit tests for shouldBeAutoCorrected, small dict fix 2023-08-28 19:50:55 +02:00
Helium314
e9488b9ea0 once again try to improve autocorrection 2023-08-28 19:26:25 +02:00
Helium314
4a2b09fe2e fix internal main dictionary being used instead of user-added one 2023-08-28 17:07:23 +02:00
Helium314
f0e5a38fa2 move shouldBeAutoCorrected to a separate function 2023-08-28 14:01:31 +02:00
Helium314
0687d10420 avoid displaying <Language> (Unknown Region) 2023-08-28 08:15:10 +02:00
BlackyHawky
a81726f8dc
Added ":" and ";" signs for Number pad in portrait mode (#104) 2023-08-27 22:38:56 +02:00
Helium314
d53d9a824d udpate strings with translations scraped from more recent version of AOSP keyboard 2023-08-27 22:11:18 +02:00
Helium314
c87d36d20c scrape system strings from latest android source (before is was android 9) 2023-08-27 20:32:00 +02:00
Helium314
70a678804c remove dictionaries for languages with less than 10 million speakers
still available in the dictionaries repository
2023-08-27 19:38:09 +02:00
Helium314
f7bbefff98 enable hinglish subtype 2023-08-27 19:24:10 +02:00
Helium314
f137a32a28 fix subtypes not showing up if all available subtypes have a mismatching country 2023-08-27 19:18:05 +02:00
Helium314
5b0acd82fa add "show source dictionary" option in remove suggestion dialog when using debug apk 2023-08-27 18:41:13 +02:00
Helium314
3ca932db19 properly delete extracted internal main dictionary, and don't show empty dict folders 2023-08-27 18:34:51 +02:00
Helium314
2df1fb926e properly deal with dictionaries in same language, but different locale 2023-08-27 10:41:46 +02:00
Helium314
babbbed908 sort and highlight enabled subtypes in language settings 2023-08-27 10:07:06 +02:00
Helium314
0dc4ef8805 fix issues with language settings
don't show subtypes when using system locales
  this may not be ideal, but avoids dealing with many edge cases and is consistent with old behavior
don't return a selected subtype when it's not enabled
2023-08-27 09:41:23 +02:00
BlackyHawky
82a5e11fd0
Unnecessary files for Number Pad deleted (#102) 2023-08-27 07:45:02 +02:00
Helium314
fabc940c46 Squashed commit of the following:
change appearance preferences so only holo and new custom themes are accessible
remove old lxx themes and many of the drawables only used there (still a bunch left)
(internally) rename holo themes to match test in preferences: ICS -> HoloBlue, KLP -> HoloWhite to
2023-08-26 22:58:51 +02:00
BlackyHawky
e04bb1eaa6
Added numpad for all language layout (#83) 2023-08-26 09:00:29 +02:00
BlackyHawky
77c0a5b4f5
Added new number pad (#81)
* Added new number pad
* keyActionFlags="noKeyPreview" added
* Displayed period + comma keys as Gboard & added symbols key
* Added currency hint for phone in portrait mode on "%" key
* Added ≠ ≈ on the = key and ± on the + key
* Moved spacebar above backspace key for phones in landscape mode
2023-08-26 08:57:46 +02:00
Md. Rifat Hasan Jihan
350eb6d66a
Translated new strings for Bengali (#100)
* description added

* translation for new strings
2023-08-26 08:08:22 +02:00
BlackyHawky
1dc4e07c73
Fixed missed background color of "Previous_key". (#96) 2023-08-26 08:04:12 +02:00
BlackyHawky
a2830490d7
Fixed background color of "Label_action_key" (#97) 2023-08-26 08:03:12 +02:00
Helium314
514014efc8 clean up after switching to new language settings
remove settings fragments for custom input styles, secondary locale and dictionaries
remove related methods, strings and other resources
remove unused functions, mostly in RichInputMethodManager and LatinIME
address some lint warnings
2023-08-25 22:27:13 +02:00
Helium314
aa12c7abdc merge translations from openboard weblate 2023-08-25 18:17:23 +02:00
Helium314
f32395366d
Switch to new language settings (#89)
* add language settings
* move to settings instead of language selection at end of setup wizard
* allow storing enabled subtypes in preferences
* make language selection and input method picker work with new system
* deal with weird issue of getSystemLocales returning inconsistent locales
* add details text to language settings
* make usused settings inaccessible
* better deal with "zz" subtypes, move hungarian (qwerty) from method.xml so a separate aditional subtype
* scrape some strings+translations from android system + latinime
* rename strings, add comment for unused string
2023-08-25 17:33:29 +02:00
Helium314
e0c054ce09 reduce unwanted autocorrects
happens for short words following the attempts to improve #86
now the auto-correct should only happen if suggestion has already been used in this ngram context,
and should not appear again quickly after correcting back to the typed word
2023-08-21 14:08:18 +02:00
Helium314
867c039d2c fix issue with space inserted at awkward places
e.g. type "whem" and space, autocorrected tho "when"
press delete and get "whem" again
select "when" suggestion (or any other)
get " when" instead of "when"
2023-08-21 14:05:47 +02:00
Helium314
0b718f5e15 fix missed setting horizontalGapNarrow 2023-08-21 08:26:54 +02:00
Helium314
2db6d99a23 fix sliding input issues: take into account that keyboard height may change 2023-08-21 07:46:54 +02:00
Helium314
356e39921b create crash report files in debug version 2023-08-19 20:36:48 +02:00
Helium314
707a7bf48b use dictionaries with wrong country rather than none
now e.g. pt_BR locale with also use pt_PT if only pt_BR dictionary is available
2023-08-19 19:12:01 +02:00
Helium314
cee6bf65a2 update comment for color selector ideas 2023-08-19 17:46:38 +02:00
Makar Razin
b5135f0be9
East Slavic translations update (be, ru, uk) (#92) 2023-08-19 07:49:54 +02:00
Helium314
a0c53d8f92
fix crash 2023-08-18 07:58:12 +02:00
Md. Rifat Hasan Jihan
579fdb81d5
update bn strings (#87) 2023-08-17 16:22:40 +02:00
Helium314
d878d5cde2 (hopefully) further improve situation with bad or clearly missing autocorrection 2023-08-17 16:00:41 +02:00
Helium314
50383bcbe5 don't always ignore dictionary shortcuts, but only if the alternative word has been used in this ngram context 2023-08-17 14:09:23 +02:00
Helium314
801d82aa8a improve suggestions for very high scoring words
see example with typiny "hum" and getting "him" in #86
now either it will auto-correct, but show "hum" in suggestion strip
or it will not auto-correct if "hum" has high enough score
2023-08-17 10:19:58 +02:00
BlackyHawky
cbff614672
Fix removing delete key background in emoji view (#82) 2023-08-16 20:10:21 +02:00
Md. Rifat Hasan Jihan
a20a09e05b
precise translation for Bengali (#80)
also followed android system translation style for consistency.
2023-08-16 18:52:51 +02:00
BlackyHawky
eed4794887
Remove suggestion appears when only 1 word is displayed (#84) 2023-08-16 18:51:38 +02:00
Helium314
50921ef8cd remove duplicate code, keep alpha when adjusting luminosity, comments 2023-08-16 18:44:14 +02:00
Helium314
146231dcb0
Add auto theme for custom themes (#79) 2023-08-16 18:41:47 +02:00
BlackyHawky
d7986f0959
Enlarged enter key for AZERTY in landscape mode - Tablet only (#66) 2023-08-15 15:00:54 +02:00
Helium314
ce0bf06545 fix deleted character still being received in getTextBeforeCursorAndDetectLaggyConnection
fixes https://github.com/openboard-team/openboard/issues/811
reproducible e.g. using https://f-droid.org/en/packages/com.farmerbb.notepad/
2023-08-14 22:17:30 +02:00
Helium314
ffa9a01a2b add option for narrower key gap 2023-08-14 19:16:43 +02:00
Helium314
77baaff462 fix missed setup textview minHeight 2023-08-14 18:07:46 +02:00
Helium314
600309fca6 small adjustments to setup 2023-08-14 17:14:41 +02:00
Md. Rifat Hasan Jihan
d0a5e0f98a
fixed setup title text was too large on some devices & setup screen elements centered (#70) 2023-08-14 17:10:47 +02:00
BlackyHawky
c92b663e5b
Update symbols "apostrophe" key: "?" is now always selected. (#77) 2023-08-13 22:43:29 +02:00
Helium314
fc93e68425 adjust way of determining suggestion strip text colors
closer to old themes
2023-08-13 22:33:53 +02:00
BlackyHawky
84040a2593
Fix color of the three dots in suggestion strip (#78) 2023-08-13 22:17:43 +02:00
BlackyHawky
0940ac0f15
Fix punctuation marks color in suggestion strip (#75) 2023-08-12 07:33:57 +02:00
BlackyHawky
5008345e05
Fix buttons colour in one-handed mode (#72) 2023-08-11 09:23:39 +02:00
Helium314
d480a6321f add comments 2023-08-11 09:03:16 +02:00
Helium314
c9ed9fd9cb
Update README.md 2023-08-11 08:49:08 +02:00
Helium314
592f4aab0c allow multilingual typing with an arbitrary number of languages
currently can't set mor than one extra language, will be enabled in language settings re-work
2023-08-11 00:58:33 +02:00
BlackyHawky
e7e05ca1c2
Improved keyboard display for tablet (#58) 2023-08-10 21:17:00 +02:00
BlackyHawky
65c3972b73
Added HSL properties to lighten or darken colors (#57)
* Added HSL properties to lighten or darken colors

* Adjusted lightening and darkening value
2023-08-10 20:50:49 +02:00
Md. Rifat Hasan Jihan
0c11dba81d
Translated strings for Bengali (#65)
* made app_slogan string non-translatable

* translated bn\strings

Translated using Lokalise

* translated bn\strings-emoji-descriptions

Translated using Lokalise
2023-08-09 19:11:51 +02:00
Helium314
0eed94cc56
Merge pull request #68 from BlackyHawky/Emoji_key_background
Fix emoji key background for no-border themes
2023-08-09 16:37:28 +02:00
Helium314
acaf426436
Merge pull request #69 from BlackyHawky/Settings_Android12
Fix all-time dark Openboard settings for Android 12+
2023-08-09 08:22:09 +02:00
Helium314
7c6a43d9c9
Merge pull request #60 from BlackyHawky/Symbols
Symbols modified on "f" + "m" + "apostrophe" keys
2023-08-09 06:46:47 +02:00
BlackyHawky
235cdc2464 Fix all-time dark Openboard settings for Android 12+ 2023-08-08 20:23:55 +02:00
BlackyHawky
e54dfa572c Fix emoji key background for no-border themes 2023-08-07 19:05:08 +02:00
BlackyHawky
b07146061b Symbols modified on "f" + "m" + "apostrophe" keys 2023-08-06 00:12:36 +02:00
Helium314
afa0670aba
Merge pull request #56 from BlackyHawky/Popup_corner
Fixed missing rounded popups and rounded selector for base themes
2023-08-05 10:22:20 +02:00
BlackyHawky
47194f8425 Fixed rounded popups for base themes 2023-08-05 00:28:37 +02:00
BlackyHawky
9cc996c296
Resolved "Todo" in themes-lxx-base.xml and themes-lxx-base-border.xml (#51)
* Action key aspect ratio & action more keys popup partially resolved

* Action key aspect ratio & action more keys popup 100% resolved

* Todo removed for "themes-lxx-base.xml" & "themes-lxx-base-border.xml"
2023-08-03 07:35:26 +02:00
Helium314
4c871bea54
Update dictionary urls 2023-08-01 10:05:12 +02:00
Helium314
20a1c95d8d fix bad spacebar height in some modes 2023-07-31 10:56:19 +02:00
Helium314
093280b513 fix color issues in (more) suggestions for border theme 2023-07-31 07:22:22 +02:00
Helium314
cf47f22c9e fix white suggestion strip pressed color 2023-07-30 22:25:51 +02:00
Helium314
20aa6cf057 tune colors a little 2023-07-30 20:58:46 +02:00
Helium314
d9ebf2866c put custom theme variants in some array 2023-07-30 10:39:58 +02:00
Helium314
0a7946e248
Merge pull request #44 from BlackyHawky/Fix_keys_alignment
Fix_alignment_Shift/Delete_with_Symbol/Enter_keys
2023-07-30 10:36:47 +02:00
Helium314
099095e3a3 slightly adjust colors, adjust some todos 2023-07-30 09:57:43 +02:00
Helium314
d517709391 fix issue when rotating screen while keyboard is showing on some newer android versions
see https://github.com/Helium314/openboard/pull/33#issuecomment-1650487463
based on commits
  4d464ec07d
  6ae09365a5
  6c752d8eca
2023-07-30 08:58:08 +02:00
Helium314
469088d62f
Merge pull request #43 from BlackyHawky/Fix_enter_key_tablet
Fix enter key in split mode for AZERTY
2023-07-30 08:41:08 +02:00
Helium314
9d8571db0f update themes to work with the new base theme
slight adjustments to base theme to work around some strange issues
start replacing old themes with color variants of the base theme
2023-07-30 08:34:29 +02:00
BlackyHawky
ffb83fe2a4 Fix_alignment_Shift/Delete_with_Symbol/Enter_keys 2023-07-30 00:40:23 +02:00
BlackyHawky
fd4c7aca22 Fix enter key in split mode for AZERTY 2023-07-29 22:50:19 +02:00
Helium314
d04b8a8ca7 Merge remote-tracking branch 'refs/remotes/my/new' into new 2023-07-29 18:50:42 +02:00
BlackyHawky
5ca7aec120
Add white base themes for use with custom themes (#36) 2023-07-29 18:36:50 +02:00
Md. Rifat Hasan Jihan
dd0c8e2187
Disable auto-capitalization for some languages (#38)
* Disable auto-capitalization for some languages

Layouts from these languages have different characters on default state and shift state (not just case change of normal state). So it is not necessary for these layouts to have auto-capitalization start of the typing or after sentence terminators.
Bengali, Hindi, Thai, Georgian, Khmer, Lao, Sinhala, Nepali

* added more NON_UPPERCASE_SCRIPTS
2023-07-28 23:49:35 +02:00
Md. Rifat Hasan Jihan
2a762bdc62
Rearranging and grouping some rarely-used characters for bn_BD (#40) 2023-07-28 23:49:00 +02:00
Helium314
2e45ae78fb fix clipboard key being colored after switching from custom to non-custom theme 2023-07-28 22:46:26 +02:00
Helium314
2fd87bb593 fix MoreKeysResources to always create hebrew locale with code iw
iw is used in android resources, and mismatching locale code could cause issues
2023-07-28 20:19:57 +02:00
Helium314
33b64ac34d move dictionaries and related script to a separate repository
https://codeberg.org/Helium314/aosp-dictionaries
2023-07-28 19:19:57 +02:00
Helium314
1956ca43e4 set custom text color for space bar text (language) 2023-07-28 17:49:39 +02:00
Md. Rifat Hasan Jihan
000f312bd6
Split keyboard for Bengali (Bangladesh) (#18)
* Split keyboard for Bengali (Bangladesh)

* character correction

* supportedScript="bengali"
2023-07-28 06:38:31 +02:00
Helium314
965038744b improve garbage words being created in batch input mode
this likely depends on library
2023-07-26 16:17:06 +02:00
Helium314
0918935e09 add missing 'ß' to german 600dp layouts, should fix #35 2023-07-26 13:30:33 +02:00
Helium314
6fafac914b fix a bunch of minor issues with custom themes 2023-07-26 13:26:19 +02:00
Helium314
3c060ddfa5 move color filters for custom colors into "Colors" class 2023-07-26 11:01:58 +02:00
Helium314
db3c39bfc5 add some experimental dictionaries for non-latin scripts, upate readme 2023-07-26 06:25:42 +02:00
Helium314
a1cf043083 fix red spell check for words ending in period on newer android versions, fixes #32
commit d9c7fd89548926eca24d22cbc784278df33eec47
Author: icburns <icburns@uw.edu>
Date:   Thu Aug 18 17:51:50 2022 -0700

    #520 modify CHECKABILITY_CONTAINS_PERIOD logic to for capitalized words in suggestions.

commit 630e03d88f0c3db9749fea228fd10a684c27732d
Author: icburns <icburns@uw.edu>
Date:   Thu Aug 18 17:47:23 2022 -0700

    #520 modify CHECKABILITY_CONTAINS_PERIOD logic to account for period only present in the last index (valid end of sentence).
2023-07-25 14:41:11 +02:00
Helium314
92d03dfa6c update issue templates 2023-07-24 10:12:12 +02:00
Michael W
8acf5b5464 LatinIME: Properly refresh summary
* onResume() of AppearanceSettingsFragment gets called
  before onPause() of CustomInputStyleSettingsFragment
* Instead, save after each modification so the lifecycle
  doesn't matter

Change-Id: If5c5df8b589c08df61eea2643c217e9665a01002
2023-07-24 08:21:42 +02:00
gigisforza70
0834f408ef
fix space (height) between keys (#8)
* fix space between keys

fix space between keys, make them like gboard,for better user experience.

* restore old height to 100%
2023-07-23 21:57:49 +02:00
Helium314
476c0a563c
Merge pull request #27 from BlackyHawky/Split_number_row
Split number row
2023-07-22 12:56:45 +02:00
BlackyHawky
3b8260c26b Split number row 2023-07-22 12:11:08 +02:00
Helium314
30745bc2e2
Merge pull request #26 from BlackyHawky/Fix_emoji_page_indicator_background_amoled
Fix emoji page indicator background amoled
2023-07-22 10:04:01 +02:00
BlackyHawky
1b6fe9f746 Fix emoji page indicator background amoled 2023-07-22 08:12:49 +02:00
Helium314
b5f3639e9f fix minor issues with user colors 2023-07-22 07:53:14 +02:00
Helium314
7d9e918c7a
Update README.md 2023-07-21 19:39:43 +02:00
Helium314
d2f414811f properly apply user defined theme immediately 2023-07-21 19:32:53 +02:00
Helium314
72dac6a9ea insert phantom space after some more characters 2023-07-21 18:20:31 +02:00
Helium314
ac2564e50a improve coloring of some key icons 2023-07-21 18:12:30 +02:00
Helium314
7facfd07ef missed rename from user to custom 2023-07-21 18:12:08 +02:00
Helium314
9359f10d6f fix bad interactions of navbar color and custom theme 2023-07-21 17:13:14 +02:00
Helium314
ca2b671f26 move getting custom colors to a separate function
and rename some more variables to "custom"
wip: navigation bar color currently broken
2023-07-20 12:38:07 +02:00
Helium314
c6411777ab allow setting functional and space key colors separately
not exposed to user
also fixes minor inconsistencies
2023-07-20 10:55:22 +02:00
Helium314
f61c76195d rename user theme to custom theme 2023-07-20 09:47:02 +02:00
Helium314
6c75203dfc add armenian, russian and turkish currency keys
and move pound and rupee key styles to separate files, to match others
2023-07-19 23:56:49 +02:00
Helium314
bbfebcc50a set currency hint using currency key style 2023-07-19 22:04:28 +02:00
Helium314
b21f059c70 remove unnecessary code duplication for azerty
was already the case for other layouts and other rows of azerty
2023-07-19 18:36:38 +02:00
Helium314
ffe7d81ebc improve emoji deletion 2023-07-19 17:05:53 +02:00
Helium314
178654b0e9 update experimental emoji dictionary 2023-07-19 11:31:35 +02:00
Helium314
db54116592
Merge pull request #25 from BlackyHawky/Emoji_v15
Update Emojis to version 15
2023-07-18 00:14:14 +02:00
BlackyHawky
75243ef893 Update Emojis to version 15 2023-07-17 18:45:37 +02:00
Helium314
aba68b114b update PR template 2023-07-17 08:47:20 +02:00
Helium314
f48cd06641 update readme 2023-07-15 09:44:20 +02:00
Matthieu Wadbled
9c94268730 Update rows_azerty.xml
Replace rowkey_qwerty by rowkeys_azerty for 600dp width in land mode

Fixes : #668
2023-07-15 09:42:31 +02:00
Helium314
8091c5f62d add PR template and experimental italian dictionary 2023-07-13 12:45:16 +02:00
Helium314
1848d50c6c fix navbar color setting state 2023-07-12 19:02:32 +02:00
Helium314
624b58b82d
Update readme 2023-07-08 13:16:10 +02:00
Md. Rifat Hasan Jihan
f397cb3458
support spell checker for Bengali (Bangladesh) (#11) 2023-07-08 13:13:05 +02:00
Md. Rifat Hasan Jihan
b7d4a4dc6c
Fixed dictionary icon (#10)
* Fixed dictionary icon
* fixed about icon dimension
2023-07-08 13:00:50 +02:00
Helium314
1489c368a6 rename default english dictionary to en_US (because it is), add en_GB dictionary 2023-07-08 11:09:56 +02:00
Helium314
4d2686cb39 improve issues with key text colors (still happening in more suggestions view) 2023-07-08 10:49:32 +02:00
Helium314
f498d14e3b fix issues with adding words to personal dictionary 2023-07-08 09:11:22 +02:00
Helium314
2439791322 fix issues with keys texts not using user-defined color 2023-07-08 08:03:57 +02:00
Md. Rifat Hasan Jihan
3f3a2c4230
Added "About" page on 'Settings' (#6)
* Added "About" page on 'Settings'

* configure @string/app_slogan

* auto retrieve version

* Update links in about screen

---------

Co-authored-by: Helium314 <helium314@mailbox.org>
2023-07-08 07:56:59 +02:00
Helium314
38dfcc407b update readmes 2023-07-07 08:27:29 +02:00
Helium314
b184fe19ea copy use-contacts setting to correction settings 2023-07-07 07:42:13 +02:00
Helium314
bc159f5e3c fix color dialog title 2023-07-07 07:13:36 +02:00
Helium314
c53224dd2b improve UI for user-added dictionaries 2023-07-07 06:32:48 +02:00
Helium314
4a5d3155b4 fix issue with emoji color in more suggestions panel 2023-07-06 21:16:59 +02:00
Helium314
d6b4079502 update experimental dictionaries, and add experimental emoji dictionary 2023-07-06 19:34:24 +02:00
Helium314
ae1a2ca183 option for navbar to follow theme
fixes #4
2023-07-06 16:46:23 +02:00
Helium314
99075977ff
Merge pull request #7 from RHJihan/new
Made Clipboard key default on long press comma, and re-order other items in that menu
2023-07-06 08:51:32 +02:00
Md. Rifat Hasan Jihan
d0b1bb5802 Made Clipboard key default on long press comma
The Clipboard key is set to default on long pressing comma and rearranged for a better user experience.
2023-07-06 11:41:59 +06:00
Helium314
228fea6976 update issue templates 2023-07-05 18:20:33 +02:00
Helium314
d9358f64de add experimental dictionaries, and script to create them from sentence lists (wip) 2023-07-05 18:04:07 +02:00
Helium314
5b3ddaaadd enable contact suggestions 2023-06-29 10:56:17 +02:00
Helium314
c468732ca2 fix some theming issues 2023-06-29 10:17:23 +02:00
Helium314
1799d618c5 add words to system personal dictionary 2023-06-28 21:18:41 +02:00
Helium314
601b994941 allow removing suggestions 2023-06-28 20:40:35 +02:00
Helium314
cdabf650c6 user-adjustable colors 2023-06-28 18:54:23 +02:00
Helium314
ae69ffe648 fix issues with debug version
and some small things
2023-06-28 15:21:30 +02:00
Helium314
8123c79523 allow loading external gesture typing library 2023-06-28 09:27:07 +02:00
Helium314
ac7ac4f907 add multilingual typing 2023-06-26 23:47:21 +02:00
Helium314
0f585f9f1b Exit shift-symbol view on space 2023-06-26 15:29:40 +02:00
Helium314
7b743db65a Reduce amount of unwanted automatic space insertions 2023-06-26 15:24:34 +02:00
Helium314
cfa27dbb7f fix issues with suggestions 2023-06-26 14:58:15 +02:00
Helium314
d5902a7f2c fix dictionary url 2023-06-26 14:20:49 +02:00
Helium314
ec2c3253a0 allow using all dictionary file versions
removes a hack preventing version < 18, which is really bad for user-added dictionaries
2023-06-26 14:17:53 +02:00
Helium314
985981a82f add some more dictionaries
see readme for source
2023-06-26 13:57:47 +02:00
Helium314
29c252066d allow users to select dictionaries
https://github.com/openboard-team/openboard/pull/569
https://github.com/openboard-team/openboard/pull/578
modified so dictionaries use the correct type instead of always main
2023-06-26 13:25:32 +02:00
Helium314
62e55fd70b
Update README.md 2023-06-25 16:56:08 +02:00
Helium314
d5bc144c89 allow to install debug along release version 2023-06-25 16:47:36 +02:00
Helium314
2c879e8aca update dependencies 2023-06-25 14:51:13 +02:00
Majeur
c3772cd56e
Merge pull request #695 from Pkshields/auto-correction-confidence
Add Auto-correction Confidence settings
2022-12-17 14:01:09 +01:00
Paul Shields
0109899da8 Removing the "off" value from the auto_correction_threshold_values array. Making required code changes to auto correct threshold code based on this change. 2022-12-14 21:48:36 +00:00
Paul Shields
0ae60405d7 Added in an Auto-correction Confidence option to the Text Correction settings view. 2022-08-29 21:59:53 +01:00
Majeur
a42e866010
Merge pull request #664 from openboard-team/fix-german-eszett
[Fix] Added capital eszett and fixed default order in more keys
2022-08-20 10:53:57 +02:00
MajeurAndroid
051c24d187
Added capital eszett and fixed default order in more keys 2022-08-12 09:37:51 +02:00
MajeurAndroid
0caec06f88
Fixed typos in README 2022-08-11 13:20:41 +02:00
MajeurAndroid
58606e6dc5
Added contribution guidelines, TODOs and more in README 2022-08-11 13:04:12 +02:00
Majeur
43dc6e9575
Merge pull request #647 from amcoder36/36.better_armenian_support
Better support for Armenian language
2022-08-06 11:55:01 +02:00
amcoder36
80e4e072d0 fix 2022-08-06 00:16:38 -07:00
amcoder36
6adcd02590 addressing input with ? and ! more keys 2022-08-06 00:15:07 -07:00
pdroidandroid@gmail.com
6c7582aae8 1.4.5 release 2022-08-05 18:22:32 +02:00
amcoder36
d108ee6f92 addressing comments 2022-07-20 23:20:22 -07:00
Yeghishe Piruzyan
e46783fd9d Better support for Armenian language 2022-07-19 22:00:33 -07:00
Majeur
9da38ca9e4
Merge pull request #645 from openboard-team/weblate-translations
Weblate translations
2022-07-16 14:16:07 +02:00
Peter Ericson
66437eaff3
Translated using Weblate (Swedish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-07-12 00:18:13 +02:00
Peter Ericson
f4f0e2b1b8
Translated using Weblate (Swedish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-07-07 17:20:54 +02:00
Joan Josep
43241a7f4c
Translated using Weblate (Catalan)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ca/
2022-07-07 17:20:53 +02:00
Peter Ericson
1bf7552eeb
Translated using Weblate (Swedish)
Currently translated at 96.8% (212 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-06-30 20:16:19 +02:00
Retrial
0f564d254d
Translated using Weblate (Greek)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/el/
2022-06-30 20:16:18 +02:00
Peter Ericson
76afac7b7e
Translated using Weblate (Swedish)
Currently translated at 95.8% (210 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-06-26 20:16:45 +02:00
pjammo
0a3b16ae13
Translated using Weblate (Italian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/it/
2022-06-23 22:14:29 +02:00
Eder ETXEBARRIA
f73bcfcbe5
Translated using Weblate (Basque)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/eu/
2022-06-21 08:16:45 +02:00
haoyubox
c92ebf51ea
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-18 06:14:41 +02:00
Eric
f16b3b713b
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:29:40 +02:00
boxsuny
8c02c977c0
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:29:40 +02:00
boxsuny
5aca764bd1
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:26:37 +02:00
Eric
56658288a3
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:26:37 +02:00
boxsuny
a70e0ffcaa
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:24:39 +02:00
Eric
02716f7934
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:24:38 +02:00
boxsuny
30e1ed8cb5
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:23:25 +02:00
Eric
f118a9d8ed
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:23:25 +02:00
boxsuny
f198055ae5
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-17 05:19:26 +02:00
HKHBN
1faabc9663
Translated using Weblate (Arabic)
Currently translated at 92.6% (203 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ar/
2022-06-16 23:17:59 +02:00
Максим Прядко
731b92b4ba
Translated using Weblate (Ukrainian)
Currently translated at 79.9% (175 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/uk/
2022-06-14 08:17:34 +02:00
Eric
87356d974d
Translated using Weblate (Chinese (Simplified))
Currently translated at 99.5% (218 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-12 15:08:31 +02:00
浩宇张
0cc77ee93b
Translated using Weblate (Chinese (Simplified))
Currently translated at 99.5% (218 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hans/
2022-06-12 15:08:31 +02:00
Peter Ericson
65e95744c4
Translated using Weblate (Swedish)
Currently translated at 94.5% (207 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-06-11 13:13:58 +02:00
Telema
59a8bec177
Translated using Weblate (Russian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ru/
2022-06-03 11:19:01 +02:00
Файзуллин Руслан
79294acd08
Translated using Weblate (Russian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ru/
2022-06-03 11:19:00 +02:00
Файзуллин Руслан
ac2deb797c
Translated using Weblate (Russian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ru/
2022-06-02 11:01:50 +02:00
Fkuallbytch
db26db7caf
Translated using Weblate (Chinese (Traditional, Hong Kong))
Currently translated at 86.7% (190 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/zh_Hant_HK/
2022-05-30 12:13:56 +02:00
dasno
98d21e37f2
Translated using Weblate (Slovak)
Currently translated at 88.5% (194 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sk/
2022-05-27 19:16:55 +02:00
Telema
c951d651ff
Translated using Weblate (Russian)
Currently translated at 88.5% (194 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ru/
2022-05-24 11:14:19 +02:00
Peter Ericson
49470427f5
Translated using Weblate (Swedish)
Currently translated at 93.1% (204 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-05-22 00:17:10 +02:00
Minnal Murali
08d4ef8a83
Translated using Weblate (Malayalam)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ml/
2022-05-22 00:17:10 +02:00
Majeur
6bb24cf52e
Merge pull request #600 from sergiotarxz/master
Adding initial halmak support.
2022-05-16 20:56:10 +02:00
Majeur
c860a0862e
Merge pull request #611 from openboard-team/weblate-translations
Weblate translations
2022-05-16 20:45:28 +02:00
Majeur
b146ce6812
Merge pull request #609 from openboard-team/fix-azerty-split-layout
Added split layout support for azerty keyboards
2022-05-16 20:41:09 +02:00
Peter Ericson
1377f93534
Translated using Weblate (Swedish)
Currently translated at 89.9% (197 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-05-16 20:37:28 +02:00
Majeur
1de40535fa
Merge pull request #610 from openboard-team/weblate-translations
Weblate translations
2022-05-16 20:29:11 +02:00
pdroidandroid@gmail.com
9ca8cf53fe Added split layout support for azerty keyboards 2022-05-16 20:21:01 +02:00
Majeur
5e183633ed
Merge pull request #608 from openboard-team/fix-number-row2
Change key hints to symbols when number row is enabled
2022-05-16 20:11:31 +02:00
pdroidandroid@gmail.com
9285a8e2a2 Replaced number more keys with symbols when number row is enabled for qwerty and azerty 2022-05-16 15:46:23 +02:00
pdroidandroid@gmail.com
9a739496ef Added more keys symbols for 'bépo' layout 2022-05-16 15:41:24 +02:00
pdroidandroid@gmail.com
6ce3873656 Replaced number more keys with symbols when number row is enabled (qwerty, qwertz, azerty, bepo) 2022-05-16 15:38:57 +02:00
Peter Ericson
b50464902e
Translated using Weblate (Swedish)
Currently translated at 89.4% (196 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-05-13 12:18:11 +02:00
Peter Ericson
ded101dd3c
Translated using Weblate (Swedish)
Currently translated at 89.4% (196 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-05-12 02:19:11 +02:00
Mathieu B
f5f777eb6c
Translated using Weblate (French)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-05-12 02:19:11 +02:00
Jeffree Romero
500a6bf109
Translated using Weblate (Spanish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es/
2022-05-12 02:19:11 +02:00
sergiotarxz
1805899351 Adding initial halmak support. 2022-05-09 15:32:11 +02:00
אליעזר שלמה דיין
0f066d8566
Translated using Weblate (Hebrew)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/he/
2022-05-07 00:14:49 +02:00
Peter Ericson
7e27af65e5
Translated using Weblate (Swedish)
Currently translated at 89.4% (196 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/sv/
2022-05-03 11:14:18 +02:00
Michal L
a960a9bbf1
Translated using Weblate (Polish)
Currently translated at 98.1% (215 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pl/
2022-04-17 20:08:10 +02:00
Milo Ivir
3ddcc69c5c
Translated using Weblate (Croatian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/hr/
2022-04-11 14:11:42 +02:00
Jeffree Romero
e2fedb2262
Translated using Weblate (Spanish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es/
2022-04-11 14:11:41 +02:00
Jeffree Romero
830757f69f
Translated using Weblate (Spanish (American))
Currently translated at 98.6% (216 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es_US/
2022-04-11 14:11:41 +02:00
Milo Ivir
f1bfd577ed
Translated using Weblate (Croatian)
Currently translated at 87.2% (191 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/hr/
2022-04-09 14:11:25 +02:00
ButterflyOfFire
dd8950f75d
Translated using Weblate (Arabic)
Currently translated at 89.4% (196 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ar/
2022-04-06 22:08:42 +02:00
pdroidandroid@gmail.com
85b6aa6dfd Updated README.md 2022-04-04 17:31:52 +02:00
Majeur
a25b8b9457
Merge pull request #583 from openboard-team/weblate-translations
Weblate translations
2022-04-04 16:35:27 +02:00
Majeur
33fa118def
Translated using Weblate (French)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-04-04 16:26:53 +02:00
ERYpTION
9cf410c5a5
Translated using Weblate (Danish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/da/
2022-04-03 10:10:39 +02:00
ButterflyOfFire
4575510bb2
Translated using Weblate (French)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-03-25 13:10:50 +01:00
ButterflyOfFire
1a912278c4
Translated using Weblate (Arabic)
Currently translated at 79.4% (174 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/ar/
2022-03-25 13:10:50 +01:00
Ray West
0debc38ac5
Translated using Weblate (Afrikaans)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/af/
2022-03-25 13:10:50 +01:00
Flavio F. M
d162cf6669
Translated using Weblate (Portuguese (Portugal))
Currently translated at 95.4% (209 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt_PT/
2022-03-23 21:53:23 +01:00
Oğuz Ersen
85b6093fe8
Translated using Weblate (Turkish)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/tr/
2022-03-23 17:46:23 +01:00
Michal L
c07a33096b
Translated using Weblate (Polish)
Currently translated at 96.8% (212 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pl/
2022-03-23 17:46:22 +01:00
zmni
9b8020b518
Translated using Weblate (Indonesian)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/id/
2022-03-23 17:46:22 +01:00
trev0r-STA
999cbf6403
Translated using Weblate (French)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-03-23 17:46:21 +01:00
Md. Rifat Hasan Jihan
7f0e9a4a19
Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/en_GB/
2022-03-23 17:46:21 +01:00
Flavio F. M
8d9a3d75f3
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt_BR/
2022-03-23 17:43:47 +01:00
Md. Rifat Hasan Jihan
bf2544cd6d
Translated using Weblate (Bengali)
Currently translated at 100.0% (219 of 219 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-22 11:43:59 +01:00
Md. Rifat Hasan Jihan
ccb20a2c82
Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/en_GB/
2022-03-22 06:31:35 +01:00
Md. Rifat Hasan Jihan
c2e5d4281e
Translated using Weblate (Bengali)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-22 06:31:35 +01:00
Md. Rifat Hasan Jihan
11a3240399
Translated using Weblate (Bengali)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-22 06:31:35 +01:00
Md. Rifat Hasan Jihan
a13a1ed34e
Translated using Weblate (Bengali)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-22 06:31:35 +01:00
Md. Rifat Hasan Jihan
e5c35f42af
Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/en_GB/
2022-03-22 06:31:35 +01:00
Md. Rifat Hasan Jihan
28be430096
Translated using Weblate (Bengali)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-22 06:31:35 +01:00
Majeur
b96732ea22
Merge pull request #564 from Helium314/patch-2
Add phantom space after characters usually followed by space
2022-03-21 15:16:34 +01:00
Helium
8f1d2ef489 update strings and clarify names 2022-03-21 15:09:39 +01:00
Majeur
c71aceaf01
Merge pull request #573 from Helium314/fix_voice_key
Hide voice input key and disable setting if no voice input available
2022-03-21 11:18:23 +01:00
Majeur
08247bd887
Merge pull request #570 from Helium314/patch-1
Invert space bar swipe direction for RTL languages
2022-03-21 11:06:52 +01:00
Helium
9ccea3940c move hasShortcutIme check to inputAttributes 2022-03-21 10:27:04 +01:00
Helium
7fdb5954d0 hide voice input key and disable setting if not available 2022-03-21 08:57:14 +01:00
Helium314
6c502a1f2e
Invert space bar swipe direction for RTL languages 2022-03-19 11:42:57 +01:00
Helium
2197ffd4a5 add comments and setting for auto-inserting more spaces 2022-03-17 07:11:26 +01:00
Majeur
e9393dfab0
Merge pull request #562 from Helium314/patch-1
Show suggestions everywhere except in password fields
2022-03-15 18:22:57 +01:00
Majeur
077a8d944e
Merge pull request #566 from Helium314/patch-4
Reduce sensitivty of space / delete gestures
2022-03-15 15:53:36 +01:00
Helium314
8938e2d3ab
reduce sensitivty of space / delete gestures 2022-03-12 18:13:57 +01:00
Helium314
232c9892ae
add phantom space after characters usually followed by space 2022-03-11 23:59:25 +01:00
Helium314
66967eb2a1
simplify setting mShouldShowSuggestions, heed flagNoSuggestions 2022-03-10 18:51:08 +01:00
Majeur
25d5510f18
Merge pull request #561 from openboard-team/weblate-translations
Weblate translations
2022-03-09 12:32:56 +01:00
Flavio F. M
6dc9f8caa4
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt_BR/
2022-03-09 09:45:04 +01:00
Michal L
1c329b1044
Translated using Weblate (Polish)
Currently translated at 97.2% (211 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pl/
2022-03-09 09:45:04 +01:00
Oğuz Ersen
13eb877586
Translated using Weblate (Turkish)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/tr/
2022-03-09 09:45:04 +01:00
Md. Rifat Hasan Jihan
c927304235
Translated using Weblate (Bengali)
Currently translated at 94.0% (204 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-09 09:45:04 +01:00
Helium314
a5c45318a7
Show suggestions everywhere except in password fields 2022-03-09 09:42:24 +01:00
Majeur
cd267b5089
Merge pull request #559 from openboard-team/fix-number-row
Extended number row support for every keyboards
2022-03-07 15:44:57 +01:00
pdroidandroid@gmail.com
eaa24f0b24 Refactored number row definition into one common file 2022-03-07 12:16:26 +01:00
pdroidandroid@gmail.com
bc49c488a6 Extended number row support to every keyboards for tablets 2022-03-07 12:00:49 +01:00
Majeur
56dd5bb8d9
Merge pull request #547 from qw123wh/qw123wh-tablet-number-row
Qw123wh tablet number row
2022-03-07 11:22:36 +01:00
Majeur
39ea2c2a9c
Merge pull request #553 from openboard-team/weblate-translations
Weblate translations
2022-03-01 13:45:45 +01:00
Flavio F. M
6b73356e44
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt_BR/
2022-03-01 13:41:29 +01:00
zmni
5c7238083b
Translated using Weblate (Indonesian)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/id/
2022-03-01 13:41:29 +01:00
trev0r-STA
fcb3dc5137
Translated using Weblate (French)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-03-01 13:41:29 +01:00
Jeffree Romero
df3f3bd7f3
Translated using Weblate (Spanish)
Currently translated at 100.0% (217 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es/
2022-03-01 13:41:29 +01:00
Siddhartha Sarathi Basu
c5f696304e
Translated using Weblate (Bengali)
Currently translated at 90.3% (196 of 217 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-03-01 13:41:29 +01:00
Majeur
11a5df2be0
Merge pull request #552 from openboard-team/weblate-translations
Weblate translations
2022-03-01 13:41:14 +01:00
Majeur
9adc4f6240
Merge pull request #545 from openboard-team/feature-one-handed-mode
One-handed mode feature
2022-03-01 13:23:45 +01:00
pdroidandroid@gmail.com
9ec33153e2 Merge remote-tracking branch 'origin/weblate-translations' into weblate-translations 2022-03-01 13:03:26 +01:00
pdroidandroid@gmail.com
02b0138313 Fixed emoji key appearance on tablets 2022-03-01 12:56:55 +01:00
pdroidandroid@gmail.com
9cb005f9bc Fixed clipboard key on tablets 2022-03-01 12:39:12 +01:00
pdroidandroid@gmail.com
ece6a8a3e1 Fixed one-handed mode buttons appearance 2022-03-01 12:34:03 +01:00
pdroidandroid@gmail.com
53a904af1e Added better one-handed width for large screen devices 2022-03-01 12:13:03 +01:00
qw123wh
274bcf3d22 add the row of numbers on tablets and also in other layouts. Fix #498 #406 #328 #244 2022-02-28 15:14:02 +01:00
pdroidandroid@gmail.com
2030d82854 Reverted ellipsis hint on comma key 2022-02-28 13:18:10 +01:00
pdroidandroid@gmail.com
500c8ebd70 Fixed AOSP bug in additional keys parsing 2022-02-28 13:17:22 +01:00
qw123wh
6baf8a871f
Show number row on tablet
Show number row on tablet
2022-02-22 14:36:22 +01:00
qw123wh
2150e7b8ce
Show number row on tablet
Show number row on tablet
2022-02-22 14:34:02 +01:00
Majeur
88c81245da
Merge pull request #546 from RHJihan/master
Added Bengali spacing and punctuations
2022-02-21 20:12:44 +01:00
Flavio F. M
8681962ef2
Added translation using Weblate (Portuguese (Brazil)) 2022-02-21 14:18:59 +01:00
pdroidandroid@gmail.com
1b1dc96a3d Made keyboard layout aware of one-handed mode (e.g. hides one-handed key when one-handed mode is enabled) 2022-02-21 13:19:47 +01:00
Md. Rifat Hasan Jihan
d73636fb52
Added Bengali spacing and punctuations
Enables the ability to add an auto-space after the Bengali Dari (DEVANAGARI DANDA) & Double Dari (DEVANAGARI DOUBLE DANDA). Added Devanagari Danda and Double Danda as word and sentence separators.
2022-02-21 15:29:31 +06:00
pdroidandroid@gmail.com
d27659de4f Fixed CI not signing built apk 2022-02-20 19:14:50 +01:00
GitNaufal
ff56261b0d
Translated using Weblate (Indonesian)
Currently translated at 100.0% (216 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/id/
2022-02-20 16:55:23 +01:00
zmni
062936e5a4
Translated using Weblate (Indonesian)
Currently translated at 100.0% (216 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/id/
2022-02-20 16:55:22 +01:00
trev0r-STA
115f95d3ac
Translated using Weblate (French)
Currently translated at 100.0% (216 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-20 16:55:22 +01:00
pdroidandroid@gmail.com
be7521c39d Moved default clipboard history retention time to common config 2022-02-20 16:19:31 +01:00
pdroidandroid@gmail.com
a88b661ec7 Added ellipsis hint to comma key 2022-02-20 16:18:19 +01:00
pdroidandroid@gmail.com
1359386d72 Implemented one-handed mode feature 2022-02-20 16:14:12 +01:00
pdroidandroid@gmail.com
56f363063d Patched uncentered emoji key labels position fix 2022-02-19 21:50:26 +01:00
pdroidandroid@gmail.com
9cfda5805a Fixed uncentered emoji key labels position 2022-02-19 21:17:50 +01:00
Majeur
fb63e4b93d
Merge pull request #408 from RHJihan/master
Added back Bangla (Bangladesh) (Akkhor) layout
2022-02-19 14:18:56 +01:00
Majeur
b492560468
Merge pull request #542 from openboard-team/weblate-translations
Weblate translations
2022-02-18 22:10:50 +01:00
Majeur
fa0e475175
Translated using Weblate (French)
Currently translated at 99.5% (215 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 21:52:02 +01:00
Majeur
6c482c8335
Translated using Weblate (French)
Currently translated at 99.5% (215 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 21:49:06 +01:00
Majeur
4f526d5ddb
Translated using Weblate (French)
Currently translated at 99.0% (214 of 216 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 21:43:24 +01:00
pdroidandroid@gmail.com
937944fa7b Fixed wrong xliff attribute in minutes string 2022-02-18 21:39:39 +01:00
Majeur
41793c1069
Merge pull request #540 from openboard-team/clipboard-history-settings
Added support for disabling clipboard history and clip retention time
2022-02-18 21:29:04 +01:00
pdroidandroid@gmail.com
6eb8134b6c Prevent saving of recent emojis when in incognito mode (fixes #521) 2022-02-18 21:28:00 +01:00
pdroidandroid@gmail.com
ad1672ad5c Added support for disabling clipboard history and clip retention time 2022-02-18 21:08:29 +01:00
pdroidandroid@gmail.com
1bfb6e2273 Fixed long press timeout settings 2022-02-18 21:00:40 +01:00
Majeur
e572000f61
Merge pull request #539 from openboard-team/weblate-translations
Weblate translations
2022-02-18 18:51:13 +01:00
Jeffree Romero
b83b811eaa
Translated using Weblate (Spanish)
Currently translated at 99.5% (209 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es/
2022-02-18 18:31:24 +01:00
Allan Nordhøy
135f5a8032
Translated using Weblate (English)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/en/
2022-02-18 18:31:24 +01:00
H Tamás
769601df9e
Translated using Weblate (Hungarian)
Currently translated at 86.1% (181 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/hu/
2022-02-18 18:31:24 +01:00
nzgha
edabfc94f1
Translated using Weblate (Spanish)
Currently translated at 86.1% (181 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/es/
2022-02-18 18:31:24 +01:00
Allan Nordhøy
ed4dc76c7f
Translated using Weblate (Norwegian Bokmål)
Currently translated at 98.0% (206 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/nb_NO/
2022-02-18 18:31:24 +01:00
Oymate
d8aa6e3b32
Translated using Weblate (Bengali)
Currently translated at 91.4% (192 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/bn/
2022-02-18 18:31:24 +01:00
Sérgio Marques
a9a12be6c0
Translated using Weblate (Portuguese)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt/
2022-02-18 18:31:24 +01:00
Sérgio Marques
73a8e30df2
Translated using Weblate (Portuguese (Portugal))
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt_PT/
2022-02-18 18:31:24 +01:00
trev0r-STA
9711a3f663
Translated using Weblate (French)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 18:31:24 +01:00
Majeur
45e4483aee
Translated using Weblate (French)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 18:31:24 +01:00
trev0r-STA
7f88f0ca6e
Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/en_GB/
2022-02-18 18:31:24 +01:00
Majeur
86ee0f3a3c
Translated using Weblate (French)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 18:31:24 +01:00
trev0r-STA
56cb09d6f1
Translated using Weblate (French)
Currently translated at 100.0% (210 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/fr/
2022-02-18 18:31:24 +01:00
Sérgio Marques
ebfe09b28c
Translated using Weblate (Portuguese)
Currently translated at 99.0% (208 of 210 strings)

Translation: OpenBoard/OpenBoard
Translate-URL: https://hosted.weblate.org/projects/openboard/openboard/pt/
2022-02-18 18:31:24 +01:00
jnnkB
6d0a77f204
Update spellchecker locale while typing and get locale from keyboard if available (#526) 2022-02-06 20:16:59 +01:00
pdroidandroid@gmail.com
b868e15003 Update key_styles_currency euro lists 2022-02-06 17:54:00 +01:00
Majeur
0493a874c6
Merge pull request #509 from openboard-team/settings-update
Settings update
2022-02-05 12:01:59 +01:00
Md. Rifat Hasan Jihan
89a8041ce7
Merge branch 'openboard-team:master' into master 2022-01-31 15:43:50 +06:00
Daniele Laudani
bb60d00423
Merge pull request #515 from Altonss/master
Update the icon in the fastlane metadata (for F-Droid)
2022-01-30 20:24:26 +01:00
Altonss
197025226f
Add new icon file 2022-01-30 14:08:47 +01:00
Altonss
67f1bac991
Delete old icon 2022-01-30 14:08:08 +01:00
pdroidandroid@gmail.com
506ff44539 Made Settings title translatable 2022-01-29 18:13:20 +01:00
pdroidandroid@gmail.com
6870f76150 Fixed Settings activity showing up in recent tasks menu 2022-01-29 17:58:51 +01:00
Majeur
0f38b37a41
Added community translation Weblate project 2022-01-29 17:38:00 +01:00
pdroidandroid@gmail.com
5b332fca2e Removed unused strings, added string res descriptions and corrected some options labels 2022-01-29 17:09:51 +01:00
pdroidandroid@gmail.com
5a7e5cf506 Added dynamic action bar titles in settings 2022-01-29 16:00:21 +01:00
pdroidandroid@gmail.com
b37a2eca3b Fixed 'new custom input type' icon's color for light themes 2022-01-29 15:59:39 +01:00
pdroidandroid@gmail.com
551beb69a3 Implemented new theme settings 2022-01-29 15:58:04 +01:00
pdroidandroid@gmail.com
599f9cfdf5 Rename .java to .kt 2022-01-29 15:58:03 +01:00
pdroidandroid@gmail.com
35f53b0649 Added sub-categories and moved some settings to more appropriate categories 2022-01-29 15:56:03 +01:00
pdroidandroid@gmail.com
38789cc87f Added settings categories icons 2022-01-29 15:50:36 +01:00
pdroidandroid@gmail.com
015390c13d Updated activity themes 2022-01-29 15:48:40 +01:00
pdroidandroid@gmail.com
27cd92c7fd Added CI 2022-01-28 18:31:39 +01:00
Majeur
e590fa78cd
Merge pull request #504 from MajeurAndroid/emoji-tools
Added emoji tables generation tool
2022-01-28 09:33:40 +01:00
Majeur
8047e7b60a
Fixed make-emoji-keys README.md 2022-01-26 21:07:34 +01:00
pdroidandroid@gmail.com
8307006336 Added README.md to emoji module 2022-01-26 20:59:04 +01:00
pdroidandroid@gmail.com
c792651b65 Fixed typo in 'resources' directory name 2022-01-26 20:42:57 +01:00
pdroidandroid@gmail.com
9f66d61454 Generated updated emoji-categories.xml (Adds support for emoji 14.0) 2022-01-26 20:33:43 +01:00
pdroidandroid@gmail.com
401fb022e2 Added tools:make-emoji-tool module 2022-01-26 20:31:30 +01:00
Majeur
3a266b1e71
Merge pull request #502 from MajeurAndroid/text-tools
Added KeyboardTextsTable generation tool
2022-01-25 13:36:25 +01:00
pdroidandroid@gmail.com
400b753d76 Updated README.md 2022-01-23 23:43:09 +01:00
pdroidandroid@gmail.com
8e895dc866 Generated updated KeyboardTextsTable.java 2022-01-23 22:52:37 +01:00
pdroidandroid@gmail.com
cae0b9e4bc Added latest edits from Openboard (462f9975, 99e9b934, ec55fc09, c14c3cbc and 5d384100) 2022-01-23 22:51:09 +01:00
pdroidandroid@gmail.com
11177405af Added latest edits from LineageOS 2022-01-23 21:52:03 +01:00
pdroidandroid@gmail.com
a5bb606d21 Added tools:make-keyboard-text module 2022-01-23 21:14:56 +01:00
dslul
7af4ff5a26 fastlane: add 1.4.4b description 2022-01-23 11:53:09 +01:00
dslul
2916e91b6d Merge remote-tracking branch 'origin/master' 2022-01-23 11:41:38 +01:00
dslul
945b5b7f6c fix crash on older devices 2022-01-23 11:41:23 +01:00
Daniele Laudani
df0817c797
Merge pull request #453 from blennster/fix-build
Fixed build and updated readme
2022-01-22 16:28:38 +01:00
Daniele Laudani
d4a611b8de
Merge pull request #451 from jnnkB/revert_updated_german_dictionary
Revert "Updated German dictionary"
2022-01-22 16:25:59 +01:00
Majeur
f73f2506c2
Merge pull request #492 from MajeurAndroid/fix-clipboard-duplicates
Fixed duplicates in history keyboard #487
2022-01-19 16:46:24 +01:00
pdroidandroid@gmail.com
42d79531c1 Fixed duplicates in history keyboard #487 2022-01-19 16:44:45 +01:00
Daniele Laudani
9bb92981f2
Merge pull request #460 from prabhy619/issue455
#455 Disabling long pressing space for keyboard change
2022-01-16 20:37:55 +01:00
dslul
3dd1548c9f prepare for 1.4.4 release 2022-01-16 19:00:13 +01:00
Daniele Laudani
0a4090a2d3
Merge pull request #483 from MajeurAndroid/feature-clipboard
Implemented clipboard history feature
2022-01-16 10:10:41 +01:00
pdroidandroid@gmail.com
1cbbf4983c Implemented clipboard history feature 2022-01-13 13:45:48 +01:00
Md. Rifat Hasan Jihan
9342748335
Merge branch 'dslul:master' into master 2021-12-08 20:29:10 +06:00
Daniele Laudani
ac036f277e
Merge pull request #466 from tkterris/system-accent-alpha
Fix rendering of icons with system accent tint
2021-11-22 18:08:34 +01:00
Trevor Terris
0eae23062d Merge remote-tracking branch 'upstream/master' into system-accent-alpha 2021-11-22 12:02:46 -05:00
Daniele Laudani
5800d44e6a
Merge pull request #465 from tkterris/paste-button
Add clipboard button for copy/pasting
2021-11-22 18:00:26 +01:00
Trevor Terris
0886ec0969 Remove duplicate code
Extract keyboard icon styles to a "parent" file, and extend it for the system accent version (a single icon)
2021-11-22 11:32:21 -05:00
Trevor Terris
0103f959d3 Show incognito icon on password input
Since the suggestion strip can now show during password input if the clipboard button is on, show the incognito icon when this occurs.
2021-11-22 08:20:12 -05:00
Trevor Terris
e0f95aa5c9 Renamed variables from "paste" to "clipboard" 2021-11-22 08:12:17 -05:00
Trevor Terris
ff7406fb98 Show suggestion strip on password input when paste enabled 2021-11-22 07:53:25 -05:00
Trevor Terris
5861a40331 Fix rendering of icons with system accent tint
The tint was being applied to the "normal" icon, which has an alpha less than 1, causing the tint to appear incorrect. Changed to the "activated" icon, which has an alpha of 1 for most of the image, so tints are now consistent.
2021-11-22 07:49:02 -05:00
Trevor Terris
31b4a28471 Add copy functionality
Current functionality is short-press to copy, long-press to paste.
2021-11-21 22:04:09 -05:00
Trevor Terris
de924ce3a5 Add paste icon 2021-11-21 17:17:13 -05:00
Trevor Terris
972a77ef3a Add preference settings for paste button 2021-11-21 15:41:44 -05:00
Trevor Terris
69ef3c9991 Add logic for pasting from clipboard 2021-11-21 15:28:22 -05:00
Trevor Terris
6c500e731b Add icon to layout for paste
Still TODOs for implementing the feature, creating a toggle to enable it, and icons for the button
2021-11-21 14:56:25 -05:00
Prabhy
476602b688 #455 Disabling long pressing space for keyboard change 2021-10-24 17:17:48 +05:30
Emil Blennow
3bbc04b4a1 Fixed build on arch 2021-10-16 19:35:02 +02:00
jnnkB
503498ee89 Revert "Updated German dictionary"
This reverts commit 52c0e90902.
2021-10-13 11:38:14 +02:00
Daniele Laudani
b5934f3841
Merge pull request #433 from Damjan94/workman
Created a Workman keyboard layout
2021-09-21 08:42:31 +02:00
Damjan Djordjevic
46e964d98f Created a Workman keyboard layout 2021-09-16 00:41:34 +02:00
Daniele Laudani
7682ba0b5a
Merge pull request #432 from MajeurAndroid/feature-emoji-list
Implemented continuous scrolling for emoji keyboards
2021-09-12 17:57:22 +02:00
pdroidandroid@gmail.com
02e2051b33 Implemented continuous scrolling for emoji keyboards 2021-09-12 17:30:26 +02:00
Daniele Laudani
61add88e31
Merge pull request #423 from kuesji/patch-1
adding turkish lira sign
2021-09-07 20:00:40 +02:00
kuesji koesnu
eb238d2d52
adding turkish lira sign 2021-08-19 22:27:11 +03:00
Daniele Laudani
b775e0d878
Merge pull request #420 from tkterris/persistence-fix
Fix dictionary persistence with Direct Boot
2021-08-15 19:08:08 +02:00
Trevor Terris
1fed180950 Fix dictionary persistence with Direct Boot
Trigger app restart when credential-encrypted storage is unlocked, to refresh dictionary from credential encrypted storage. This fixes an issue where learned dictionary and frequencies are reset after device restart.
2021-08-12 13:59:57 -04:00
RHJihan
9114928151 Added Bangla (Bangladesh) (Akkhor) layout 2021-07-20 14:32:52 +06:00
Daniele Laudani
cf45b5b907
Merge pull request #404 from RHJihan/master
Several updates for Bengali (Bangladesh)
2021-07-16 08:08:18 +02:00
Trevor Terris
8ee8f2edac Fix target and compile SDK versions
With the latest Android 12 beta (beta 3), the compile and target SDK versions are changed from "android-S" and "S" to 31. Update build.gradle to reflect these changes.
2021-07-16 08:07:16 +02:00
RHJihan
5d38410095 Several updates for Bengali (Bangladesh) 2021-07-13 19:21:47 +06:00
Md. Rifat Hasan Jihan
012649646a
Merge branch 'dslul:master' into master 2021-07-12 14:22:44 +06:00
RHJihan
2d87d4875b fixed alignment on second row - Bengali (Bangladesh) 2021-07-11 19:51:30 +02:00
RHJihan
106c579caa Replaced previous Bengali (Bangladesh) keyboard with a popular layout 2021-07-11 19:51:30 +02:00
RHJihan
bde5c3e595 fixed alignment on second row - Bengali (Bangladesh) 2021-07-11 23:15:41 +06:00
RHJihan
30736af3ac Replaced previous Bengali (Bangladesh) keyboard with a popular layout 2021-07-08 17:46:49 +06:00
Trevor Terris
bb0628a8e9 Add system theming to Material Light themes 2021-06-27 07:56:54 +02:00
Trevor Terris
92839eff74 Remove extraneous space 2021-06-27 07:56:54 +02:00
Trevor Terris
3a7b413df2 Tweak icon color so it matches
The icon color uses masking, which results in it being slightly darked by the icons being tinted. Set the icon accent to 300 and most others to 500, so they should balance out and match.
2021-06-27 07:56:54 +02:00
Trevor Terris
08fcc565bc Add theming for all emoji buttons and shift key 2021-06-27 07:56:54 +02:00
Trevor Terris
81a55e9fb9 Initial commit for Android S theming
Add Android S support, and start changing some colors to use system accent.
2021-06-27 07:56:54 +02:00
Trevor Terris
3d3e83f9db Make amoled enter key use system accent color 2021-06-27 07:56:35 +02:00
dslul
f5643e7679 Merge remote-tracking branch 'origin/master' 2021-06-14 10:02:58 +02:00
dslul
f976e1c31c add turkish layout 2021-06-14 10:02:37 +02:00
dslul
a77ea6ec8b update gradle 2021-06-14 10:01:57 +02:00
Reibl Janos Daniel
ffe8d7a0fe Add Hungarian dictionary 2021-06-13 16:52:40 +02:00
Trevor Terris
c1a96f9aea Disable autocorrect during URL and email input
Disables autocorrect when the user is typing in a URL or email, since many websites and emails are deliberate misspellings of dictionary words. For example, typing "openboard." (for a hypothetical website "openboard.com"), the keyboard should not "correct" this to "open board.".
2021-06-12 08:11:12 +02:00
mahmoudk1000
ef7c4ba318 Added ß to German Layout 2021-06-11 19:25:08 +02:00
rustzz
42f09c0438 Added russian translation to the desired file 2021-05-30 10:30:57 +02:00
Daniele Laudani
5588c1da91 Revert "Fix Russian translation"
This reverts commit 48678d6c10.
2021-05-29 15:09:32 +02:00
dslul
6796bd88bd fix numpad not showing on tablets 2021-05-29 14:45:54 +02:00
dslul
a5bbb34366 update matrix qr 2021-05-17 08:19:30 +02:00
dslul
0db91be097 Merge branch 'master' of github.com:dslul/openboard 2021-05-15 09:02:29 +02:00
dslul
fb7a0c388f update matrix link
fixes #360
2021-05-15 09:02:18 +02:00
rustzz
48678d6c10 Fix Russian translation 2021-05-15 08:55:19 +02:00
Lee0701
e3ad499161 Fix non hangul characters being inserted at wrong position 2021-05-15 06:21:24 +09:00
Lee0701
1a7cec304b Fix row heights for layout without number keys 2021-05-15 06:16:40 +09:00
Lee0701
a5f773619b Use software string event for HangulCombiner composing word processing to fix auto spacing problem 2021-05-14 12:32:02 +09:00
Lee0701
1616c89bd4 Rename NormalizedDictionary to KoreanDictionary 2021-05-14 11:21:01 +09:00
Lee0701
f06799f5e2 Implement normalizer dictionary for Koren dictionaries 2021-05-14 11:07:54 +09:00
Lee0701
ca825faef4 Add number row support to dubeolsik standard keyboard 2021-05-14 08:14:05 +09:00
Lee0701
4565244322 Fix row heights again 2021-05-14 08:14:04 +09:00
Lee0701
d725fe65f0 Add touch position correction support flag 2021-05-14 08:14:04 +09:00
Lee0701
02532855bf Fix row heights 2021-05-14 08:14:04 +09:00
Lee0701
83fca9533c Add Korean dictionary 2021-05-14 08:14:04 +09:00
Lee0701
818f9e0ea1 Remove old java file 2021-05-14 08:14:04 +09:00
Lee0701
0fa701a134 Fix shift press breaking hangul composition 2021-05-14 08:14:04 +09:00
Lee0701
6e8c17c7be Fix dubeolsik automata 2021-05-14 08:14:03 +09:00
Lee0701
f4f47786eb Add combining event flag 2021-05-14 08:13:59 +09:00
Lee0701
af5478ba1c Add localised texts for korean 2021-05-14 08:11:59 +09:00
Lee0701
e2e6b086c2 Fix sebeolsik layout key heights 2021-05-14 08:11:59 +09:00
Lee0701
26d812a8f9 Add tablet layouts 2021-05-14 08:11:59 +09:00
Lee0701
53f8234798 Add additional initial combination conditions 2021-05-14 08:11:59 +09:00
Lee0701
0647a3d516 Add hardware keyboard layouts 2021-05-14 08:11:58 +09:00
Lee0701
c7f6825026 Add sebeolsik final layout 2021-05-14 08:11:58 +09:00
Lee0701
af6db10b77 Add dubeolsik standard shift layout 2021-05-14 08:11:58 +09:00
Lee0701
603a5f2000 Add functional dubeolsik standard layout 2021-05-14 08:11:58 +09:00
Lee0701
41c8563116 Add basic jamo combination 2021-05-14 08:11:58 +09:00
Lee0701
eac79e9a7d Add hangul composer and sebeolsik 390 layout 2021-05-14 08:11:58 +09:00
so9q
13c548c79f Added Swedish and Danish dictionaries 2021-05-09 14:28:15 +02:00
Trevor Terris
8c79b31f6a Update migration to use moveSharedPreferencesFrom 2021-05-06 17:35:27 +02:00
Trevor Terris
ddbed48ce9 Use onFinishInput to flush dictionary state 2021-05-06 08:55:44 +02:00
Trevor Terris
206fc18ec3 Add persistence for user history dictionary
User history dictionary was not flushing to disk on close, added that logic so (unless there's a crash) the user history should be persisted.
2021-05-06 08:55:44 +02:00
Trevor Terris
dd7b56fbb3 Copy settings from credential to device encrypted storage
Copy settings from credential to device encrypted storage if device encrypted is empty. This should only happen at most once, if the user is updating the application to the version with device encrypted storage.
2021-05-06 08:55:22 +02:00
Trevor Terris
3d8361cc89 Reduce visibility of Util method 2021-05-04 18:19:38 +02:00
Trevor Terris
928519392f Update classes to use device encrypted context for preferences 2021-05-04 18:19:38 +02:00
Trevor Terris
0269b28c5a Add permissions and util class for direct boot 2021-05-04 18:19:38 +02:00
Daniele Laudani
8be0d75c1b
Update README.md 2021-05-03 14:43:13 +02:00
dslul
bfa6a647ea matrix community url 2021-05-03 14:42:13 +02:00
Daniele Laudani
7ec5ec0923
Update README.md 2021-05-03 14:18:54 +02:00
dslul
9f66e0eac9 add original icon by Marco TLS 2021-05-03 13:52:57 +02:00
Daniele Laudani
20390efc93
add credits for the icon 2021-05-03 13:51:32 +02:00
dslul
6d6ead1712 Merge branch 'master' of github.com:dslul/openboard 2021-05-03 11:11:53 +02:00
dslul
a263fc3f3b update metadata for release 1.4.3 2021-05-03 11:11:40 +02:00
Daniele Laudani
064d8de974 Update issue templates 2021-05-03 10:14:54 +02:00
Daniele Laudani
8040ecb308 Update issue templates 2021-05-03 10:06:16 +02:00
dslul
d50265f04d release 1.4.3 2021-05-03 09:12:23 +02:00
Trevor Terris
a77b6755d9 Extend touchable region to nav bar
Extend the touchable region to include the navigation bar, so that taps on the nav bar aren't sent to the underlying application. Credit to https://github.com/rkkr/simple-keyboard
2021-05-03 08:11:43 +02:00
Trevor Terris
8d46e0ed25 Add bigrams to English wordlist for next word suggestion
Add bigrams to all English words, essentially "pre-loading" the word suggestions without needing to learn from user input. Words derived from the American National Corpus, https://www.anc.org/data/oanc/ .
2021-05-01 15:06:32 +02:00
Trevor Terris
34c8a4a5b6 Tweak colors for dark and Amoled
With these settings, the spacebar and suggestion strip have the same dark grey color, and the same color when pressed.
2021-05-01 14:54:48 +02:00
Trevor Terris
c7c124c4e8 Make dark characters higher contrast 2021-05-01 14:54:48 +02:00
Daniele Laudani
7049444ba4
Merge pull request #340 from tkterris/toggle-hints
Add toggle to disable long-press hints
2021-05-01 14:50:50 +02:00
Trevor Terris
24a945e4fb Add toggle to disable long-press hints 2021-04-29 14:58:59 -04:00
mic
d997325daf Fix Russian translation 2021-04-20 10:07:57 +02:00
Cássio
57cac536bb fix typo 2021-03-18 16:27:06 +01:00
Cássio
608ebc7d87 adds Colemak Mod-DH keyboard layout 2021-03-18 16:27:06 +01:00
Hagen Echzell
20e78ef447 Make German (Germany) split layout 2021-03-18 12:03:27 +01:00
Hagen Echzell
c14c3cbc7d Add German Keyboard with Umlauts
This commit defines a new keyboard German (Germany) (country code de_DE) that includes the most important Umlauts äöü. The default alternate characters on longpress are set to the numbers, for u and o, since ü and ö have their own keys. ß is the new default alternate char for s.
The old German (country code de) keyboard based on a QWERTZ layout without umlauts remains in place.
2021-03-18 12:03:27 +01:00
Martin Sand
52c0e90902 Updated German dictionary
Signed-off-by: Martin Sand <martin.sand.dev@gmail.com>
2021-03-18 11:40:31 +01:00
unknown
ec55fc09aa fix key hint for letter s in German layout 2021-01-24 17:54:39 +01:00
pdroidandroid@gmail.com
1d6daab585 Fixed color for suggestion strip background 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
d45b791b98 Fixed action bar keys spacing in emoji palettes 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
c982ca0c62 Fixed wrong background for languages key 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
d3b482c390 Moved emoji key to the left of space bar 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
a5d7f3d318 Fixed wrong emoji icon color for lxx_light theme 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
e8a3d68ea1 Made suggestions strip share keyboard's background 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
ddc00bdb9f Added missing new highlight colors 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
fd47fb6a6b Fixed more keys popup selected key background for lxx_dark theme 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
f3526955fa Made amoled theme more black 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
28b448a6f0 Fixed functional keys background references 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
9bc4359e34 Added correctly themed popup bgs for border themes 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
5f9077cf47 Fixed border themes' keys color definition 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
1bf69eb7e7 Simplified A LOT lxx based themes styles definition (border light/dark and amoled) 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
062b7c4761 Added theme-dependant action keys color 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
4c8ffa6eaa Removed redundant style inheritances for auto themes 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
99e9b934fc Fixed inverted emoji key icon 2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
f9eff4b7b4 Updated kbd icons to correct theme (also added XXXHDPI for recent devices)
This also fixes some poor quality pixelated icons
2021-01-24 17:53:45 +01:00
pdroidandroid@gmail.com
6a49ce80fe Removed some logging call I forgot 2021-01-24 17:51:55 +01:00
pdroidandroid@gmail.com
ab8d157e2e Fixed emoji category page index saving/restoring
Added go to 1st page on second category tab tap feature
2021-01-24 17:51:55 +01:00
pdroidandroid@gmail.com
09f4431325 Fixed emoji order for hair color variants 2021-01-24 17:51:12 +01:00
Hagen Echzell
ecccdf5700 Enable split layout for QWERTZ keyboard layout set 2021-01-10 15:00:59 +01:00
3564 changed files with 127953 additions and 279839 deletions

13
.editorconfig Normal file
View file

@ -0,0 +1,13 @@
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
max_line_length = 140
tab_width = 4
trim_trailing_whitespace = true
[{*.markdown,*.md}]
trim_trailing_whitespace = false
indent_size = 2

View file

@ -0,0 +1,18 @@
body:
- type: input
- type: textarea
id: description
attributes:
label: Description
placeholder: |
"You can add some description and screenshots here if you want."
validations:
required: false
- type: textarea
id: colors
attributes:
label: Colors
placeholder: |
"Please paste the colors (obtained via the _copy_ button) here, and surround the text with ``` to make sure it's displayed in a way that can be copied easily."
validations:
required: true

View file

@ -0,0 +1,18 @@
body:
- type: input
- type: textarea
id: description
attributes:
label: Description
placeholder: |
"You can add some description and screenshots here if you want."
validations:
required: false
- type: textarea
id: layout
attributes:
label: Layout
placeholder: |
"Please paste the layout here, and surround it with ``` to make sure it's displayed in a way that can be copied easily."
validations:
required: true

2
.github/FUNDING.yml vendored Normal file
View file

@ -0,0 +1,2 @@
liberapay: Helium314

36
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View file

@ -0,0 +1,36 @@
---
name: Bug report
about: Create a report to help us improve
labels: bug
---
Please see the appropriate readme section for issue reporting guidelines: https://github.com/Helium314/HeliBoard?tab=readme-ov-file#reporting-issues
tl;dr:
* search for duplicates, also in closed issues
* a single issue per topic
* reduce screenshot size
<!--
issue template below, please remove above text before submitting (and the template too if you think it's a good idea)
Please choose a meaningful title for your issue, and consider that if you want help you should provide enough information that people can actually help
-->
**Describe the bug**
**To Reproduce**
If possible, provide all the necessary steps to reproduce your problem, including the involved apps or settings if relevant.
In case you cannot reproduce the bug, say so and provide information about when the bug may occur for you. Settings and the app you're writing in are usually important, please don't omit them.
**Expected behavior**
If it's not obvious (e.g. not crash), describe how you think the app should behave.
**Screenshots**
ONLY add screenshots when they add real value.
If you add screenshots, reduce the size or use thumbnails to keep the issue nicely readable.
**App version**
Please provide the explicit version, or if you build the app yourself specify the latest commit.
**Device:**
- Model: [e.g. Samsung Galaxy S9]
- OS: [e.g. Android 10] (please also mention whether you are using the manufacturer's OS or a custom ROM)

11
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View file

@ -0,0 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: Dictionary request
url: https://codeberg.org/Helium314/aosp-dictionaries
about: Requests for dictionaries (used for suggestions / autocompletion) will be handled in the linked dictionary repository. You can check whether a dictionary for the language you want already exists there.
- name: Discussion
url: https://github.com/Helium314/HeliBoard/discussions
about: For discussions and feedback about this app, asking questions or talking about ideas which are not yet actionable (i.e. not suitable for an issue).
- name: Question
url: https://github.com/Helium314/HeliBoard/discussions/new?category=q-a
about: For questions please use the discussions section.

View file

@ -0,0 +1,26 @@
---
name: Feature request
about: Suggest an idea for this project
labels: enhancement
---
Please see the appropriate readme section for issue reporting guidelines: https://github.com/Helium314/HeliBoard?tab=readme-ov-file#reporting-issues
tl;dr:
* search for duplicates, also in closed issues
* a single issue per topic
* ONLY add screenshots when necessary, and reduce their size
<!--
issue template below, please remove above text before submitting (and the template too if you think it's a good idea)
Please choose a meaningful title for your issue
-->
**Is your feature request related to a problem? Please describe.**
**Describe the solution you'd like**
Please provide a description of what you would like to have. The clearer it is described, the better it can be implemented the way you want it.
**Use case**
Provide a clear and concise description of *your use case* and what you thus think is missing, and why.
**Describe alternatives you've considered (if any)**

12
.github/ISSUE_TEMPLATE/other.md vendored Normal file
View file

@ -0,0 +1,12 @@
---
name: Other
about: Anything that does not fit into the other categories. Please don't use this for questions, discussions, or anything that fits into one of the other issue categories.
---
Please see the appropriate readme section for issue reporting guidelines: https://github.com/Helium314/HeliBoard?tab=readme-ov-file#reporting-issues
tl;dr:
* search for duplicates, also in closed issues
* a single issue per topic
* ONLY add screenshots when necessary, and reduce their size
<!-- please remove above text before submitting, and choose a meaningful title for your issue -->

19
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View file

@ -0,0 +1,19 @@
See the contributing readme for more detailed guidelines: https://github.com/Helium314/HeliBoard/blob/main/CONTRIBUTING.md#guidelines
tl;dr:
necessary;
* a single thing only
* describe it properly
recommended:
* make changes optional
* re-use existing mechanisms / code
* low performance impact
* make it a draft if you still want to work on it
A good description and small scope ("single thing") massively help with reviewing. Don't be surprised when your PR gets closes if you clearly / repeatedly violate these parts of the guidelines.
Further
* When the PR contains "fixes" <issue number>, the related issue will be linked and automatically closed if the PR is merged (also works for other words like "fix", "resolve", "resolves", "closes", ...)
* If you add a keyboard layout, best read https://github.com/Helium314/HeliBoard/blob/main/layouts.md#adding-new-layouts--languages
* Please avoid force-pushing when doing requested changes. This way it's not possible to see which parts have changed since the previous state.
<!-- (please remove the text above before submitting the PR) -->

39
.github/workflows/build-debug-apk.yml vendored Normal file
View file

@ -0,0 +1,39 @@
name: Build debug APK
on:
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- uses: gradle/actions/setup-gradle@v3
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew assembleDebug
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: HeliBoard-debug
path: app/build/outputs/apk/debug/*-debug*.apk
- name: Archive reports for failed job
uses: actions/upload-artifact@v4
with:
name: reports
path: '*/build/reports'
if: ${{ failure() }}

43
.github/workflows/build-test-auto.yml vendored Normal file
View file

@ -0,0 +1,43 @@
name: Test build
# builds only for a single abi and does not produce an APK
on:
# disabled on push: when I push to non-main, I do a PR anyway
# push:
# don't run on main. I noticed I often don't push commits to avoid unnecessary workflow runs
# branches-ignore: [ main ]
# paths:
# - 'app/**'
pull_request:
paths:
- 'app/src/main/java**'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- uses: gradle/actions/setup-gradle@v3
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew testRunTestsUnitTest
- name: Archive reports for failed job
uses: actions/upload-artifact@v4
with:
name: reports
path: '*/build/reports'
if: ${{ failure() }}

3
.gitignore vendored
View file

@ -1,6 +1,7 @@
*.iml
.idea
.gradle
.kotlin
local.properties
.DS_Store
Gemfile
@ -8,4 +9,6 @@ build
app/build
app/release
app/.cxx
app/.attach_*
fastlane/Appfile
tools/*.txt

78
CONTRIBUTING.md Normal file
View file

@ -0,0 +1,78 @@
# Getting Started
HeliBoard project is based on Gradle and Android Gradle Plugin. To get started, you can install [Android Studio](https://developer.android.com/studio), and import project 'from Version Control / Git / Github' by providing this git repository [URL](https://github.com/Helium314/HeliBoard) (or git SSH [URL](git@github.com:Helium314/heliboard.git)).
Of course you can also use any other compatible IDE, or work with text editor and command line.
Once everything is up correctly, you're ready to go!
If you have difficulties implementing some functionality, you're welcome to ask for help. No one will write the code for you, but often other contributors can give you very useful hints.
# About the Code
HeliBoard is based on AOSP keyboard, and in many places still contains mostly the original code. There are some extensions, and some parts have been replaced completely.
When working on this app, you will likely notice its rather large size, and quite different code styles and often ancient comments and _TODO_s, where the latter are typically untouched since AOSP times.
Unfortunately a lot of the old code is hard to read or to fully understand with all of its intended (and unintended) consequences.
Some hints for finding what you're looking for:
* Layouts: stored in `layouts` folder in assets, interpreted by `KeyboardParser` and `TextKeyData`
* Popups: either on layouts, or in `locale_key_texts` (mostly letter variations for specific languages that are not dependent on layout)
* Touch and swipe input handling: `PointerTracker`
* Handling of key inputs: `InputLogic`
* Suggestions: `DictionaryFacilitatorImpl`, `Suggest`, `InputLogic`, and `SuggestionStripView` (in order from creation to display)
* Forwarding entered text / keys to the app / text field: `RichInputConnection`
* Receiving events and information from the app / text field: `LatinIME`
* Settings are in `SettingsValues`, with some functionality in `Settings` and the default values in `Default`
# Guidelines
## Recommended
If you want to contribute, it's a good idea to make sure your idea is actually wanted in HeliBoard.
Best check related issues before you start working on a PR. If the issue has the [labels](https://github.com/Helium314/HeliBoard/labels) [_PR_](https://github.com/Helium314/HeliBoard/labels/PR) or [_contributor needed_](https://github.com/Helium314/HeliBoard/issues?q=label%3A%22contributor%20needed%22) (even closed ones), contributions are wanted. If you don't find a related issue, it's recommended to open one, but ultimately it's your choice.
Asking before starting a PR may help you for getting pointers to potentially relevant code, and deciding how to implement your desired changes.
HeliBoard is a complex application and used by users with a large variety of opinions on how things should be.
When contributing to the app, please:
* Be careful when modifying core components, as it's easy to trigger unintended consequences
* When introducing a feature or change that might not be wanted by everyone, make it optional
* Keep code simple where possible. Complex code is harder to review and to maintain, so the complexity should also add a clear benefit
* Avoid noticeable performance impact. Some parts of the code are executed very frequently, and the keyboard should stay responsive even on older devices.
* Try making use of in-place mechanisms instead of re-inventing the wheel. Your contribution should only add as much complexity as necessary, the code is overly complicated already 😶.
* Keep your changes to few places, as opposed to sprinkling them over many parts of the code. This helps with keeping down complexity during review, and with maintainability of the app.
* Make a draft PR when you intend to still work on it. Submitting an unfinished PR can be a good idea when you're not sure how to best continue and would like some comments.
Further things to consider (though irrelevant for most PRs):
* APK size:
* Large increases should be discussed first, and will only be added when it's considered worth the increase for a majority of users. It might be possible to avoid size increase by importing optional parts, like it's done for dictionaries.
* Small increases like when adding code or layouts are never an issue
* Do not add proprietary code or binary blobs. If it turns out to be necessary for a feature you want to add, it might be acceptable when the user opts in and imports those parts, like it's done for glide typing.
* Privacy: Only relevant when adding some form of communication with other apps. Internet permission will not be added.
* If your contribution contains code that is not your own, provide a link to the source
* This is especially relevant to be sure the code's license is compatible to HeliBoard's GPL3
## Necessary
Some parts of the guidelines are necessary to fulfill for facilitating code review. It doesn't need to be perfect from the start, but consider it for your future PRs when you're reminded of these guidelines. Note that the larger / more complex your PR is, the more relevant these guidelines are.
Your PR should:
- **Be only about a single thing**. Mixing unrelated or semi-related contributions into a single PR is hard to review and can get messy. As a general rule: if one part doesn't need the other one(s), it should be separate PRs. If one feature builds on top of another one, but the base is usable on its own, do a PR for the base and then a follow-up once it's merged.
- **Have a proper description**. A good description helps _a lot_ for understanding what you intend to achieve with the changes, and for understanding the code. This is relevant for separating wanted from unintended changes in behavior during review.
- **No translations**. Translations should be done using [Weblate](https://translate.codeberg.org/projects/heliboard/). Exception is when you add new resource strings, those can be added right away.
Please leave dependency upgrades to the maintainers, unless you state a good reason why they should be done now.
# Adding / Adjusting Layouts
See [layouts.md](layouts.md#adding-new-layouts--languages) for how to add new layouts to the app. Please stay in line with other layouts regarding the popup keys.
When editing existing layouts, please consider that people should should still get what they're used to. In case of doubt it might be better to add a new layout instead of overhauling existing layouts.
`locale_key_texts` files should only contain letters that are actually part of the language, with exception of the optional `more_popups_<...>.txt` files.
# Update Emojis
See make-emoji-keys tool [README](tools/make-emoji-keys/README.md).
# Translations
Translations can be added using [Weblate](https://translate.codeberg.org/projects/heliboard/). You will need an account to update translations and add languages. Add the language you want to translate to in Languages -> Manage translated languages in the top menu bar.
Updating translations in a PR will not be accepted, as it may cause conflicts with Weblate translations.
# Dictionaries
No new dictionaries will be added to this app. Please submit dictionaries and the wordlist to the [dictionaries repository](https://codeberg.org/Helium314/aosp-dictionaries)

202
LICENSE-Apache-2.0 Normal file
View file

@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

428
LICENSE-CC-BY-SA-4.0 Normal file
View file

@ -0,0 +1,428 @@
Attribution-ShareAlike 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution-ShareAlike 4.0 International Public
License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution-ShareAlike 4.0 International Public License ("Public
License"). To the extent this Public License may be interpreted as a
contract, You are granted the Licensed Rights in consideration of Your
acceptance of these terms and conditions, and the Licensor grants You
such rights in consideration of benefits the Licensor receives from
making the Licensed Material available under these terms and
conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. BY-SA Compatible License means a license listed at
creativecommons.org/compatiblelicenses, approved by Creative
Commons as essentially the equivalent of this Public License.
d. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
e. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
f. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
g. License Elements means the license attributes listed in the name
of a Creative Commons Public License. The License Elements of this
Public License are Attribution and ShareAlike.
h. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
i. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
j. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
k. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
l. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
m. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part; and
b. produce, reproduce, and Share Adapted Material.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. Additional offer from the Licensor -- Adapted Material.
Every recipient of Adapted Material from You
automatically receives an offer from the Licensor to
exercise the Licensed Rights in the Adapted Material
under the conditions of the Adapter's License You apply.
c. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
b. ShareAlike.
In addition to the conditions in Section 3(a), if You Share
Adapted Material You produce, the following conditions also apply.
1. The Adapter's License You apply must be a Creative Commons
license with the same License Elements, this version or
later, or a BY-SA Compatible License.
2. You must include the text of, or the URI or hyperlink to, the
Adapter's License You apply. You may satisfy this condition
in any reasonable manner based on the medium, means, and
context in which You Share Adapted Material.
3. You may not offer or impose any additional or different terms
or conditions on, or apply any Effective Technological
Measures to, Adapted Material that restrict exercise of the
rights granted under the Adapter's License You apply.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material,
including for purposes of Section 3(b); and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.

131
README.md
View file

@ -1,62 +1,109 @@
# OpenBoard
<a href='https://f-droid.org/packages/org.dslul.openboard.inputmethod.latin'><img src='https://fdroid.gitlab.io/artwork/badge/get-it-on.png' alt='Get it on F-Droid' height='80'></a>
<a href='https://play.google.com/store/apps/details?id=org.dslul.openboard.inputmethod.latin&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'><img alt='Get it on Google Play' src='https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png' height='80px'/></a>
# HeliBoard
HeliBoard is a privacy-conscious and customizable open-source keyboard, based on AOSP / OpenBoard.
Does not use internet permission, and thus is 100% offline.
![](images/feature.png)
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="80">](https://f-droid.org/packages/helium314.keyboard/)
[<img src="https://user-images.githubusercontent.com/663460/26973090-f8fdc986-4d14-11e7-995a-e7c5e79ed925.png" alt="Get APK from GitHub" height="80">](https://github.com/Helium314/HeliBoard/releases/latest)
[<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="80">](https://apt.izzysoft.de/fdroid/index/apk/helium314.keyboard)
100% FOSS keyboard, based on AOSP.
## Table of Contents
## Permissions
* **Read Contacts**: Used to add your contact list to suggestions. Disabled by default.
- [Features](#features)
- [Contributing](#contributing-)
* [Reporting Issues](#reporting-issues)
* [Translations](#translations)
* [To Community Creation](#to-community)
* [Code Contribution](CONTRIBUTING.md)
- [License](#license)
- [Credits](#credits)
## Common issues
- Cannot open settings in MIUI
# Features
<ul>
<li>Add dictionaries for suggestions and spell check</li>
<ul>
<li>build your own, or get them <a href="https://codeberg.org/Helium314/aosp-dictionaries#dictionaries">here</a>, or in the <a href="https://codeberg.org/Helium314/aosp-dictionaries#experimental-dictionaries">experimental</a> section (quality may vary)</li>
<li>additional dictionaries for emojis or scientific symbols can be used to provide suggestions (similar to "emoji search")</li>
<li>note that for Korean layouts, suggestions only work using <a href="https://github.com/openboard-team/openboard/commit/83fca9533c03b9fecc009fc632577226bbd6301f">this dictionary</a>, the tools in the dictionary repository are not able to create working dictionaries</li>
</ul>
<li>Customize keyboard themes (style, colors and background image)</li>
<ul>
<li>can follow the system's day/night setting on Android 10+ (and on some versions of Android 9)</li>
<li>can follow dynamic colors for Android 12+</li>
</ul>
<li>Customize keyboard <a href="https://github.com/Helium314/HeliBoard/blob/main/layouts.md">layouts</a> (only available when disabling <i>use system languages</i>)</li>
<li>Customize special layouts, like symbols, number, or functional key layout</li>
<li>Multilingual typing</li>
<li>Glide typing (<i>only with closed source library</i> ☹️)</li>
<ul>
<li>library not included in the app, as there is no compatible open source library available</li>
<li>can be extracted from GApps packages ("<i>swypelibs</i>"), or downloaded <a href="https://github.com/erkserkserks/openboard/tree/46fdf2b550035ca69299ce312fa158e7ade36967/app/src/main/jniLibs">here</a> (click on the file and then "raw" or the tiny download button)</li>
</ul>
<li>Clipboard history</li>
<li>One-handed mode</li>
<li>Split keyboard</li>
<li>Number pad</li>
<li>Backup and restore your settings and learned word / history data</li>
</ul>
See https://github.com/dslul/openboard/issues/46
For [FAQ](https://github.com/Helium314/HeliBoard/wiki/FAQ) and more information about the app and features, please visit the [wiki](https://github.com/Helium314/HeliBoard/wiki)
## Contribute
# Contributing ❤
### How to create a dictionary
You can use [this tool](https://github.com/remi0s/aosp-dictionary-tools) to create a dictionary. You need a wordlist, as described [here](https://github.com/dslul/openboard/blob/master/dictionaries/sample.combined). The output .dict file must be put in [res/raw](https://github.com/dslul/openboard/tree/master/app/src/main/res/raw).
## Reporting Issues
### APK Development
Whether you encountered a bug, or want to see a new feature in HeliBoard, you can contribute to the project by opening a new issue [here](https://github.com/Helium314/HeliBoard/issues). Your help is always welcome!
#### Linux
Before opening a new issue, be sure to check the following:
- **Does the issue already exist?** Make sure a similar issue has not been reported by browsing [existing issues](https://github.com/Helium314/HeliBoard/issues?q=). Please search open and closed issues.
- **Is the issue still relevant?** Make sure your issue is not already fixed in the latest version of HeliBoard.
- **Is it a single topic?** If you want to suggest multiple things, open multiple issues.
- **Did you use the issue template?** It is important to make life of our kind contributors easier by avoiding issues that miss key information to their resolution.
Note that issues that that ignore part of the issue template will likely get treated with very low priority, as often they are needlessly hard to read or understand (e.g. huge screenshots, not providing a proper description, or addressing multiple topics). Blatant violation of the guidelines may result in the issue getting closed.
Install java:
```sh
sudo pacman -S jdk8-openjdk jre8-openjdk jre8-openjdk-headless
```
If you're interested, you can read the following useful text about effective bug reporting (a bit longer read): https://www.chiark.greenend.org.uk/~sgtatham/bugs.html
Install Android SDK:
```sh
sudo pacman -S snapd
sudo snap install androidsdk
```
## Translations
Translations can be added using [Weblate](https://translate.codeberg.org/projects/heliboard/). You will need an account to update translations and add languages. Add the language you want to translate to in Languages -> Manage translated languages in the top menu bar.
Updating translations in a PR will not be accepted, as it may cause conflicts with Weblate translations.
Configure your SDK location in your `~/.bash_profile` or `~/.bashrc`:
```bash
export ANDROID_SDK_ROOT=~/snap/androidsdk/current/AndroidSDK/
```
Some notes on translations
* when translating metadata, translating the changelogs is rather useless. It's available as it was requested by translators.
* the `hidden_features_message` is horrible to translate with Weblate, and serves little benefit as it's just a copy of what's already in the wiki: https://github.com/Helium314/HeliBoard/wiki/Hidden-functionality. It's been made available in the app on user request/contribution.
Install the platform tools for your target android version:
```sh
androidsdk "platform-tools" "platforms;android-29"
```
## To Community
You can share your themes, layouts and dictionaries with other people:
* Themes can be saved and loaded using the menu on top-right in the _adjust colors_ screen
* You can share custom colors in a separate [discussion section](https://github.com/Helium314/HeliBoard/discussions/categories/custom-colors)
* Custom keyboard layouts are text files whose content you can edit, copy and share
* this applies to main keyboard layouts and to special layouts adjustable in advanced settings
* see [layouts.md](layouts.md) for details
* You can share custom layouts in a separate [discussion section](https://github.com/Helium314/HeliBoard/discussions/categories/custom-layout)
* Creating dictionaries is a little more work
* first you will need a wordlist, as described [here](https://codeberg.org/Helium314/aosp-dictionaries/src/branch/main/wordlists/sample.combined) and in the repository readme
* the you need to compile the dictionary using [external tools](https://github.com/remi0s/aosp-dictionary-tools)
* the resulting file (and ideally the wordlist too) can be shared with other users
* note that there will not be any further dictionaries added to this app, but you can add dictionaries to the [dictionaries repository](https://codeberg.org/Helium314/aosp-dictionaries)
Compile the project. This will install all dependencies, make sure to accept
licenses when prompted.
## Code Contribution
See [Contribution Guidelines](CONTRIBUTING.md)
```sh
./gradlew assembleDebug
```
# License
Connect your phone and install the debug APK
```sh
adb install ./app/build/outputs/apk/debug/app-debug.apk
```
## Credits
HeliBoard (as a fork of OpenBoard) is licensed under GNU General Public License v3.0.
> Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.
See repo's [LICENSE](/LICENSE) file.
Since the app is based on Apache 2.0 licensed AOSP Keyboard, an [Apache 2.0](LICENSE-Apache-2.0) license file is provided.
The icon is licensed under [Creative Commons BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/). A [license file](LICENSE-CC-BY-SA-4.0) is also included.
# Credits
- Icon by [Fabian OvrWrt](https://github.com/FabianOvrWrt) with contributions from [The Eclectic Dyslexic](https://github.com/the-eclectic-dyslexic)
- [OpenBoard](https://github.com/openboard-team/openboard)
- [AOSP Keyboard](https://android.googlesource.com/platform/packages/inputmethods/LatinIME/)
- [LineageOS](https://review.lineageos.org/admin/repos/LineageOS/android_packages_inputmethods_LatinIME)
- [Simple Keyboard](https://github.com/rkkr/simple-keyboard)
- [Indic Keyboard](https://gitlab.com/indicproject/indic-keyboard)
- [FlorisBoard](https://github.com/florisboard/florisboard/)
- Our [contributors](https://github.com/Helium314/HeliBoard/graphs/contributors)

View file

@ -1,52 +0,0 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 30
defaultConfig {
applicationId "org.dslul.openboard.inputmethod.latin"
minSdkVersion 19
targetSdkVersion 30
versionCode 14
versionName '1.4.2'
}
buildTypes {
release {
minifyEnabled false
debuggable false
jniDebuggable false
renderscriptDebuggable false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
aaptOptions {
noCompress 'dict'
}
externalNativeBuild {
ndkBuild {
path 'src/main/jni/Android.mk'
}
}
lintOptions {
abortOnError false
}
ndkVersion '21.3.6528147'
}
dependencies {
implementation 'com.google.code.findbugs:jsr305:3.0.2'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.core:core-ktx:1.3.1'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.viewpager2:viewpager2:1.0.0'
}
repositories {
mavenCentral()
}

132
app/build.gradle.kts Executable file
View file

@ -0,0 +1,132 @@
plugins {
id("com.android.application")
kotlin("android")
kotlin("plugin.serialization") version "2.1.21"
kotlin("plugin.compose") version "2.0.0"
}
android {
compileSdk = 35
defaultConfig {
applicationId = "helium314.keyboard"
minSdk = 21
targetSdk = 35
versionCode = 3201
versionName = "3.2"
ndk {
abiFilters.clear()
abiFilters.addAll(listOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64"))
}
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
}
buildTypes {
release {
isMinifyEnabled = true
isShrinkResources = false
isDebuggable = false
isJniDebuggable = false
}
create("nouserlib") { // same as release, but does not allow the user to provide a library
isMinifyEnabled = true
isShrinkResources = false
isDebuggable = false
isJniDebuggable = false
}
debug {
// "normal" debug has minify for smaller APK to fit the GitHub 25 MB limit when zipped
// and for better performance in case users want to install a debug APK
isMinifyEnabled = true
isJniDebuggable = false
applicationIdSuffix = ".debug"
}
create("runTests") { // build variant for running tests on CI that skips tests known to fail
isMinifyEnabled = false
isJniDebuggable = false
}
create("debugNoMinify") { // for faster builds in IDE
isDebuggable = true
isMinifyEnabled = false
isJniDebuggable = false
signingConfig = signingConfigs.getByName("debug")
applicationIdSuffix = ".debug"
}
base.archivesBaseName = "HeliBoard_" + defaultConfig.versionName
}
buildFeatures {
viewBinding = true
buildConfig = true
compose = true
}
externalNativeBuild {
ndkBuild {
path = File("src/main/jni/Android.mk")
}
}
ndkVersion = "28.0.13004108"
packaging {
jniLibs {
// shrinks APK by 3 MB, zipped size unchanged
useLegacyPackaging = true
}
}
testOptions {
unitTests {
isIncludeAndroidResources = true
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_17.toString()
}
// see https://github.com/Helium314/HeliBoard/issues/477
dependenciesInfo {
includeInApk = false
includeInBundle = false
}
namespace = "helium314.keyboard.latin"
lint {
abortOnError = true
}
}
dependencies {
// androidx
implementation("androidx.core:core-ktx:1.16.0")
implementation("androidx.recyclerview:recyclerview:1.4.0")
implementation("androidx.autofill:autofill:1.1.0")
implementation("androidx.viewpager2:viewpager2:1.1.0")
// kotlin
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1")
// compose
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.5")
implementation(platform("androidx.compose:compose-bom:2025.05.00"))
implementation("androidx.compose.material3:material3")
implementation("androidx.compose.ui:ui-tooling-preview")
debugImplementation("androidx.compose.ui:ui-tooling")
implementation("androidx.navigation:navigation-compose:2.9.0")
implementation("sh.calvin.reorderable:reorderable:2.4.3") // for easier re-ordering
implementation("com.github.skydoves:colorpicker-compose:1.1.2") // for user-defined colors
// test
testImplementation(kotlin("test"))
testImplementation("junit:junit:4.13.2")
testImplementation("org.mockito:mockito-core:5.17.0")
testImplementation("org.robolectric:robolectric:4.14.1")
testImplementation("androidx.test:runner:1.6.2")
testImplementation("androidx.test:core:1.6.1")
}

View file

@ -1,17 +1,14 @@
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in /home/iwo/android-sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Keep native methods
-keepclassmembers class * {
native <methods>;
}
# Add any project specific keep options here:
# Keep classes that are used as a parameter type of methods that are also marked as keep
# to preserve changing those methods' signature.
-keep class helium314.keyboard.latin.Dictionary
-keep class helium314.keyboard.latin.NgramContext
-keep class helium314.keyboard.latin.makedict.ProbabilityInfo
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# after upgrading to gradle 8, stack traces contain "unknown source"
-keepattributes SourceFile,LineNumberTable
-dontobfuscate

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-License-Identifier: GPL-3.0-only
-->
<resources>
<string name="english_ime_name" translatable="false">HeliBoard debug</string>
<string name="spell_checker_service_name" translatable="false">HeliBoard debug Spell Checker</string>
<string name="ime_settings" translatable="false">HeliBoard debug Settings</string>
</resources>

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-License-Identifier: GPL-3.0-only
-->
<resources>
<string name="english_ime_name" translatable="false">HeliBoard debug</string>
<string name="spell_checker_service_name" translatable="false">HeliBoard debug Spell Checker</string>
<string name="ime_settings" translatable="false">HeliBoard debug Settings</string>
</resources>

View file

@ -1,67 +1,46 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2012 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
<!--
Copyright (C) 2012 The Android Open Source Project
modified
SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-only
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
coreApp="true"
package="org.dslul.openboard.inputmethod.latin">
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.READ_USER_DICTIONARY" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
<!-- A signature-protected permission to ask AOSP Keyboard to close the software keyboard.
To use this, add the following line into calling application's AndroidManifest.xml
<pre>
{@code
<uses-permission android:name="org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT"/>
}
</pre>
then call {@link android.content.Context#sendBroadcast(Intent)} as follows:
<pre>
{@code
sendBroadcast(new Intent("org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT")
.setPackage("org.dslul.openboard.inputmethod.latin"));
}
</pre> -->
<permission android:name="org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT"
android:protectionLevel="signature" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<application android:label="@string/english_ime_name"
android:name="helium314.keyboard.latin.App"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:allowBackup="true"
android:defaultToDeviceProtectedStorage="true"
android:directBootAware="true"
android:extractNativeLibs="false">
tools:remove="android:appComponentFactory"
tools:targetApi="p">
<!-- Services -->
<service android:name="LatinIME"
android:label="@string/english_ime_name"
android:permission="android.permission.BIND_INPUT_METHOD">
android:permission="android.permission.BIND_INPUT_METHOD"
android:directBootAware="true"
android:exported="true">
<intent-filter>
<action android:name="android.view.InputMethod" />
</intent-filter>
<meta-data android:name="android.view.im" android:resource="@xml/method" />
<meta-data android:name="android.view.im" android:resource="@xml/method_dummy" />
</service>
<service android:name=".spellcheck.AndroidSpellCheckerService"
android:label="@string/spell_checker_service_name"
android:permission="android.permission.BIND_TEXT_SERVICE">
android:permission="android.permission.BIND_TEXT_SERVICE"
android:exported="true">
<intent-filter>
<action android:name="android.service.textservice.SpellCheckerService" />
</intent-filter>
@ -70,56 +49,36 @@
</service>
<!-- Activities -->
<activity android:name=".setup.SetupActivity"
<activity android:name="helium314.keyboard.settings.SettingsActivity"
android:theme="@style/platformActivityTheme"
android:label="@string/english_ime_name"
android:icon="@mipmap/ic_launcher"
android:launchMode="singleTask"
android:noHistory="true">
android:windowSoftInputMode="adjustResize"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".permissions.PermissionsActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:exported="false"
android:taskAffinity="" >
</activity>
<activity android:name=".setup.SetupWizardActivity"
android:theme="@style/platformActivityTheme"
android:label="@string/english_ime_name"
android:clearTaskOnLaunch="true">
<!-- intent filter for opening .dict files -->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<activity android:name=".settings.SettingsActivity"
android:theme="@style/platformSettingsTheme"
android:label="@string/english_ime_settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:mimeType="application/octet-stream" android:scheme="content" android:host="*" android:pathPattern=".*\\.dict" />
</intent-filter>
</activity>
<activity android:name=".spellcheck.SpellCheckerSettingsActivity"
android:theme="@style/platformSettingsTheme"
android:label="@string/android_spell_checker_settings">
android:theme="@style/platformActivityTheme"
android:label="@string/spell_checker_service_name"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<!-- Unexported activity used for tests. -->
<activity android:name=".settings.TestFragmentActivity"
android:exported="false" />
<!-- Broadcast receivers -->
<receiver android:name="SystemBroadcastReceiver">
<receiver android:name="SystemBroadcastReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
<action android:name="android.intent.action.BOOT_COMPLETED" />
@ -130,17 +89,24 @@
<receiver android:name="DictionaryPackInstallBroadcastReceiver" android:exported="false">
<intent-filter>
<action android:name="org.dslul.openboard.inputmethod.dictionarypack.aosp.UNKNOWN_CLIENT" />
<action android:name="helium314.keyboard.dictionarypack.aosp.UNKNOWN_CLIENT" />
</intent-filter>
</receiver>
<!-- Content providers -->
<provider android:name="org.dslul.openboard.inputmethod.dictionarypack.DictionaryProvider"
android:grantUriPermissions="true"
android:exported="false"
android:authorities="@string/authority"
android:multiprocess="false"
android:label="@string/dictionary_provider_name">
</provider>
</application>
<queries>
<!-- To detect other IMEs -->
<intent>
<!-- changed to * as it's supposed to help with finding other keyboard apps, see https://github.com/Helium314/HeliBoard/issues/1340 -->
<!--<action android:name="android.view.InputMethod" />-->
<action android:name="*" />
</intent>
<!-- To detect names of installed apps -->
<intent>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent>
</queries>
</manifest>

View file

@ -0,0 +1,116 @@
main,af,exp
main,ar,
main,ar,exp
main,hy,
main,as,
main,bn_BD,exp
main,bn,
main,bn,exp
main,eu,
main,be,
main,bg,
main,bg,exp
main,ca,
main,ca,exp
main,hr,
main,hr,exp
main,cs,
main,cs,exp
main,da,
main,da,exp
main,nl,
main,nl,exp
main,en_AU,
main,en_CA,exp
main,en_GB,
main,en_GB,exp
main,en_US,
main,en_US,exp
symbols,en,exp
emoji,en,
main,eo,
main,eo,exp
main,et,exp
main,fi,
main,fi,exp
emoji,fr,
symbols,fr,exp
main,fr,
main,fr,exp
main,gl,
main,gl,exp
main,ka,
main,de_AT,exp
main,de_CH,
main,de,
main,de,exp
main,gom,
main,el,
main,gu,
main,he,
main,iw,
main,he,exp
main,hi,
main,hi_ZZ,
main,hu,
main,hu,exp
main,is,exp
main,id,exp
main,it,
main,it,exp
main,kab,exp
main,kn,
main,ks,
main,kk,exp
main,km,
main,la,
main,lv,
main,lv,exp
main,lt,
main,lt,exp
main,lb,
main,mai,
addon,ml_ZZ,exp
main,ml,
main,mr,
main,ne,exp
main,nb,
main,nb,exp
main,or,
main,pms,exp
main,pl,
main,pl,exp
main,pt_BR,
main,pt_PT,
main,pt_PT,exp
main,pa,
main,ro,
main,ro,exp
emoji,ru,
main,ru,
main,ru,exp
main,sa,
main,sat,
main,sr_ZZ,
main,sr,
main,sd,
main,sk,exp
main,sl,
main,sl,exp
main,es,
main,es,exp
main,zgh_ZZ,
main,zgh,
main,sv,
main,sv,exp
main,ta,
main,te,
main,tok,
main,tcy,
main,tr,
main,tr,exp
emoji,uk,
main,uk,
main,uk,exp
main,ur,
main,vi,exp
1 main af exp
2 main ar
3 main ar exp
4 main hy
5 main as
6 main bn_BD exp
7 main bn
8 main bn exp
9 main eu
10 main be
11 main bg
12 main bg exp
13 main ca
14 main ca exp
15 main hr
16 main hr exp
17 main cs
18 main cs exp
19 main da
20 main da exp
21 main nl
22 main nl exp
23 main en_AU
24 main en_CA exp
25 main en_GB
26 main en_GB exp
27 main en_US
28 main en_US exp
29 symbols en exp
30 emoji en
31 main eo
32 main eo exp
33 main et exp
34 main fi
35 main fi exp
36 emoji fr
37 symbols fr exp
38 main fr
39 main fr exp
40 main gl
41 main gl exp
42 main ka
43 main de_AT exp
44 main de_CH
45 main de
46 main de exp
47 main gom
48 main el
49 main gu
50 main he
51 main iw
52 main he exp
53 main hi
54 main hi_ZZ
55 main hu
56 main hu exp
57 main is exp
58 main id exp
59 main it
60 main it exp
61 main kab exp
62 main kn
63 main ks
64 main kk exp
65 main km
66 main la
67 main lv
68 main lv exp
69 main lt
70 main lt exp
71 main lb
72 main mai
73 addon ml_ZZ exp
74 main ml
75 main mr
76 main ne exp
77 main nb
78 main nb exp
79 main or
80 main pms exp
81 main pl
82 main pl exp
83 main pt_BR
84 main pt_PT
85 main pt_PT exp
86 main pa
87 main ro
88 main ro exp
89 emoji ru
90 main ru
91 main ru exp
92 main sa
93 main sat
94 main sr_ZZ
95 main sr
96 main sd
97 main sk exp
98 main sl
99 main sl exp
100 main es
101 main es exp
102 main zgh_ZZ
103 main zgh
104 main sv
105 main sv exp
106 main ta
107 main te
108 main tok
109 main tcy
110 main tr
111 main tr exp
112 emoji uk
113 main uk
114 main uk exp
115 main ur
116 main vi exp

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,85 @@
🎃
🎄
🎆
🎇
🧨
🎈
🎉
🎊
🎋
🎍
🎎
🎏
🎐
🎑
🧧
🎀
🎁
🎗️
🎟️
🎫
🎖️
🏆
🏅
🥇
🥈
🥉
🥎
🏀
🏐
🏈
🏉
🎾
🥏
🎳
🏏
🏑
🏒
🥍
🏓
🏸
🥊
🥋
🥅
⛸️
🎣
🤿
🎽
🎿
🛷
🥌
🎯
🪀
🪁
🔫
🎱
🔮
🪄
🎮
🕹️
🎰
🎲
🧩
🧸
🪅
🪩
🪆
♠️
♥️
♦️
♣️
♟️
🃏
🀄
🎴
🎭
🖼️
🎨
🧵
🪡
🧶
🪢

View file

@ -0,0 +1,159 @@
🐵
🐒
🦍
🦧
🐶
🐕
🦮
🐕‍🦺
🐩
🐺
🦊
🦝
🐱
🐈
🐈‍⬛
🦁
🐯
🐅
🐆
🐴
🫎
🫏
🐎
🦄
🦓
🦌
🦬
🐮
🐂
🐃
🐄
🐷
🐖
🐗
🐽
🐏
🐑
🐐
🐪
🐫
🦙
🦒
🐘
🦣
🦏
🦛
🐭
🐁
🐀
🐹
🐰
🐇
🐿️
🦫
🦔
🦇
🐻
🐻‍❄️
🐨
🐼
🦥
🦦
🦨
🦘
🦡
🐾
🦃
🐔
🐓
🐣
🐤
🐥
🐦
🐧
🕊️
🦅
🦆
🦢
🦉
🦤
🪶
🦩
🦚
🦜
🪽
🐦‍⬛
🪿
🐦‍🔥
🐸
🐊
🐢
🦎
🐍
🐲
🐉
🦕
🦖
🐳
🐋
🐬
🦭
🐟
🐠
🐡
🦈
🐙
🐚
🪸
🪼
🦀
🦞
🦐
🦑
🦪
🐌
🦋
🐛
🐜
🐝
🪲
🐞
🦗
🪳
🕷️
🕸️
🦂
🦟
🪰
🪱
🦠
💐
🌸
💮
🪷
🏵️
🌹
🥀
🌺
🌻
🌼
🌷
🪻
🌱
🪴
🌲
🌳
🌴
🌵
🌾
🌿
☘️
🍀
🍁
🍂
🍃
🪹
🪺
🍄
🪾

View file

@ -0,0 +1,25 @@
:-)
;-)
:-(
:-!
:-$
B-)
=-O
:-P
:O
:-*
:-D
:\'(
:-\\
O:-)
:-[
(╯°
□°)
╯︵
┻━┻
¯\\_
(ツ)
_/¯
┬─┬
︵ /(
.□.\\

View file

@ -0,0 +1,270 @@
🏁
🚩
🎌
🏴
🏳️
🏳️‍🌈
🏳️‍⚧️
🏴‍☠️
🇦🇨
🇦🇩
🇦🇪
🇦🇫
🇦🇬
🇦🇮
🇦🇱
🇦🇲
🇦🇴
🇦🇶
🇦🇷
🇦🇸
🇦🇹
🇦🇺
🇦🇼
🇦🇽
🇦🇿
🇧🇦
🇧🇧
🇧🇩
🇧🇪
🇧🇫
🇧🇬
🇧🇭
🇧🇮
🇧🇯
🇧🇱
🇧🇲
🇧🇳
🇧🇴
🇧🇶
🇧🇷
🇧🇸
🇧🇹
🇧🇻
🇧🇼
🇧🇾
🇧🇿
🇨🇦
🇨🇨
🇨🇩
🇨🇫
🇨🇬
🇨🇭
🇨🇮
🇨🇰
🇨🇱
🇨🇲
🇨🇳
🇨🇴
🇨🇵
🇨🇶
🇨🇷
🇨🇺
🇨🇻
🇨🇼
🇨🇽
🇨🇾
🇨🇿
🇩🇪
🇩🇬
🇩🇯
🇩🇰
🇩🇲
🇩🇴
🇩🇿
🇪🇦
🇪🇨
🇪🇪
🇪🇬
🇪🇭
🇪🇷
🇪🇸
🇪🇹
🇪🇺
🇫🇮
🇫🇯
🇫🇰
🇫🇲
🇫🇴
🇫🇷
🇬🇦
🇬🇧
🇬🇩
🇬🇪
🇬🇫
🇬🇬
🇬🇭
🇬🇮
🇬🇱
🇬🇲
🇬🇳
🇬🇵
🇬🇶
🇬🇷
🇬🇸
🇬🇹
🇬🇺
🇬🇼
🇬🇾
🇭🇰
🇭🇲
🇭🇳
🇭🇷
🇭🇹
🇭🇺
🇮🇨
🇮🇩
🇮🇪
🇮🇱
🇮🇲
🇮🇳
🇮🇴
🇮🇶
🇮🇷
🇮🇸
🇮🇹
🇯🇪
🇯🇲
🇯🇴
🇯🇵
🇰🇪
🇰🇬
🇰🇭
🇰🇮
🇰🇲
🇰🇳
🇰🇵
🇰🇷
🇰🇼
🇰🇾
🇰🇿
🇱🇦
🇱🇧
🇱🇨
🇱🇮
🇱🇰
🇱🇷
🇱🇸
🇱🇹
🇱🇺
🇱🇻
🇱🇾
🇲🇦
🇲🇨
🇲🇩
🇲🇪
🇲🇫
🇲🇬
🇲🇭
🇲🇰
🇲🇱
🇲🇲
🇲🇳
🇲🇴
🇲🇵
🇲🇶
🇲🇷
🇲🇸
🇲🇹
🇲🇺
🇲🇻
🇲🇼
🇲🇽
🇲🇾
🇲🇿
🇳🇦
🇳🇨
🇳🇪
🇳🇫
🇳🇬
🇳🇮
🇳🇱
🇳🇴
🇳🇵
🇳🇷
🇳🇺
🇳🇿
🇴🇲
🇵🇦
🇵🇪
🇵🇫
🇵🇬
🇵🇭
🇵🇰
🇵🇱
🇵🇲
🇵🇳
🇵🇷
🇵🇸
🇵🇹
🇵🇼
🇵🇾
🇶🇦
🇷🇪
🇷🇴
🇷🇸
🇷🇺
🇷🇼
🇸🇦
🇸🇧
🇸🇨
🇸🇩
🇸🇪
🇸🇬
🇸🇭
🇸🇮
🇸🇯
🇸🇰
🇸🇱
🇸🇲
🇸🇳
🇸🇴
🇸🇷
🇸🇸
🇸🇹
🇸🇻
🇸🇽
🇸🇾
🇸🇿
🇹🇦
🇹🇨
🇹🇩
🇹🇫
🇹🇬
🇹🇭
🇹🇯
🇹🇰
🇹🇱
🇹🇲
🇹🇳
🇹🇴
🇹🇷
🇹🇹
🇹🇻
🇹🇼
🇹🇿
🇺🇦
🇺🇬
🇺🇲
🇺🇳
🇺🇸
🇺🇾
🇺🇿
🇻🇦
🇻🇨
🇻🇪
🇻🇬
🇻🇮
🇻🇳
🇻🇺
🇼🇫
🇼🇸
🇽🇰
🇾🇪
🇾🇹
🇿🇦
🇿🇲
🇿🇼
🏴󠁧󠁢󠁥󠁮󠁧󠁿
🏴󠁧󠁢󠁳󠁣󠁴󠁿
🏴󠁧󠁢󠁷󠁬󠁳󠁿

View file

@ -0,0 +1,131 @@
🍇
🍈
🍉
🍊
🍋
🍋‍🟩
🍌
🍍
🥭
🍎
🍏
🍐
🍑
🍒
🍓
🫐
🥝
🍅
🫒
🥥
🥑
🍆
🥔
🥕
🌽
🌶️
🫑
🥒
🥬
🥦
🧄
🧅
🥜
🫘
🌰
🫚
🫛
🍄‍🟫
🫜
🍞
🥐
🥖
🫓
🥨
🥯
🥞
🧇
🧀
🍖
🍗
🥩
🥓
🍔
🍟
🍕
🌭
🥪
🌮
🌯
🫔
🥙
🧆
🥚
🍳
🥘
🍲
🫕
🥣
🥗
🍿
🧈
🧂
🥫
🍱
🍘
🍙
🍚
🍛
🍜
🍝
🍠
🍢
🍣
🍤
🍥
🥮
🍡
🥟
🥠
🥡
🍦
🍧
🍨
🍩
🍪
🎂
🍰
🧁
🥧
🍫
🍬
🍭
🍮
🍯
🍼
🥛
🫖
🍵
🍶
🍾
🍷
🍸
🍹
🍺
🍻
🥂
🥃
🫗
🥤
🧋
🧃
🧉
🧊
🥢
🍽️
🍴
🥄
🔪
🫙
🏺

View file

@ -0,0 +1,264 @@
👓
🕶️
🥽
🥼
🦺
👔
👕
👖
🧣
🧤
🧥
🧦
👗
👘
🥻
🩱
🩲
🩳
👙
👚
🪭
👛
👜
👝
🛍️
🎒
🩴
👞
👟
🥾
🥿
👠
👡
🩰
👢
🪮
👑
👒
🎩
🎓
🧢
🪖
⛑️
📿
💄
💍
💎
🔇
🔈
🔉
🔊
📢
📣
📯
🔔
🔕
🎼
🎵
🎶
🎙️
🎚️
🎛️
🎤
🎧
📻
🎷
🪗
🎸
🎹
🎺
🎻
🪕
🥁
🪘
🪇
🪈
🪉
📱
📲
☎️
📞
📟
📠
🔋
🪫
🔌
💻
🖥️
🖨️
⌨️
🖱️
🖲️
💽
💾
💿
📀
🧮
🎥
🎞️
📽️
🎬
📺
📷
📸
📹
📼
🔍
🔎
🕯️
💡
🔦
🏮
🪔
📔
📕
📖
📗
📘
📙
📚
📓
📒
📃
📜
📄
📰
🗞️
📑
🔖
🏷️
💰
🪙
💴
💵
💶
💷
💸
💳
🧾
💹
✉️
📧
📨
📩
📤
📥
📦
📫
📪
📬
📭
📮
🗳️
✏️
✒️
🖋️
🖊️
🖌️
🖍️
📝
💼
📁
📂
🗂️
📅
📆
🗒️
🗓️
📇
📈
📉
📊
📋
📌
📍
📎
🖇️
📏
📐
✂️
🗃️
🗄️
🗑️
🔒
🔓
🔏
🔐
🔑
🗝️
🔨
🪓
⛏️
⚒️
🛠️
🗡️
⚔️
💣
🪃
🏹
🛡️
🪚
🔧
🪛
🔩
⚙️
🗜️
⚖️
🦯
🔗
⛓️‍💥
⛓️
🪝
🧰
🧲
🪜
🪏
⚗️
🧪
🧫
🧬
🔬
🔭
📡
💉
🩸
💊
🩹
🩼
🩺
🩻
🚪
🛗
🪞
🪟
🛏️
🛋️
🪑
🚽
🪠
🚿
🛁
🪤
🪒
🧴
🧷
🧹
🧺
🧻
🪣
🧼
🫧
🪥
🧽
🧯
🛒
🚬
⚰️
🪦
⚱️
🧿
🪬
🗿
🪧
🪪

View file

@ -0,0 +1,386 @@
👋 👋🏻 👋🏼 👋🏽 👋🏾 👋🏿
🤚 🤚🏻 🤚🏼 🤚🏽 🤚🏾 🤚🏿
🖐️ 🖐🏻 🖐🏼 🖐🏽 🖐🏾 🖐🏿
✋ ✋🏻 ✋🏼 ✋🏽 ✋🏾 ✋🏿
🖖 🖖🏻 🖖🏼 🖖🏽 🖖🏾 🖖🏿
🫱 🫱🏻 🫱🏼 🫱🏽 🫱🏾 🫱🏿
🫲 🫲🏻 🫲🏼 🫲🏽 🫲🏾 🫲🏿
🫳 🫳🏻 🫳🏼 🫳🏽 🫳🏾 🫳🏿
🫴 🫴🏻 🫴🏼 🫴🏽 🫴🏾 🫴🏿
🫷 🫷🏻 🫷🏼 🫷🏽 🫷🏾 🫷🏿
🫸 🫸🏻 🫸🏼 🫸🏽 🫸🏾 🫸🏿
👌 👌🏻 👌🏼 👌🏽 👌🏾 👌🏿
🤌 🤌🏻 🤌🏼 🤌🏽 🤌🏾 🤌🏿
🤏 🤏🏻 🤏🏼 🤏🏽 🤏🏾 🤏🏿
✌️ ✌🏻 ✌🏼 ✌🏽 ✌🏾 ✌🏿
🤞 🤞🏻 🤞🏼 🤞🏽 🤞🏾 🤞🏿
🫰 🫰🏻 🫰🏼 🫰🏽 🫰🏾 🫰🏿
🤟 🤟🏻 🤟🏼 🤟🏽 🤟🏾 🤟🏿
🤘 🤘🏻 🤘🏼 🤘🏽 🤘🏾 🤘🏿
🤙 🤙🏻 🤙🏼 🤙🏽 🤙🏾 🤙🏿
👈 👈🏻 👈🏼 👈🏽 👈🏾 👈🏿
👉 👉🏻 👉🏼 👉🏽 👉🏾 👉🏿
👆 👆🏻 👆🏼 👆🏽 👆🏾 👆🏿
🖕 🖕🏻 🖕🏼 🖕🏽 🖕🏾 🖕🏿
👇 👇🏻 👇🏼 👇🏽 👇🏾 👇🏿
☝️ ☝🏻 ☝🏼 ☝🏽 ☝🏾 ☝🏿
🫵 🫵🏻 🫵🏼 🫵🏽 🫵🏾 🫵🏿
👍 👍🏻 👍🏼 👍🏽 👍🏾 👍🏿
👎 👎🏻 👎🏼 👎🏽 👎🏾 👎🏿
✊ ✊🏻 ✊🏼 ✊🏽 ✊🏾 ✊🏿
👊 👊🏻 👊🏼 👊🏽 👊🏾 👊🏿
🤛 🤛🏻 🤛🏼 🤛🏽 🤛🏾 🤛🏿
🤜 🤜🏻 🤜🏼 🤜🏽 🤜🏾 🤜🏿
👏 👏🏻 👏🏼 👏🏽 👏🏾 👏🏿
🙌 🙌🏻 🙌🏼 🙌🏽 🙌🏾 🙌🏿
🫶 🫶🏻 🫶🏼 🫶🏽 🫶🏾 🫶🏿
👐 👐🏻 👐🏼 👐🏽 👐🏾 👐🏿
🤲 🤲🏻 🤲🏼 🤲🏽 🤲🏾 🤲🏿
🤝 🤝🏻 🤝🏼 🤝🏽 🤝🏾 🤝🏿
🙏 🙏🏻 🙏🏼 🙏🏽 🙏🏾 🙏🏿
✍️ ✍🏻 ✍🏼 ✍🏽 ✍🏾 ✍🏿
💅 💅🏻 💅🏼 💅🏽 💅🏾 💅🏿
🤳 🤳🏻 🤳🏼 🤳🏽 🤳🏾 🤳🏿
💪 💪🏻 💪🏼 💪🏽 💪🏾 💪🏿
🦾
🦿
🦵 🦵🏻 🦵🏼 🦵🏽 🦵🏾 🦵🏿
🦶 🦶🏻 🦶🏼 🦶🏽 🦶🏾 🦶🏿
👂 👂🏻 👂🏼 👂🏽 👂🏾 👂🏿
🦻 🦻🏻 🦻🏼 🦻🏽 🦻🏾 🦻🏿
👃 👃🏻 👃🏼 👃🏽 👃🏾 👃🏿
🧠
🫀
🫁
🦷
🦴
👀
👁️
👅
👄
🫦
👶 👶🏻 👶🏼 👶🏽 👶🏾 👶🏿
🧒 🧒🏻 🧒🏼 🧒🏽 🧒🏾 🧒🏿
👦 👦🏻 👦🏼 👦🏽 👦🏾 👦🏿
👧 👧🏻 👧🏼 👧🏽 👧🏾 👧🏿
🧑 🧑🏻 🧑🏼 🧑🏽 🧑🏾 🧑🏿
👱 👱🏻 👱🏼 👱🏽 👱🏾 👱🏿
👨 👨🏻 👨🏼 👨🏽 👨🏾 👨🏿
🧔 🧔🏻 🧔🏼 🧔🏽 🧔🏾 🧔🏿
🧔‍♂️ 🧔🏻‍♂️ 🧔🏼‍♂️ 🧔🏽‍♂️ 🧔🏾‍♂️ 🧔🏿‍♂️
🧔‍♀️ 🧔🏻‍♀️ 🧔🏼‍♀️ 🧔🏽‍♀️ 🧔🏾‍♀️ 🧔🏿‍♀️
👨‍🦰 👨🏻‍🦰 👨🏼‍🦰 👨🏽‍🦰 👨🏾‍🦰 👨🏿‍🦰
👨‍🦱 👨🏻‍🦱 👨🏼‍🦱 👨🏽‍🦱 👨🏾‍🦱 👨🏿‍🦱
👨‍🦳 👨🏻‍🦳 👨🏼‍🦳 👨🏽‍🦳 👨🏾‍🦳 👨🏿‍🦳
👨‍🦲 👨🏻‍🦲 👨🏼‍🦲 👨🏽‍🦲 👨🏾‍🦲 👨🏿‍🦲
👩 👩🏻 👩🏼 👩🏽 👩🏾 👩🏿
👩‍🦰 👩🏻‍🦰 👩🏼‍🦰 👩🏽‍🦰 👩🏾‍🦰 👩🏿‍🦰
🧑‍🦰 🧑🏻‍🦰 🧑🏼‍🦰 🧑🏽‍🦰 🧑🏾‍🦰 🧑🏿‍🦰
👩‍🦱 👩🏻‍🦱 👩🏼‍🦱 👩🏽‍🦱 👩🏾‍🦱 👩🏿‍🦱
🧑‍🦱 🧑🏻‍🦱 🧑🏼‍🦱 🧑🏽‍🦱 🧑🏾‍🦱 🧑🏿‍🦱
👩‍🦳 👩🏻‍🦳 👩🏼‍🦳 👩🏽‍🦳 👩🏾‍🦳 👩🏿‍🦳
🧑‍🦳 🧑🏻‍🦳 🧑🏼‍🦳 🧑🏽‍🦳 🧑🏾‍🦳 🧑🏿‍🦳
👩‍🦲 👩🏻‍🦲 👩🏼‍🦲 👩🏽‍🦲 👩🏾‍🦲 👩🏿‍🦲
🧑‍🦲 🧑🏻‍🦲 🧑🏼‍🦲 🧑🏽‍🦲 🧑🏾‍🦲 🧑🏿‍🦲
👱‍♀️ 👱🏻‍♀️ 👱🏼‍♀️ 👱🏽‍♀️ 👱🏾‍♀️ 👱🏿‍♀️
👱‍♂️ 👱🏻‍♂️ 👱🏼‍♂️ 👱🏽‍♂️ 👱🏾‍♂️ 👱🏿‍♂️
🧓 🧓🏻 🧓🏼 🧓🏽 🧓🏾 🧓🏿
👴 👴🏻 👴🏼 👴🏽 👴🏾 👴🏿
👵 👵🏻 👵🏼 👵🏽 👵🏾 👵🏿
🙍 🙍🏻 🙍🏼 🙍🏽 🙍🏾 🙍🏿
🙍‍♂️ 🙍🏻‍♂️ 🙍🏼‍♂️ 🙍🏽‍♂️ 🙍🏾‍♂️ 🙍🏿‍♂️
🙍‍♀️ 🙍🏻‍♀️ 🙍🏼‍♀️ 🙍🏽‍♀️ 🙍🏾‍♀️ 🙍🏿‍♀️
🙎 🙎🏻 🙎🏼 🙎🏽 🙎🏾 🙎🏿
🙎‍♂️ 🙎🏻‍♂️ 🙎🏼‍♂️ 🙎🏽‍♂️ 🙎🏾‍♂️ 🙎🏿‍♂️
🙎‍♀️ 🙎🏻‍♀️ 🙎🏼‍♀️ 🙎🏽‍♀️ 🙎🏾‍♀️ 🙎🏿‍♀️
🙅 🙅🏻 🙅🏼 🙅🏽 🙅🏾 🙅🏿
🙅‍♂️ 🙅🏻‍♂️ 🙅🏼‍♂️ 🙅🏽‍♂️ 🙅🏾‍♂️ 🙅🏿‍♂️
🙅‍♀️ 🙅🏻‍♀️ 🙅🏼‍♀️ 🙅🏽‍♀️ 🙅🏾‍♀️ 🙅🏿‍♀️
🙆 🙆🏻 🙆🏼 🙆🏽 🙆🏾 🙆🏿
🙆‍♂️ 🙆🏻‍♂️ 🙆🏼‍♂️ 🙆🏽‍♂️ 🙆🏾‍♂️ 🙆🏿‍♂️
🙆‍♀️ 🙆🏻‍♀️ 🙆🏼‍♀️ 🙆🏽‍♀️ 🙆🏾‍♀️ 🙆🏿‍♀️
💁 💁🏻 💁🏼 💁🏽 💁🏾 💁🏿
💁‍♂️ 💁🏻‍♂️ 💁🏼‍♂️ 💁🏽‍♂️ 💁🏾‍♂️ 💁🏿‍♂️
💁‍♀️ 💁🏻‍♀️ 💁🏼‍♀️ 💁🏽‍♀️ 💁🏾‍♀️ 💁🏿‍♀️
🙋 🙋🏻 🙋🏼 🙋🏽 🙋🏾 🙋🏿
🙋‍♂️ 🙋🏻‍♂️ 🙋🏼‍♂️ 🙋🏽‍♂️ 🙋🏾‍♂️ 🙋🏿‍♂️
🙋‍♀️ 🙋🏻‍♀️ 🙋🏼‍♀️ 🙋🏽‍♀️ 🙋🏾‍♀️ 🙋🏿‍♀️
🧏 🧏🏻 🧏🏼 🧏🏽 🧏🏾 🧏🏿
🧏‍♂️ 🧏🏻‍♂️ 🧏🏼‍♂️ 🧏🏽‍♂️ 🧏🏾‍♂️ 🧏🏿‍♂️
🧏‍♀️ 🧏🏻‍♀️ 🧏🏼‍♀️ 🧏🏽‍♀️ 🧏🏾‍♀️ 🧏🏿‍♀️
🙇 🙇🏻 🙇🏼 🙇🏽 🙇🏾 🙇🏿
🙇‍♂️ 🙇🏻‍♂️ 🙇🏼‍♂️ 🙇🏽‍♂️ 🙇🏾‍♂️ 🙇🏿‍♂️
🙇‍♀️ 🙇🏻‍♀️ 🙇🏼‍♀️ 🙇🏽‍♀️ 🙇🏾‍♀️ 🙇🏿‍♀️
🤦 🤦🏻 🤦🏼 🤦🏽 🤦🏾 🤦🏿
🤦‍♂️ 🤦🏻‍♂️ 🤦🏼‍♂️ 🤦🏽‍♂️ 🤦🏾‍♂️ 🤦🏿‍♂️
🤦‍♀️ 🤦🏻‍♀️ 🤦🏼‍♀️ 🤦🏽‍♀️ 🤦🏾‍♀️ 🤦🏿‍♀️
🤷 🤷🏻 🤷🏼 🤷🏽 🤷🏾 🤷🏿
🤷‍♂️ 🤷🏻‍♂️ 🤷🏼‍♂️ 🤷🏽‍♂️ 🤷🏾‍♂️ 🤷🏿‍♂️
🤷‍♀️ 🤷🏻‍♀️ 🤷🏼‍♀️ 🤷🏽‍♀️ 🤷🏾‍♀️ 🤷🏿‍♀️
🧑‍⚕️ 🧑🏻‍⚕️ 🧑🏼‍⚕️ 🧑🏽‍⚕️ 🧑🏾‍⚕️ 🧑🏿‍⚕️
👨‍⚕️ 👨🏻‍⚕️ 👨🏼‍⚕️ 👨🏽‍⚕️ 👨🏾‍⚕️ 👨🏿‍⚕️
👩‍⚕️ 👩🏻‍⚕️ 👩🏼‍⚕️ 👩🏽‍⚕️ 👩🏾‍⚕️ 👩🏿‍⚕️
🧑‍🎓 🧑🏻‍🎓 🧑🏼‍🎓 🧑🏽‍🎓 🧑🏾‍🎓 🧑🏿‍🎓
👨‍🎓 👨🏻‍🎓 👨🏼‍🎓 👨🏽‍🎓 👨🏾‍🎓 👨🏿‍🎓
👩‍🎓 👩🏻‍🎓 👩🏼‍🎓 👩🏽‍🎓 👩🏾‍🎓 👩🏿‍🎓
🧑‍🏫 🧑🏻‍🏫 🧑🏼‍🏫 🧑🏽‍🏫 🧑🏾‍🏫 🧑🏿‍🏫
👨‍🏫 👨🏻‍🏫 👨🏼‍🏫 👨🏽‍🏫 👨🏾‍🏫 👨🏿‍🏫
👩‍🏫 👩🏻‍🏫 👩🏼‍🏫 👩🏽‍🏫 👩🏾‍🏫 👩🏿‍🏫
🧑‍⚖️ 🧑🏻‍⚖️ 🧑🏼‍⚖️ 🧑🏽‍⚖️ 🧑🏾‍⚖️ 🧑🏿‍⚖️
👨‍⚖️ 👨🏻‍⚖️ 👨🏼‍⚖️ 👨🏽‍⚖️ 👨🏾‍⚖️ 👨🏿‍⚖️
👩‍⚖️ 👩🏻‍⚖️ 👩🏼‍⚖️ 👩🏽‍⚖️ 👩🏾‍⚖️ 👩🏿‍⚖️
🧑‍🌾 🧑🏻‍🌾 🧑🏼‍🌾 🧑🏽‍🌾 🧑🏾‍🌾 🧑🏿‍🌾
👨‍🌾 👨🏻‍🌾 👨🏼‍🌾 👨🏽‍🌾 👨🏾‍🌾 👨🏿‍🌾
👩‍🌾 👩🏻‍🌾 👩🏼‍🌾 👩🏽‍🌾 👩🏾‍🌾 👩🏿‍🌾
🧑‍🍳 🧑🏻‍🍳 🧑🏼‍🍳 🧑🏽‍🍳 🧑🏾‍🍳 🧑🏿‍🍳
👨‍🍳 👨🏻‍🍳 👨🏼‍🍳 👨🏽‍🍳 👨🏾‍🍳 👨🏿‍🍳
👩‍🍳 👩🏻‍🍳 👩🏼‍🍳 👩🏽‍🍳 👩🏾‍🍳 👩🏿‍🍳
🧑‍🔧 🧑🏻‍🔧 🧑🏼‍🔧 🧑🏽‍🔧 🧑🏾‍🔧 🧑🏿‍🔧
👨‍🔧 👨🏻‍🔧 👨🏼‍🔧 👨🏽‍🔧 👨🏾‍🔧 👨🏿‍🔧
👩‍🔧 👩🏻‍🔧 👩🏼‍🔧 👩🏽‍🔧 👩🏾‍🔧 👩🏿‍🔧
🧑‍🏭 🧑🏻‍🏭 🧑🏼‍🏭 🧑🏽‍🏭 🧑🏾‍🏭 🧑🏿‍🏭
👨‍🏭 👨🏻‍🏭 👨🏼‍🏭 👨🏽‍🏭 👨🏾‍🏭 👨🏿‍🏭
👩‍🏭 👩🏻‍🏭 👩🏼‍🏭 👩🏽‍🏭 👩🏾‍🏭 👩🏿‍🏭
🧑‍💼 🧑🏻‍💼 🧑🏼‍💼 🧑🏽‍💼 🧑🏾‍💼 🧑🏿‍💼
👨‍💼 👨🏻‍💼 👨🏼‍💼 👨🏽‍💼 👨🏾‍💼 👨🏿‍💼
👩‍💼 👩🏻‍💼 👩🏼‍💼 👩🏽‍💼 👩🏾‍💼 👩🏿‍💼
🧑‍🔬 🧑🏻‍🔬 🧑🏼‍🔬 🧑🏽‍🔬 🧑🏾‍🔬 🧑🏿‍🔬
👨‍🔬 👨🏻‍🔬 👨🏼‍🔬 👨🏽‍🔬 👨🏾‍🔬 👨🏿‍🔬
👩‍🔬 👩🏻‍🔬 👩🏼‍🔬 👩🏽‍🔬 👩🏾‍🔬 👩🏿‍🔬
🧑‍💻 🧑🏻‍💻 🧑🏼‍💻 🧑🏽‍💻 🧑🏾‍💻 🧑🏿‍💻
👨‍💻 👨🏻‍💻 👨🏼‍💻 👨🏽‍💻 👨🏾‍💻 👨🏿‍💻
👩‍💻 👩🏻‍💻 👩🏼‍💻 👩🏽‍💻 👩🏾‍💻 👩🏿‍💻
🧑‍🎤 🧑🏻‍🎤 🧑🏼‍🎤 🧑🏽‍🎤 🧑🏾‍🎤 🧑🏿‍🎤
👨‍🎤 👨🏻‍🎤 👨🏼‍🎤 👨🏽‍🎤 👨🏾‍🎤 👨🏿‍🎤
👩‍🎤 👩🏻‍🎤 👩🏼‍🎤 👩🏽‍🎤 👩🏾‍🎤 👩🏿‍🎤
🧑‍🎨 🧑🏻‍🎨 🧑🏼‍🎨 🧑🏽‍🎨 🧑🏾‍🎨 🧑🏿‍🎨
👨‍🎨 👨🏻‍🎨 👨🏼‍🎨 👨🏽‍🎨 👨🏾‍🎨 👨🏿‍🎨
👩‍🎨 👩🏻‍🎨 👩🏼‍🎨 👩🏽‍🎨 👩🏾‍🎨 👩🏿‍🎨
🧑‍✈️ 🧑🏻‍✈️ 🧑🏼‍✈️ 🧑🏽‍✈️ 🧑🏾‍✈️ 🧑🏿‍✈️
👨‍✈️ 👨🏻‍✈️ 👨🏼‍✈️ 👨🏽‍✈️ 👨🏾‍✈️ 👨🏿‍✈️
👩‍✈️ 👩🏻‍✈️ 👩🏼‍✈️ 👩🏽‍✈️ 👩🏾‍✈️ 👩🏿‍✈️
🧑‍🚀 🧑🏻‍🚀 🧑🏼‍🚀 🧑🏽‍🚀 🧑🏾‍🚀 🧑🏿‍🚀
👨‍🚀 👨🏻‍🚀 👨🏼‍🚀 👨🏽‍🚀 👨🏾‍🚀 👨🏿‍🚀
👩‍🚀 👩🏻‍🚀 👩🏼‍🚀 👩🏽‍🚀 👩🏾‍🚀 👩🏿‍🚀
🧑‍🚒 🧑🏻‍🚒 🧑🏼‍🚒 🧑🏽‍🚒 🧑🏾‍🚒 🧑🏿‍🚒
👨‍🚒 👨🏻‍🚒 👨🏼‍🚒 👨🏽‍🚒 👨🏾‍🚒 👨🏿‍🚒
👩‍🚒 👩🏻‍🚒 👩🏼‍🚒 👩🏽‍🚒 👩🏾‍🚒 👩🏿‍🚒
👮 👮🏻 👮🏼 👮🏽 👮🏾 👮🏿
👮‍♂️ 👮🏻‍♂️ 👮🏼‍♂️ 👮🏽‍♂️ 👮🏾‍♂️ 👮🏿‍♂️
👮‍♀️ 👮🏻‍♀️ 👮🏼‍♀️ 👮🏽‍♀️ 👮🏾‍♀️ 👮🏿‍♀️
🕵️ 🕵🏻 🕵🏼 🕵🏽 🕵🏾 🕵🏿
🕵️‍♂️ 🕵🏻‍♂️ 🕵🏼‍♂️ 🕵🏽‍♂️ 🕵🏾‍♂️ 🕵🏿‍♂️
🕵️‍♀️ 🕵🏻‍♀️ 🕵🏼‍♀️ 🕵🏽‍♀️ 🕵🏾‍♀️ 🕵🏿‍♀️
💂 💂🏻 💂🏼 💂🏽 💂🏾 💂🏿
💂‍♂️ 💂🏻‍♂️ 💂🏼‍♂️ 💂🏽‍♂️ 💂🏾‍♂️ 💂🏿‍♂️
💂‍♀️ 💂🏻‍♀️ 💂🏼‍♀️ 💂🏽‍♀️ 💂🏾‍♀️ 💂🏿‍♀️
🥷 🥷🏻 🥷🏼 🥷🏽 🥷🏾 🥷🏿
👷 👷🏻 👷🏼 👷🏽 👷🏾 👷🏿
👷‍♂️ 👷🏻‍♂️ 👷🏼‍♂️ 👷🏽‍♂️ 👷🏾‍♂️ 👷🏿‍♂️
👷‍♀️ 👷🏻‍♀️ 👷🏼‍♀️ 👷🏽‍♀️ 👷🏾‍♀️ 👷🏿‍♀️
🫅 🫅🏻 🫅🏼 🫅🏽 🫅🏾 🫅🏿
🤴 🤴🏻 🤴🏼 🤴🏽 🤴🏾 🤴🏿
👸 👸🏻 👸🏼 👸🏽 👸🏾 👸🏿
👳 👳🏻 👳🏼 👳🏽 👳🏾 👳🏿
👳‍♂️ 👳🏻‍♂️ 👳🏼‍♂️ 👳🏽‍♂️ 👳🏾‍♂️ 👳🏿‍♂️
👳‍♀️ 👳🏻‍♀️ 👳🏼‍♀️ 👳🏽‍♀️ 👳🏾‍♀️ 👳🏿‍♀️
👲 👲🏻 👲🏼 👲🏽 👲🏾 👲🏿
🧕 🧕🏻 🧕🏼 🧕🏽 🧕🏾 🧕🏿
🤵 🤵🏻 🤵🏼 🤵🏽 🤵🏾 🤵🏿
🤵‍♂️ 🤵🏻‍♂️ 🤵🏼‍♂️ 🤵🏽‍♂️ 🤵🏾‍♂️ 🤵🏿‍♂️
🤵‍♀️ 🤵🏻‍♀️ 🤵🏼‍♀️ 🤵🏽‍♀️ 🤵🏾‍♀️ 🤵🏿‍♀️
👰 👰🏻 👰🏼 👰🏽 👰🏾 👰🏿
👰‍♂️ 👰🏻‍♂️ 👰🏼‍♂️ 👰🏽‍♂️ 👰🏾‍♂️ 👰🏿‍♂️
👰‍♀️ 👰🏻‍♀️ 👰🏼‍♀️ 👰🏽‍♀️ 👰🏾‍♀️ 👰🏿‍♀️
🤰 🤰🏻 🤰🏼 🤰🏽 🤰🏾 🤰🏿
🫃 🫃🏻 🫃🏼 🫃🏽 🫃🏾 🫃🏿
🫄 🫄🏻 🫄🏼 🫄🏽 🫄🏾 🫄🏿
🤱 🤱🏻 🤱🏼 🤱🏽 🤱🏾 🤱🏿
👩‍🍼 👩🏻‍🍼 👩🏼‍🍼 👩🏽‍🍼 👩🏾‍🍼 👩🏿‍🍼
👨‍🍼 👨🏻‍🍼 👨🏼‍🍼 👨🏽‍🍼 👨🏾‍🍼 👨🏿‍🍼
🧑‍🍼 🧑🏻‍🍼 🧑🏼‍🍼 🧑🏽‍🍼 🧑🏾‍🍼 🧑🏿‍🍼
👼 👼🏻 👼🏼 👼🏽 👼🏾 👼🏿
🎅 🎅🏻 🎅🏼 🎅🏽 🎅🏾 🎅🏿
🤶 🤶🏻 🤶🏼 🤶🏽 🤶🏾 🤶🏿
🧑‍🎄 🧑🏻‍🎄 🧑🏼‍🎄 🧑🏽‍🎄 🧑🏾‍🎄 🧑🏿‍🎄
🦸 🦸🏻 🦸🏼 🦸🏽 🦸🏾 🦸🏿
🦸‍♂️ 🦸🏻‍♂️ 🦸🏼‍♂️ 🦸🏽‍♂️ 🦸🏾‍♂️ 🦸🏿‍♂️
🦸‍♀️ 🦸🏻‍♀️ 🦸🏼‍♀️ 🦸🏽‍♀️ 🦸🏾‍♀️ 🦸🏿‍♀️
🦹 🦹🏻 🦹🏼 🦹🏽 🦹🏾 🦹🏿
🦹‍♂️ 🦹🏻‍♂️ 🦹🏼‍♂️ 🦹🏽‍♂️ 🦹🏾‍♂️ 🦹🏿‍♂️
🦹‍♀️ 🦹🏻‍♀️ 🦹🏼‍♀️ 🦹🏽‍♀️ 🦹🏾‍♀️ 🦹🏿‍♀️
🧙 🧙🏻 🧙🏼 🧙🏽 🧙🏾 🧙🏿
🧙‍♂️ 🧙🏻‍♂️ 🧙🏼‍♂️ 🧙🏽‍♂️ 🧙🏾‍♂️ 🧙🏿‍♂️
🧙‍♀️ 🧙🏻‍♀️ 🧙🏼‍♀️ 🧙🏽‍♀️ 🧙🏾‍♀️ 🧙🏿‍♀️
🧚 🧚🏻 🧚🏼 🧚🏽 🧚🏾 🧚🏿
🧚‍♂️ 🧚🏻‍♂️ 🧚🏼‍♂️ 🧚🏽‍♂️ 🧚🏾‍♂️ 🧚🏿‍♂️
🧚‍♀️ 🧚🏻‍♀️ 🧚🏼‍♀️ 🧚🏽‍♀️ 🧚🏾‍♀️ 🧚🏿‍♀️
🧛 🧛🏻 🧛🏼 🧛🏽 🧛🏾 🧛🏿
🧛‍♂️ 🧛🏻‍♂️ 🧛🏼‍♂️ 🧛🏽‍♂️ 🧛🏾‍♂️ 🧛🏿‍♂️
🧛‍♀️ 🧛🏻‍♀️ 🧛🏼‍♀️ 🧛🏽‍♀️ 🧛🏾‍♀️ 🧛🏿‍♀️
🧜 🧜🏻 🧜🏼 🧜🏽 🧜🏾 🧜🏿
🧜‍♂️ 🧜🏻‍♂️ 🧜🏼‍♂️ 🧜🏽‍♂️ 🧜🏾‍♂️ 🧜🏿‍♂️
🧜‍♀️ 🧜🏻‍♀️ 🧜🏼‍♀️ 🧜🏽‍♀️ 🧜🏾‍♀️ 🧜🏿‍♀️
🧝 🧝🏻 🧝🏼 🧝🏽 🧝🏾 🧝🏿
🧝‍♂️ 🧝🏻‍♂️ 🧝🏼‍♂️ 🧝🏽‍♂️ 🧝🏾‍♂️ 🧝🏿‍♂️
🧝‍♀️ 🧝🏻‍♀️ 🧝🏼‍♀️ 🧝🏽‍♀️ 🧝🏾‍♀️ 🧝🏿‍♀️
🧞
🧞‍♂️
🧞‍♀️
🧟
🧟‍♂️
🧟‍♀️
🧌
💆 💆🏻 💆🏼 💆🏽 💆🏾 💆🏿
💆‍♂️ 💆🏻‍♂️ 💆🏼‍♂️ 💆🏽‍♂️ 💆🏾‍♂️ 💆🏿‍♂️
💆‍♀️ 💆🏻‍♀️ 💆🏼‍♀️ 💆🏽‍♀️ 💆🏾‍♀️ 💆🏿‍♀️
💇 💇🏻 💇🏼 💇🏽 💇🏾 💇🏿
💇‍♂️ 💇🏻‍♂️ 💇🏼‍♂️ 💇🏽‍♂️ 💇🏾‍♂️ 💇🏿‍♂️
💇‍♀️ 💇🏻‍♀️ 💇🏼‍♀️ 💇🏽‍♀️ 💇🏾‍♀️ 💇🏿‍♀️
🚶 🚶🏻 🚶🏼 🚶🏽 🚶🏾 🚶🏿
🚶‍♂️ 🚶🏻‍♂️ 🚶🏼‍♂️ 🚶🏽‍♂️ 🚶🏾‍♂️ 🚶🏿‍♂️
🚶‍♀️ 🚶🏻‍♀️ 🚶🏼‍♀️ 🚶🏽‍♀️ 🚶🏾‍♀️ 🚶🏿‍♀️
🚶‍➡️ 🚶🏻‍➡️ 🚶🏼‍➡️ 🚶🏽‍➡️ 🚶🏾‍➡️ 🚶🏿‍➡️
🚶‍♀️‍➡️ 🚶🏻‍♀️‍➡️ 🚶🏼‍♀️‍➡️ 🚶🏽‍♀️‍➡️ 🚶🏾‍♀️‍➡️ 🚶🏿‍♀️‍➡️
🚶‍♂️‍➡️ 🚶🏻‍♂️‍➡️ 🚶🏼‍♂️‍➡️ 🚶🏽‍♂️‍➡️ 🚶🏾‍♂️‍➡️ 🚶🏿‍♂️‍➡️
🧍 🧍🏻 🧍🏼 🧍🏽 🧍🏾 🧍🏿
🧍‍♂️ 🧍🏻‍♂️ 🧍🏼‍♂️ 🧍🏽‍♂️ 🧍🏾‍♂️ 🧍🏿‍♂️
🧍‍♀️ 🧍🏻‍♀️ 🧍🏼‍♀️ 🧍🏽‍♀️ 🧍🏾‍♀️ 🧍🏿‍♀️
🧎 🧎🏻 🧎🏼 🧎🏽 🧎🏾 🧎🏿
🧎‍♂️ 🧎🏻‍♂️ 🧎🏼‍♂️ 🧎🏽‍♂️ 🧎🏾‍♂️ 🧎🏿‍♂️
🧎‍♀️ 🧎🏻‍♀️ 🧎🏼‍♀️ 🧎🏽‍♀️ 🧎🏾‍♀️ 🧎🏿‍♀️
🧎‍➡️ 🧎🏻‍➡️ 🧎🏼‍➡️ 🧎🏽‍➡️ 🧎🏾‍➡️ 🧎🏿‍➡️
🧎‍♀️‍➡️ 🧎🏻‍♀️‍➡️ 🧎🏼‍♀️‍➡️ 🧎🏽‍♀️‍➡️ 🧎🏾‍♀️‍➡️ 🧎🏿‍♀️‍➡️
🧎‍♂️‍➡️ 🧎🏻‍♂️‍➡️ 🧎🏼‍♂️‍➡️ 🧎🏽‍♂️‍➡️ 🧎🏾‍♂️‍➡️ 🧎🏿‍♂️‍➡️
🧑‍🦯 🧑🏻‍🦯 🧑🏼‍🦯 🧑🏽‍🦯 🧑🏾‍🦯 🧑🏿‍🦯
🧑‍🦯‍➡️ 🧑🏻‍🦯‍➡️ 🧑🏼‍🦯‍➡️ 🧑🏽‍🦯‍➡️ 🧑🏾‍🦯‍➡️ 🧑🏿‍🦯‍➡️
👨‍🦯 👨🏻‍🦯 👨🏼‍🦯 👨🏽‍🦯 👨🏾‍🦯 👨🏿‍🦯
👨‍🦯‍➡️ 👨🏻‍🦯‍➡️ 👨🏼‍🦯‍➡️ 👨🏽‍🦯‍➡️ 👨🏾‍🦯‍➡️ 👨🏿‍🦯‍➡️
👩‍🦯 👩🏻‍🦯 👩🏼‍🦯 👩🏽‍🦯 👩🏾‍🦯 👩🏿‍🦯
👩‍🦯‍➡️ 👩🏻‍🦯‍➡️ 👩🏼‍🦯‍➡️ 👩🏽‍🦯‍➡️ 👩🏾‍🦯‍➡️ 👩🏿‍🦯‍➡️
🧑‍🦼 🧑🏻‍🦼 🧑🏼‍🦼 🧑🏽‍🦼 🧑🏾‍🦼 🧑🏿‍🦼
🧑‍🦼‍➡️ 🧑🏻‍🦼‍➡️ 🧑🏼‍🦼‍➡️ 🧑🏽‍🦼‍➡️ 🧑🏾‍🦼‍➡️ 🧑🏿‍🦼‍➡️
👨‍🦼 👨🏻‍🦼 👨🏼‍🦼 👨🏽‍🦼 👨🏾‍🦼 👨🏿‍🦼
👨‍🦼‍➡️ 👨🏻‍🦼‍➡️ 👨🏼‍🦼‍➡️ 👨🏽‍🦼‍➡️ 👨🏾‍🦼‍➡️ 👨🏿‍🦼‍➡️
👩‍🦼 👩🏻‍🦼 👩🏼‍🦼 👩🏽‍🦼 👩🏾‍🦼 👩🏿‍🦼
👩‍🦼‍➡️ 👩🏻‍🦼‍➡️ 👩🏼‍🦼‍➡️ 👩🏽‍🦼‍➡️ 👩🏾‍🦼‍➡️ 👩🏿‍🦼‍➡️
🧑‍🦽 🧑🏻‍🦽 🧑🏼‍🦽 🧑🏽‍🦽 🧑🏾‍🦽 🧑🏿‍🦽
🧑‍🦽‍➡️ 🧑🏻‍🦽‍➡️ 🧑🏼‍🦽‍➡️ 🧑🏽‍🦽‍➡️ 🧑🏾‍🦽‍➡️ 🧑🏿‍🦽‍➡️
👨‍🦽 👨🏻‍🦽 👨🏼‍🦽 👨🏽‍🦽 👨🏾‍🦽 👨🏿‍🦽
👨‍🦽‍➡️ 👨🏻‍🦽‍➡️ 👨🏼‍🦽‍➡️ 👨🏽‍🦽‍➡️ 👨🏾‍🦽‍➡️ 👨🏿‍🦽‍➡️
👩‍🦽 👩🏻‍🦽 👩🏼‍🦽 👩🏽‍🦽 👩🏾‍🦽 👩🏿‍🦽
👩‍🦽‍➡️ 👩🏻‍🦽‍➡️ 👩🏼‍🦽‍➡️ 👩🏽‍🦽‍➡️ 👩🏾‍🦽‍➡️ 👩🏿‍🦽‍➡️
🏃 🏃🏻 🏃🏼 🏃🏽 🏃🏾 🏃🏿
🏃‍♂️ 🏃🏻‍♂️ 🏃🏼‍♂️ 🏃🏽‍♂️ 🏃🏾‍♂️ 🏃🏿‍♂️
🏃‍♀️ 🏃🏻‍♀️ 🏃🏼‍♀️ 🏃🏽‍♀️ 🏃🏾‍♀️ 🏃🏿‍♀️
🏃‍➡️ 🏃🏻‍➡️ 🏃🏼‍➡️ 🏃🏽‍➡️ 🏃🏾‍➡️ 🏃🏿‍➡️
🏃‍♀️‍➡️ 🏃🏻‍♀️‍➡️ 🏃🏼‍♀️‍➡️ 🏃🏽‍♀️‍➡️ 🏃🏾‍♀️‍➡️ 🏃🏿‍♀️‍➡️
🏃‍♂️‍➡️ 🏃🏻‍♂️‍➡️ 🏃🏼‍♂️‍➡️ 🏃🏽‍♂️‍➡️ 🏃🏾‍♂️‍➡️ 🏃🏿‍♂️‍➡️
💃 💃🏻 💃🏼 💃🏽 💃🏾 💃🏿
🕺 🕺🏻 🕺🏼 🕺🏽 🕺🏾 🕺🏿
🕴️ 🕴🏻 🕴🏼 🕴🏽 🕴🏾 🕴🏿
👯
👯‍♂️
👯‍♀️
🧖 🧖🏻 🧖🏼 🧖🏽 🧖🏾 🧖🏿
🧖‍♂️ 🧖🏻‍♂️ 🧖🏼‍♂️ 🧖🏽‍♂️ 🧖🏾‍♂️ 🧖🏿‍♂️
🧖‍♀️ 🧖🏻‍♀️ 🧖🏼‍♀️ 🧖🏽‍♀️ 🧖🏾‍♀️ 🧖🏿‍♀️
🧗 🧗🏻 🧗🏼 🧗🏽 🧗🏾 🧗🏿
🧗‍♂️ 🧗🏻‍♂️ 🧗🏼‍♂️ 🧗🏽‍♂️ 🧗🏾‍♂️ 🧗🏿‍♂️
🧗‍♀️ 🧗🏻‍♀️ 🧗🏼‍♀️ 🧗🏽‍♀️ 🧗🏾‍♀️ 🧗🏿‍♀️
🤺
🏇 🏇🏻 🏇🏼 🏇🏽 🏇🏾 🏇🏿
⛷️
🏂 🏂🏻 🏂🏼 🏂🏽 🏂🏾 🏂🏿
🏌️ 🏌🏻 🏌🏼 🏌🏽 🏌🏾 🏌🏿
🏌️‍♂️ 🏌🏻‍♂️ 🏌🏼‍♂️ 🏌🏽‍♂️ 🏌🏾‍♂️ 🏌🏿‍♂️
🏌️‍♀️ 🏌🏻‍♀️ 🏌🏼‍♀️ 🏌🏽‍♀️ 🏌🏾‍♀️ 🏌🏿‍♀️
🏄 🏄🏻 🏄🏼 🏄🏽 🏄🏾 🏄🏿
🏄‍♂️ 🏄🏻‍♂️ 🏄🏼‍♂️ 🏄🏽‍♂️ 🏄🏾‍♂️ 🏄🏿‍♂️
🏄‍♀️ 🏄🏻‍♀️ 🏄🏼‍♀️ 🏄🏽‍♀️ 🏄🏾‍♀️ 🏄🏿‍♀️
🚣 🚣🏻 🚣🏼 🚣🏽 🚣🏾 🚣🏿
🚣‍♂️ 🚣🏻‍♂️ 🚣🏼‍♂️ 🚣🏽‍♂️ 🚣🏾‍♂️ 🚣🏿‍♂️
🚣‍♀️ 🚣🏻‍♀️ 🚣🏼‍♀️ 🚣🏽‍♀️ 🚣🏾‍♀️ 🚣🏿‍♀️
🏊 🏊🏻 🏊🏼 🏊🏽 🏊🏾 🏊🏿
🏊‍♂️ 🏊🏻‍♂️ 🏊🏼‍♂️ 🏊🏽‍♂️ 🏊🏾‍♂️ 🏊🏿‍♂️
🏊‍♀️ 🏊🏻‍♀️ 🏊🏼‍♀️ 🏊🏽‍♀️ 🏊🏾‍♀️ 🏊🏿‍♀️
⛹️ ⛹🏻 ⛹🏼 ⛹🏽 ⛹🏾 ⛹🏿
⛹️‍♂️ ⛹🏻‍♂️ ⛹🏼‍♂️ ⛹🏽‍♂️ ⛹🏾‍♂️ ⛹🏿‍♂️
⛹️‍♀️ ⛹🏻‍♀️ ⛹🏼‍♀️ ⛹🏽‍♀️ ⛹🏾‍♀️ ⛹🏿‍♀️
🏋️ 🏋🏻 🏋🏼 🏋🏽 🏋🏾 🏋🏿
🏋️‍♂️ 🏋🏻‍♂️ 🏋🏼‍♂️ 🏋🏽‍♂️ 🏋🏾‍♂️ 🏋🏿‍♂️
🏋️‍♀️ 🏋🏻‍♀️ 🏋🏼‍♀️ 🏋🏽‍♀️ 🏋🏾‍♀️ 🏋🏿‍♀️
🚴 🚴🏻 🚴🏼 🚴🏽 🚴🏾 🚴🏿
🚴‍♂️ 🚴🏻‍♂️ 🚴🏼‍♂️ 🚴🏽‍♂️ 🚴🏾‍♂️ 🚴🏿‍♂️
🚴‍♀️ 🚴🏻‍♀️ 🚴🏼‍♀️ 🚴🏽‍♀️ 🚴🏾‍♀️ 🚴🏿‍♀️
🚵 🚵🏻 🚵🏼 🚵🏽 🚵🏾 🚵🏿
🚵‍♂️ 🚵🏻‍♂️ 🚵🏼‍♂️ 🚵🏽‍♂️ 🚵🏾‍♂️ 🚵🏿‍♂️
🚵‍♀️ 🚵🏻‍♀️ 🚵🏼‍♀️ 🚵🏽‍♀️ 🚵🏾‍♀️ 🚵🏿‍♀️
🤸 🤸🏻 🤸🏼 🤸🏽 🤸🏾 🤸🏿
🤸‍♂️ 🤸🏻‍♂️ 🤸🏼‍♂️ 🤸🏽‍♂️ 🤸🏾‍♂️ 🤸🏿‍♂️
🤸‍♀️ 🤸🏻‍♀️ 🤸🏼‍♀️ 🤸🏽‍♀️ 🤸🏾‍♀️ 🤸🏿‍♀️
🤼
🤼‍♂️
🤼‍♀️
🤽 🤽🏻 🤽🏼 🤽🏽 🤽🏾 🤽🏿
🤽‍♂️ 🤽🏻‍♂️ 🤽🏼‍♂️ 🤽🏽‍♂️ 🤽🏾‍♂️ 🤽🏿‍♂️
🤽‍♀️ 🤽🏻‍♀️ 🤽🏼‍♀️ 🤽🏽‍♀️ 🤽🏾‍♀️ 🤽🏿‍♀️
🤾 🤾🏻 🤾🏼 🤾🏽 🤾🏾 🤾🏿
🤾‍♂️ 🤾🏻‍♂️ 🤾🏼‍♂️ 🤾🏽‍♂️ 🤾🏾‍♂️ 🤾🏿‍♂️
🤾‍♀️ 🤾🏻‍♀️ 🤾🏼‍♀️ 🤾🏽‍♀️ 🤾🏾‍♀️ 🤾🏿‍♀️
🤹 🤹🏻 🤹🏼 🤹🏽 🤹🏾 🤹🏿
🤹‍♂️ 🤹🏻‍♂️ 🤹🏼‍♂️ 🤹🏽‍♂️ 🤹🏾‍♂️ 🤹🏿‍♂️
🤹‍♀️ 🤹🏻‍♀️ 🤹🏼‍♀️ 🤹🏽‍♀️ 🤹🏾‍♀️ 🤹🏿‍♀️
🧘 🧘🏻 🧘🏼 🧘🏽 🧘🏾 🧘🏿
🧘‍♂️ 🧘🏻‍♂️ 🧘🏼‍♂️ 🧘🏽‍♂️ 🧘🏾‍♂️ 🧘🏿‍♂️
🧘‍♀️ 🧘🏻‍♀️ 🧘🏼‍♀️ 🧘🏽‍♀️ 🧘🏾‍♀️ 🧘🏿‍♀️
🛀 🛀🏻 🛀🏼 🛀🏽 🛀🏾 🛀🏿
🛌 🛌🏻 🛌🏼 🛌🏽 🛌🏾 🛌🏿
🧑‍🤝‍🧑 🧑🏻‍🤝‍🧑🏻 🧑🏻‍🤝‍🧑🏼 🧑🏻‍🤝‍🧑🏽 🧑🏻‍🤝‍🧑🏾 🧑🏻‍🤝‍🧑🏿 🧑🏼‍🤝‍🧑🏻 🧑🏼‍🤝‍🧑🏼 🧑🏼‍🤝‍🧑🏽 🧑🏼‍🤝‍🧑🏾 🧑🏼‍🤝‍🧑🏿 🧑🏽‍🤝‍🧑🏻 🧑🏽‍🤝‍🧑🏼 🧑🏽‍🤝‍🧑🏽 🧑🏽‍🤝‍🧑🏾 🧑🏽‍🤝‍🧑🏿 🧑🏾‍🤝‍🧑🏻 🧑🏾‍🤝‍🧑🏼 🧑🏾‍🤝‍🧑🏽 🧑🏾‍🤝‍🧑🏾 🧑🏾‍🤝‍🧑🏿 🧑🏿‍🤝‍🧑🏻 🧑🏿‍🤝‍🧑🏼 🧑🏿‍🤝‍🧑🏽 🧑🏿‍🤝‍🧑🏾 🧑🏿‍🤝‍🧑🏿
👭 👭🏻 👭🏼 👭🏽 👭🏾 👭🏿
👫 👫🏻 👫🏼 👫🏽 👫🏾 👫🏿
👬 👬🏻 👬🏼 👬🏽 👬🏾 👬🏿
💏 💏🏻 💏🏼 💏🏽 💏🏾 💏🏿
👩‍❤️‍💋‍👨 👩🏻‍❤️‍💋‍👨🏻 👩🏻‍❤️‍💋‍👨🏼 👩🏻‍❤️‍💋‍👨🏽 👩🏻‍❤️‍💋‍👨🏾 👩🏻‍❤️‍💋‍👨🏿 👩🏼‍❤️‍💋‍👨🏻 👩🏼‍❤️‍💋‍👨🏼 👩🏼‍❤️‍💋‍👨🏽 👩🏼‍❤️‍💋‍👨🏾 👩🏼‍❤️‍💋‍👨🏿 👩🏽‍❤️‍💋‍👨🏻 👩🏽‍❤️‍💋‍👨🏼 👩🏽‍❤️‍💋‍👨🏽 👩🏽‍❤️‍💋‍👨🏾 👩🏽‍❤️‍💋‍👨🏿 👩🏾‍❤️‍💋‍👨🏻 👩🏾‍❤️‍💋‍👨🏼 👩🏾‍❤️‍💋‍👨🏽 👩🏾‍❤️‍💋‍👨🏾 👩🏾‍❤️‍💋‍👨🏿 👩🏿‍❤️‍💋‍👨🏻 👩🏿‍❤️‍💋‍👨🏼 👩🏿‍❤️‍💋‍👨🏽 👩🏿‍❤️‍💋‍👨🏾 👩🏿‍❤️‍💋‍👨🏿
👨‍❤️‍💋‍👨 👨🏻‍❤️‍💋‍👨🏻 👨🏻‍❤️‍💋‍👨🏼 👨🏻‍❤️‍💋‍👨🏽 👨🏻‍❤️‍💋‍👨🏾 👨🏻‍❤️‍💋‍👨🏿 👨🏼‍❤️‍💋‍👨🏻 👨🏼‍❤️‍💋‍👨🏼 👨🏼‍❤️‍💋‍👨🏽 👨🏼‍❤️‍💋‍👨🏾 👨🏼‍❤️‍💋‍👨🏿 👨🏽‍❤️‍💋‍👨🏻 👨🏽‍❤️‍💋‍👨🏼 👨🏽‍❤️‍💋‍👨🏽 👨🏽‍❤️‍💋‍👨🏾 👨🏽‍❤️‍💋‍👨🏿 👨🏾‍❤️‍💋‍👨🏻 👨🏾‍❤️‍💋‍👨🏼 👨🏾‍❤️‍💋‍👨🏽 👨🏾‍❤️‍💋‍👨🏾 👨🏾‍❤️‍💋‍👨🏿 👨🏿‍❤️‍💋‍👨🏻 👨🏿‍❤️‍💋‍👨🏼 👨🏿‍❤️‍💋‍👨🏽 👨🏿‍❤️‍💋‍👨🏾 👨🏿‍❤️‍💋‍👨🏿
👩‍❤️‍💋‍👩 👩🏻‍❤️‍💋‍👩🏻 👩🏻‍❤️‍💋‍👩🏼 👩🏻‍❤️‍💋‍👩🏽 👩🏻‍❤️‍💋‍👩🏾 👩🏻‍❤️‍💋‍👩🏿 👩🏼‍❤️‍💋‍👩🏻 👩🏼‍❤️‍💋‍👩🏼 👩🏼‍❤️‍💋‍👩🏽 👩🏼‍❤️‍💋‍👩🏾 👩🏼‍❤️‍💋‍👩🏿 👩🏽‍❤️‍💋‍👩🏻 👩🏽‍❤️‍💋‍👩🏼 👩🏽‍❤️‍💋‍👩🏽 👩🏽‍❤️‍💋‍👩🏾 👩🏽‍❤️‍💋‍👩🏿 👩🏾‍❤️‍💋‍👩🏻 👩🏾‍❤️‍💋‍👩🏼 👩🏾‍❤️‍💋‍👩🏽 👩🏾‍❤️‍💋‍👩🏾 👩🏾‍❤️‍💋‍👩🏿 👩🏿‍❤️‍💋‍👩🏻 👩🏿‍❤️‍💋‍👩🏼 👩🏿‍❤️‍💋‍👩🏽 👩🏿‍❤️‍💋‍👩🏾 👩🏿‍❤️‍💋‍👩🏿
💑 💑🏻 💑🏼 💑🏽 💑🏾 💑🏿
👩‍❤️‍👨 👩🏻‍❤️‍👨🏻 👩🏻‍❤️‍👨🏼 👩🏻‍❤️‍👨🏽 👩🏻‍❤️‍👨🏾 👩🏻‍❤️‍👨🏿 👩🏼‍❤️‍👨🏻 👩🏼‍❤️‍👨🏼 👩🏼‍❤️‍👨🏽 👩🏼‍❤️‍👨🏾 👩🏼‍❤️‍👨🏿 👩🏽‍❤️‍👨🏻 👩🏽‍❤️‍👨🏼 👩🏽‍❤️‍👨🏽 👩🏽‍❤️‍👨🏾 👩🏽‍❤️‍👨🏿 👩🏾‍❤️‍👨🏻 👩🏾‍❤️‍👨🏼 👩🏾‍❤️‍👨🏽 👩🏾‍❤️‍👨🏾 👩🏾‍❤️‍👨🏿 👩🏿‍❤️‍👨🏻 👩🏿‍❤️‍👨🏼 👩🏿‍❤️‍👨🏽 👩🏿‍❤️‍👨🏾 👩🏿‍❤️‍👨🏿
👨‍❤️‍👨 👨🏻‍❤️‍👨🏻 👨🏻‍❤️‍👨🏼 👨🏻‍❤️‍👨🏽 👨🏻‍❤️‍👨🏾 👨🏻‍❤️‍👨🏿 👨🏼‍❤️‍👨🏻 👨🏼‍❤️‍👨🏼 👨🏼‍❤️‍👨🏽 👨🏼‍❤️‍👨🏾 👨🏼‍❤️‍👨🏿 👨🏽‍❤️‍👨🏻 👨🏽‍❤️‍👨🏼 👨🏽‍❤️‍👨🏽 👨🏽‍❤️‍👨🏾 👨🏽‍❤️‍👨🏿 👨🏾‍❤️‍👨🏻 👨🏾‍❤️‍👨🏼 👨🏾‍❤️‍👨🏽 👨🏾‍❤️‍👨🏾 👨🏾‍❤️‍👨🏿 👨🏿‍❤️‍👨🏻 👨🏿‍❤️‍👨🏼 👨🏿‍❤️‍👨🏽 👨🏿‍❤️‍👨🏾 👨🏿‍❤️‍👨🏿
👩‍❤️‍👩 👩🏻‍❤️‍👩🏻 👩🏻‍❤️‍👩🏼 👩🏻‍❤️‍👩🏽 👩🏻‍❤️‍👩🏾 👩🏻‍❤️‍👩🏿 👩🏼‍❤️‍👩🏻 👩🏼‍❤️‍👩🏼 👩🏼‍❤️‍👩🏽 👩🏼‍❤️‍👩🏾 👩🏼‍❤️‍👩🏿 👩🏽‍❤️‍👩🏻 👩🏽‍❤️‍👩🏼 👩🏽‍❤️‍👩🏽 👩🏽‍❤️‍👩🏾 👩🏽‍❤️‍👩🏿 👩🏾‍❤️‍👩🏻 👩🏾‍❤️‍👩🏼 👩🏾‍❤️‍👩🏽 👩🏾‍❤️‍👩🏾 👩🏾‍❤️‍👩🏿 👩🏿‍❤️‍👩🏻 👩🏿‍❤️‍👩🏼 👩🏿‍❤️‍👩🏽 👩🏿‍❤️‍👩🏾 👩🏿‍❤️‍👩🏿
👨‍👩‍👦
👨‍👩‍👧
👨‍👩‍👧‍👦
👨‍👩‍👦‍👦
👨‍👩‍👧‍👧
👨‍👨‍👦
👨‍👨‍👧
👨‍👨‍👧‍👦
👨‍👨‍👦‍👦
👨‍👨‍👧‍👧
👩‍👩‍👦
👩‍👩‍👧
👩‍👩‍👧‍👦
👩‍👩‍👦‍👦
👩‍👩‍👧‍👧
👨‍👦
👨‍👦‍👦
👨‍👧
👨‍👧‍👦
👨‍👧‍👧
👩‍👦
👩‍👦‍👦
👩‍👧
👩‍👧‍👦
👩‍👧‍👧
🗣️
👤
👥
🫂
👪
🧑‍🧑‍🧒
🧑‍🧑‍🧒‍🧒
🧑‍🧒
🧑‍🧒‍🧒
👣
🫆

View file

@ -0,0 +1,169 @@
😀
😃
😄
😁
😆
😅
🤣
😂
🙂
🙃
🫠
😉
😊
😇
🥰
😍
🤩
😘
😗
☺️
😚
😙
🥲
😋
😛
😜
🤪
😝
🤑
🤗
🤭
🫢
🫣
🤫
🤔
🫡
🤐
🤨
😐
😑
😶
🫥
😶‍🌫️
😏
😒
🙄
😬
😮‍💨
🤥
🫨
🙂‍↔️
🙂‍↕️
😌
😔
😪
🤤
😴
🫩
😷
🤒
🤕
🤢
🤮
🤧
🥵
🥶
🥴
😵
😵‍💫
🤯
🤠
🥳
🥸
😎
🤓
🧐
😕
🫤
😟
🙁
☹️
😮
😯
😲
😳
🥺
🥹
😦
😧
😨
😰
😥
😢
😭
😱
😖
😣
😞
😓
😩
😫
🥱
😤
😡
😠
🤬
😈
👿
💀
☠️
💩
🤡
👹
👺
👻
👽
👾
🤖
😺
😸
😹
😻
😼
😽
🙀
😿
😾
🙈
🙉
🙊
💌
💘
💝
💖
💗
💓
💞
💕
💟
❣️
💔
❤️‍🔥
❤️‍🩹
❤️
🩷
🧡
💛
💚
💙
🩵
💜
🤎
🖤
🩶
🤍
💋
💯
💢
💥
💫
💦
💨
🕳️
💬
👁️‍🗨️
🗨️
🗯️
💭
💤

View file

@ -0,0 +1,224 @@
🏧
🚮
🚰
🚹
🚺
🚻
🚼
🚾
🛂
🛃
🛄
🛅
⚠️
🚸
🚫
🚳
🚭
🚯
🚱
🚷
📵
🔞
☢️
☣️
⬆️
↗️
➡️
↘️
⬇️
↙️
⬅️
↖️
↕️
↔️
↩️
↪️
⤴️
⤵️
🔃
🔄
🔙
🔚
🔛
🔜
🔝
🛐
⚛️
🕉️
✡️
☸️
☯️
✝️
☦️
☪️
☮️
🕎
🔯
🪯
🔀
🔁
🔂
▶️
⏭️
⏯️
◀️
⏮️
🔼
🔽
⏸️
⏹️
⏺️
⏏️
🎦
🔅
🔆
📶
🛜
📳
📴
♀️
♂️
⚧️
✖️
🟰
♾️
‼️
⁉️
〰️
💱
💲
⚕️
♻️
⚜️
🔱
📛
🔰
☑️
✔️
〽️
✳️
✴️
❇️
©️
®️
™️
🫟
#️⃣
*️⃣
0
1
2
3
4
5
6
7
8
9
🔟
🔠
🔡
🔢
🔣
🔤
🅰️
🆎
🅱️
🆑
🆒
🆓
🆔
Ⓜ️
🆕
🆖
🅾️
🆗
🅿️
🆘
🆙
🆚
🈁
🈂️
🈷️
🈶
🈯
🉐
🈹
🈚
🈲
🉑
🈸
🈴
🈳
㊗️
㊙️
🈺
🈵
🔴
🟠
🟡
🟢
🔵
🟣
🟤
🟥
🟧
🟨
🟩
🟦
🟪
🟫
◼️
◻️
▪️
▫️
🔶
🔷
🔸
🔹
🔺
🔻
💠
🔘
🔳
🔲

View file

@ -0,0 +1,218 @@
🌍
🌎
🌏
🌐
🗺️
🗾
🧭
🏔️
⛰️
🌋
🗻
🏕️
🏖️
🏜️
🏝️
🏞️
🏟️
🏛️
🏗️
🧱
🪨
🪵
🛖
🏘️
🏚️
🏠
🏡
🏢
🏣
🏤
🏥
🏦
🏨
🏩
🏪
🏫
🏬
🏭
🏯
🏰
💒
🗼
🗽
🕌
🛕
🕍
⛩️
🕋
🌁
🌃
🏙️
🌄
🌅
🌆
🌇
🌉
♨️
🎠
🛝
🎡
🎢
💈
🎪
🚂
🚃
🚄
🚅
🚆
🚇
🚈
🚉
🚊
🚝
🚞
🚋
🚌
🚍
🚎
🚐
🚑
🚒
🚓
🚔
🚕
🚖
🚗
🚘
🚙
🛻
🚚
🚛
🚜
🏎️
🏍️
🛵
🦽
🦼
🛺
🚲
🛴
🛹
🛼
🚏
🛣️
🛤️
🛢️
🛞
🚨
🚥
🚦
🛑
🚧
🛟
🛶
🚤
🛳️
⛴️
🛥️
🚢
✈️
🛩️
🛫
🛬
🪂
💺
🚁
🚟
🚠
🚡
🛰️
🚀
🛸
🛎️
🧳
⏱️
⏲️
🕰️
🕛
🕧
🕐
🕜
🕑
🕝
🕒
🕞
🕓
🕟
🕔
🕠
🕕
🕡
🕖
🕢
🕗
🕣
🕘
🕤
🕙
🕥
🕚
🕦
🌑
🌒
🌓
🌔
🌕
🌖
🌗
🌘
🌙
🌚
🌛
🌜
🌡️
☀️
🌝
🌞
🪐
🌟
🌠
🌌
☁️
⛈️
🌤️
🌥️
🌦️
🌧️
🌨️
🌩️
🌪️
🌫️
🌬️
🌀
🌈
🌂
☂️
⛱️
❄️
☃️
☄️
🔥
💧
🌊

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,7 @@
[
[
{ "label": "alpha", "width": 0.15 },
{ "label": "space", "width": -1 },
{ "label": "delete", "width": 0.15 }
]
]

View file

@ -0,0 +1,7 @@
[
[
{ "label": "alpha", "width": 0.15 },
{ "label": "space", "width": -1 },
{ "label": "delete", "width": 0.15 }
]
]

View file

@ -0,0 +1,21 @@
[
[
{ "label": "shift", "width": 0.15 },
{ "type": "placeholder" },
{ "label": "delete", "width": 0.15 }
],
[
{ "label": "symbol_alpha", "width": 0.15 },
{ "$": "variation_selector",
"default": { "label": "comma" },
"email": { "label": "@", "groupId": 1, "type": "function" },
"uri": { "label": "/", "groupId": 1, "type": "function" }
},
{ "$": "keyboard_state_selector", "languageKeyEnabled": { "$": "keyboard_state_selector", "alphabet": { "label": "language_switch" }}},
{ "$": "keyboard_state_selector", "emojiKeyEnabled": { "$": "keyboard_state_selector", "alphabet": { "label": "emoji" }}},
{ "$": "keyboard_state_selector", "symbols": { "label": "numpad" }},
{ "label": "space" },
{ "label": "period", "labelFlags": 1073741824 },
{ "label": "action", "width": 0.15 }
]
]

View file

@ -0,0 +1,36 @@
[
[
{ "type": "placeholder" },
{ "label": "delete", "width": 0.1 }
],
[
{ "type": "placeholder" }
],
[
{ "type": "placeholder" },
{ "label": "action", "width": 0.1 }
],
[
{ "label": "shift", "width": 0.1 },
{ "type": "placeholder" },
{ "label": "shift" }
],
[
{ "label": "symbol_alpha" },
{ "$": "variation_selector",
"default": { "label": "comma" },
"email": { "label": "@", "groupId": 1, "type": "function" },
"uri": { "label": "/", "groupId": 1, "type": "function" }
},
{ "$": "keyboard_state_selector", "languageKeyEnabled": { "$": "keyboard_state_selector", "alphabet": { "label": "language_switch" }}},
{ "$": "keyboard_state_selector", "emojiKeyEnabled": { "$": "keyboard_state_selector", "alphabet": { "label": "emoji" }}},
{ "$": "keyboard_state_selector", "symbols": { "label": "numpad" }},
{ "label": "space" },
{ "label": "period" },
{ "$": "variation_selector",
"default": { "label": "emoji" },
"email": { "label": "com" },
"uri": { "label": "com" }
}
]
]

View file

@ -0,0 +1,28 @@
ɛ q
w
e
r
t
y
u
i
o
p
a
s
d
f
g
h
j
k
l
z
ɔ x
c ¢
v
b
n
m

View file

@ -0,0 +1,34 @@
ض
ص
ث
ق
ف
غ
ع
ه
خ
ح
ج
ش
س
ي
ب
ل
ا
ت
ن
م
ك
ط
ذ
ء
ؤ
ر
ى
ة
و
ز
ظ
د

View file

@ -0,0 +1,34 @@
ز
ر
ذ
د
خ
ح
ج
ث
ت
ب
ا
ك
ق
ف
غ
ع
ظ
ط
ض
ص
ش
س
ء
ى
ي
ؤ
و
ة
ن
م
ل

View file

@ -0,0 +1,31 @@
ض
ص
ق
ف
غ
ع
ه
خ
ح
ج
ش
س
ي
ب
ل
ا
ت
ن
م
ك
ظ
ط
ذ
د
ز
ر
و
ة
ث

View file

@ -0,0 +1,41 @@
է
թ
փ
ձ
ջ
ր
չ
ճ
ժ
ծ
ք
ո
ե և
ռ
տ
ը
ւ
ի
օ
պ
ա
ս
դ $$$
ֆ
գ
հ
յ
կ
լ
խ
զ
ղ
ց
վ
բ
ն
մ
շ

View file

@ -0,0 +1,38 @@
[
[
{ "label": "a" },
{ "label": "z" },
{ "label": "e" },
{ "label": "r" },
{ "label": "t" },
{ "label": "y" },
{ "label": "u" },
{ "label": "i" },
{ "label": "o" },
{ "label": "p" }
],
[
{ "label": "q" },
{ "label": "s" },
{ "label": "d" },
{ "label": "f" },
{ "label": "g" },
{ "label": "h" },
{ "label": "j" },
{ "label": "k" },
{ "label": "l" },
{ "label": "m" }
],
[
{ "label": "w" },
{ "label": "x" },
{ "label": "c" },
{ "label": "v" },
{ "label": "b" },
{ "label": "n" },
{ "$": "shift_state_selector",
"shiftedManual": { "label": "?" },
"default": { "label": "'" }
}
]
]

View file

@ -0,0 +1,33 @@
й
ц
у
к
е
н
г
ш
ў
з
х
ф
ы
в
а
п
р
о
л
д
ж
э
я
ч
с
м
і
т
ь
б <
ю >

View file

@ -0,0 +1,29 @@
q
w
e
r
t
y
u
i
o
p
ŋ
a
s
d
f
g
h
j
k
l
z
x
c
v
b
n
m

View file

@ -0,0 +1,132 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ" },
"default": { "label": "ধ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঠ" },
"default": { "label": "থ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৈ" },
"default": { "label": "ে" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ড়" },
"default": { "label": "র" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ট" },
"default": { "label": "ত" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঞ" },
"default": { "label": "য়" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ূ" },
"default": { "label": "ু" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ী" },
"default": { "label": "ি" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৌ" },
"default": { "label": "ো" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ফ" },
"default": { "label": "প" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঋ" },
"default": { "label": "আ" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "অ" },
"default": { "label": "া" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "শ" },
"default": { "label": "স" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ড" },
"default": { "label": "দ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ়" },
"default": { "label": "ৃ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঘ" },
"default": { "label": "গ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "হ" },
"default": { "label": "্" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঝ" },
"default": { "label": "জ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "খ" },
"default": { "label": "ক" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৎ" },
"default": { "label": "ল" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঈ" },
"default": { "label": "ই" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঊ" },
"default": { "label": "উ" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "।", "popup": { "main": { "label": "॥" } }, "labelFlags": 1073741824 },
"default": { "label": "য" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঙ" },
"default": { "label": "ষ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ছ" },
"default": { "label": "চ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঃ" },
"default": { "label": "ভ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঁ" },
"default": { "label": "ব" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ণ" },
"default": { "label": "ন" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ং" },
"default": { "label": "ম" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঐ" },
"default": { "label": "এ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঔ" },
"default": { "label": "ও" }
}
]
]

View file

@ -0,0 +1,127 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ", "labelFlags": 1073741824 },
"default": { "label": "ড", "popup": { "relevant": [{ "label": "ঢ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ূ", "labelFlags": 1073741824 },
"default": { "label": "ী", "popup": { "relevant": [{ "label": "ূ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "এ", "labelFlags": 1073741824 },
"default": { "label": "ে", "popup": { "relevant": [{ "label": "ঐ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৃ", "labelFlags": 1073741824 },
"default": { "label": "র", "popup": { "main": { "label": "ঋ" }, "relevant": [{ "label": "র‍্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঠ", "labelFlags": 1073741824 },
"default": { "label": "ট", "popup": { "relevant": [{ "label": "ঠ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "য়", "labelFlags": 1073741824 },
"default": { "label": "য", "popup": { "relevant": [{ "label": "য়" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "উ", "labelFlags": 1073741824 },
"default": { "label": "ু", "popup": { "relevant": [{ "label": "ঊ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ই", "labelFlags": 1073741824 },
"default": { "label": "ি", "popup": { "relevant": [{ "label": "ঈ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ও", "labelFlags": 1073741824 },
"default": { "label": "ো", "popup": { "relevant": [{ "label": "ঔ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ফ", "labelFlags": 1073741824 },
"default": { "label": "প", "popup": { "relevant": [{ "label": "ফ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "অ", "labelFlags": 1073741824 },
"default": { "label": "া", "popup": { "relevant": [{ "label": "আ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "শ", "labelFlags": 1073741824 },
"default": { "label": "স", "popup": { "relevant": [{ "label": "ষ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ধ", "labelFlags": 1073741824 },
"default": { "label": "দ", "popup": { "relevant": [{ "label": "ধ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "থ", "labelFlags": 1073741824 },
"default": { "label": "ত", "popup": { "main": { "label": "থ" }, "relevant": [{ "label": "ৎ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঘ", "labelFlags": 1073741824 },
"default": { "label": "গ", "popup": { "relevant": [{ "label": "ঘ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "হ", "labelFlags": 1073741824 },
"default": { "label": "্", "popup": { "relevant": [{ "label": "ঃ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঝ", "labelFlags": 1073741824 },
"default": { "label": "জ", "popup": { "relevant": [{ "label": "ঝ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "খ", "labelFlags": 1073741824 },
"default": { "label": "ক", "popup": { "relevant": [{ "label": "খ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ং", "labelFlags": 1073741824 },
"default": { "label": "ল", "popup": { "relevant": [{ "label": "ং" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৌ", "labelFlags": 1073741824 },
"default": { "label": "ৈ", "popup": { "relevant": [{ "label": "ৌ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ়", "labelFlags": 1073741824 },
"default": { "label": "ড়", "popup": { "relevant": [{ "label": "ঢ়" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ছ", "labelFlags": 1073741824 },
"default": { "label": "চ", "popup": { "relevant": [{ "label": "ছ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঁ", "labelFlags": 1073741824, "popup": { "relevant": [
{ "label": "!autoColumnOrder!6" },
{ "label": "়" },
{ "label": "ৄ" },
{ "label": "ঽ" },
{ "label": "ৢ" },
{ "label": "ৱ" },
{ "label": "ৣ" },
{ "label": "ৗ" },
{ "label": "ৠ" },
{ "label": "৺" },
{ "label": "ঌ" },
{ "label": "ৰ" },
{ "label": "ৡ"}
]}},
"default": { "label": "ঞ", "popup": { "relevant": [{ "label": "ঁ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ভ", "labelFlags": 1073741824 },
"default": { "label": "ব", "popup": { "relevant": [{ "label": "ভ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ণ", "labelFlags": 1073741824 },
"default": { "label": "ন", "popup": { "relevant": [{ "label": "ণ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঙ", "labelFlags": 1073741824 },
"default": { "label": "ম", "popup": { "relevant": [{ "label": "ঁ" }]}}
}
]
]

View file

@ -0,0 +1,142 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঔ", "labelFlags": 1073741824 },
"default": { "label": "ৌ", "popup": { "relevant": [{"label": "ঔ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঐ", "labelFlags": 1073741824 },
"default": { "label": "ৈ", "popup": { "relevant": [{"label": "ঐ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "আ", "labelFlags": 1073741824 },
"default": { "label": "া", "popup": { "relevant": [{"label": "আ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঈ", "labelFlags": 1073741824 },
"default": { "label": "ী", "popup": { "relevant": [{"label": "ঈ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঊ", "labelFlags": 1073741824 },
"default": { "label": "ূ", "popup": { "relevant": [{"label": "ঊ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ভ", "labelFlags": 1073741824 },
"default": { "label": "ব", "popup": { "relevant": [{"label": "ভ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঙ", "labelFlags": 1073741824 },
"default": { "label": "হ", "popup": { "relevant": [{"label": "ঙ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঘ", "labelFlags": 1073741824 },
"default": { "label": "গ", "popup": { "relevant": [{"label": "ঘ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ধ", "labelFlags": 1073741824 },
"default": { "label": "দ", "popup": { "relevant": [{"label": "ধ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঝ", "labelFlags": 1073741824 },
"default": { "label": "জ", "popup": { "relevant": [{"label": "ঝ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ", "labelFlags": 1073741824 },
"default": { "label": "ড", "popup": { "relevant": [{"label": "ঢ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ও", "labelFlags": 1073741824 },
"default": { "label": "ো", "popup": { "relevant": [{"label": "ও" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "এ", "labelFlags": 1073741824 },
"default": { "label": "ে", "popup": { "relevant": [{"label": "এ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "অ", "labelFlags": 1073741824 },
"default": { "label": "্", "popup": { "relevant": [{"label": "অ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ই", "labelFlags": 1073741824 },
"default": { "label": "ি", "popup": { "relevant": [{"label": "ই" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "উ", "labelFlags": 1073741824 },
"default": { "label": "ু", "popup": { "relevant": [{"label": "উ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ফ", "labelFlags": 1073741824 },
"default": { "label": "প", "popup": { "relevant": [{"label": "ফ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ড়", "labelFlags": 1073741824 },
"default": { "label": "র", "popup": { "main": { "label": "ড়" }, "relevant": [{ "label": "র‍্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "খ", "labelFlags": 1073741824 },
"default": { "label": "ক", "popup": { "relevant": [{"label": "খ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "থ", "labelFlags": 1073741824 },
"default": { "label": "ত", "popup": { "main": { "label": "থ" }, "relevant": [{ "label": "ৎ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ছ", "labelFlags": 1073741824 },
"default": { "label": "চ", "popup": { "relevant": [{"label": "ছ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঠ", "labelFlags": 1073741824 },
"default": { "label": "ট", "popup": { "relevant": [{"label": "ঠ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঋ", "labelFlags": 1073741824 },
"default": { "label": "ৃ", "popup": { "relevant": [{"label": "ঋ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঁ", "labelFlags": 1073741824, "popup": { "relevant": [
{"label": "!autoColumnOrder!6" },
{ "label": "়" },
{ "label": "ৄ" },
{ "label": "ঽ" },
{ "label": "ৢ" },
{ "label": "ৱ" },
{ "label": "ৣ" },
{ "label": "ৗ" },
{ "label": "ৠ" },
{ "label": "৺" },
{ "label": "ঌ" },
{ "label": "ৰ" },
{ "label": "ৡ" }
]}},
"default": { "label": "ং", "popup": { "main": { "label": "ঁ" }, "relevant": [{ "label": "ঃ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ণ", "labelFlags": 1073741824 },
"default": { "label": "ম", "popup": { "relevant": [{"label": "ণ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঞ", "labelFlags": 1073741824 },
"default": { "label": "ন", "popup": { "relevant": [{"label": "ঞ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ়", "labelFlags": 1073741824 },
"default": { "label": "ব", "popup": { "relevant": [{"label": "ঢ়" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ষ", "labelFlags": 1073741824 },
"default": { "label": "ল", "popup": { "relevant": [{"label": "ষ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "শ", "labelFlags": 1073741824 },
"default": { "label": "স", "popup": { "relevant": [{"label": "শ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "য", "labelFlags": 1073741824 },
"default": { "label": "য়", "popup": { "relevant": [{"label": "য" }]}}
}
]
]

View file

@ -0,0 +1,141 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ধ", "labelFlags": 1073741824 },
"default": { "label": "দ", "popup": { "relevant": [{ "label": "ধ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঊ", "labelFlags": 1073741824 },
"default": { "label": "ূ", "popup": { "relevant": [{ "label": "ঊ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঈ", "labelFlags": 1073741824 },
"default": { "label": "ী", "popup": { "relevant": [{ "label": "ঈ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ড়", "labelFlags": 1073741824 },
"default": { "label": "র", "popup": { "main": { "label": "ড়" }, "relevant": [{ "label": "র‍্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঠ", "labelFlags": 1073741824 },
"default": { "label": "ট", "popup": { "relevant": [{ "label": "ঠ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঐ", "labelFlags": 1073741824 },
"default": { "label": "এ", "popup": { "relevant": [{ "label": "ঐ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "উ", "labelFlags": 1073741824 },
"default": { "label": "ু", "popup": { "relevant": [{ "label": "উ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ই", "labelFlags": 1073741824 },
"default": { "label": "ি", "popup": { "relevant": [{ "label": "ই" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঔ", "labelFlags": 1073741824 },
"default": { "label": "ও", "popup": { "relevant": [{ "label": "ঔ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ফ", "labelFlags": 1073741824 },
"default": { "label": "প", "popup": { "relevant": [{ "label": "ফ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৈ", "labelFlags": 1073741824 },
"default": { "label": "ে", "popup": { "relevant": [{ "label": "ৈ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "অ", "labelFlags": 1073741824 },
"default": { "label": "া", "popup": { "relevant": [{ "label": "অ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ষ", "labelFlags": 1073741824 },
"default": { "label": "স", "popup": { "relevant": [{ "label": "ষ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ", "labelFlags": 1073741824 },
"default": { "label": "ড", "popup": { "relevant": [{ "label": "ঢ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "থ", "labelFlags": 1073741824 },
"default": { "label": "ত", "popup": { "main": { "label": "থ" }, "relevant": [{ "label": "ৎ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঘ", "labelFlags": 1073741824 },
"default": { "label": "গ", "popup": { "relevant": [{ "label": "ঘ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঃ", "labelFlags": 1073741824 },
"default": { "label": "হ", "popup": { "relevant": [{ "label": "ঃ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঝ", "labelFlags": 1073741824 },
"default": { "label": "জ", "popup": { "relevant": [{ "label": "ঝ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "খ", "labelFlags": 1073741824 },
"default": { "label": "ক", "popup": { "relevant": [{ "label": "খ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ং", "labelFlags": 1073741824 },
"default": { "label": "ল", "popup": { "relevant": [{ "label": "ং" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৌ", "labelFlags": 1073741824 },
"default": { "label": "ো", "popup": { "relevant": [{ "label": "ৌ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "য", "labelFlags": 1073741824 },
"default": { "label": "য়", "popup": { "main": { "label": "য" }, "relevant": [{ "label": "্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ়", "labelFlags": 1073741824 },
"default": { "label": "শ", "popup": { "relevant": [{ "label": "ঢ়" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ছ", "labelFlags": 1073741824 },
"default": { "label": "চ", "popup": { "relevant": [{ "label": "ছ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঋ", "labelFlags": 1073741824 },
"default": { "label": "আ", "popup": { "relevant": [{ "label": "ঋ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ভ", "labelFlags": 1073741824 },
"default": { "label": "ব", "popup": { "relevant": [{ "label": "ভ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ণ", "labelFlags": 1073741824 },
"default": { "label": "ন", "popup": { "relevant": [{ "label": "ণ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঙ", "labelFlags": 1073741824 },
"default": { "label": "ম", "popup": { "relevant": [{ "label": "ঙ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৃ", "labelFlags": 1073741824 },
"default": { "label": "ঞ", "popup": { "relevant": [{ "label": "ৃ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঁ", "popup": { "relevant": [
{ "label": "!autoColumnOrder!6"},
{ "label": "়" },
{ "label": "ৄ"},
{ "label": "ঽ"},
{ "label": "ৢ"},
{ "label": "ৱ"},
{ "label": "ৣ"},
{ "label": "ৗ"},
{ "label": "ৠ"},
{ "label": "৺"},
{ "label": "ঌ"},
{ "label": "ৰ"},
{ "label": "ৡ" }]}},
"default": { "label": "্", "popup": { "relevant": [{ "label": "ঁ" }]}}
}
]
]

View file

@ -0,0 +1,126 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ং", "labelFlags": 1073741824 },
"default": { "label": "ঙ", "popup": { "relevant": [{ "label": "ং" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "য়", "labelFlags": 1073741824 },
"default": { "label": "য", "popup": { "relevant": [{ "label": "য়" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ", "labelFlags": 1073741824 },
"default": { "label": "ড", "popup": { "relevant": [{ "label": "ঢ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ফ", "labelFlags": 1073741824 },
"default": { "label": "প", "popup": { "relevant": [{ "label": "ফ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঠ", "labelFlags": 1073741824 },
"default": { "label": "ট", "popup": { "relevant": [{ "label": "ঠ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ছ", "labelFlags": 1073741824 },
"default": { "label": "চ", "popup": { "relevant": [{ "label": "ছ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঝ", "labelFlags": 1073741824 },
"default": { "label": "জ", "popup": { "relevant": [{ "label": "ঝ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঞ", "labelFlags": 1073741824 },
"default": { "label": "হ", "popup": { "relevant": [{ "label": "ঞ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঘ", "labelFlags": 1073741824 },
"default": { "label": "গ", "popup": { "relevant": [{ "label": "ঘ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঢ়", "labelFlags": 1073741824 },
"default": { "label": "ড়", "popup": { "relevant": [{ "label": "ঢ়" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঃ", "labelFlags": 1073741824 },
"default": { "label": "ৃ", "popup": { "relevant": [{ "label": "ঋ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ূ", "popup": { "relevant": [{ "label": "ঊ" }]}},
"default": { "label": "ু", "popup": { "relevant": [{ "label": "উ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ী", "popup": { "relevant": [{ "label": "ঈ"}]}},
"default": { "label": "ি", "popup": { "relevant": [{ "label": "ই" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "অ", "labelFlags": 1073741824 },
"default": { "label": "া", "popup": { "main": { "label": "আ" }, "relevant": [{ "label": "অ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ঁ", "labelFlags": 1073741824, "popup": { "relevant": [
{ "label": "!autoColumnOrder!6" },
{ "label": "়" },
{ "label": "ৄ" },
{ "label": "ঽ" },
{ "label": "ৢ" },
{ "label": "ৱ" },
{ "label": "ৣ" },
{ "label": "ৗ" },
{ "label": "ৠ" },
{ "label": "৺" },
{ "label": "ঌ" },
{ "label": "ৰ" },
{ "label": "ৡ"}
]}},
"default": { "label": "্", "popup": { "relevant": [{ "label": "ঁ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ভ", "labelFlags": 1073741824 },
"default": { "label": "ব", "popup": { "relevant": [{ "label": "ভ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "খ", "labelFlags": 1073741824 },
"default": { "label": "ক", "popup": { "relevant": [{ "label": "খ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "থ", "labelFlags": 1073741824 },
"default": { "label": "ত", "popup": { "main": { "label": "থ" }, "relevant": [{ "label": "ৎ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ধ", "labelFlags": 1073741824 },
"default": { "label": "দ", "popup": { "relevant": [{ "label": "ধ" }]}}
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "্য", "labelFlags": 1073741824 },
"default": { "label": "্র", "popup": { "relevant": [{ "label": "্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৌ", "popup": { "relevant": [{ "label": "ঔ" }]}},
"default": { "label": "ো", "popup": { "relevant": [{ "label": "ও" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ৈ", "popup": { "relevant": [{ "label": "ঐ" }]}},
"default": { "label": "ে", "popup": { "relevant": [{ "label": "এ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ল", "labelFlags": 1073741824 },
"default": { "label": "র", "popup": { "main": { "label": "ল" }, "relevant": [{ "label": "র‍্য" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ণ", "labelFlags": 1073741824 },
"default": { "label": "ন", "popup": { "relevant": [{ "label": "ণ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ষ", "labelFlags": 1073741824 },
"default": { "label": "স", "popup": { "relevant": [{ "label": "ষ" }]}}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "শ", "labelFlags": 1073741824 },
"default": { "label": "ম", "popup": { "relevant": [{ "label": "শ" }]}}
}
]
]

View file

@ -0,0 +1,29 @@
b
é è
p
o
v
d
l
j
z
w
a
u
i
e
c
t
s
r
n
m
y
x
k
q
g
h
f

View file

@ -0,0 +1,32 @@
я
в
е
р
т
ъ
у
и ѝ
о
п
ч
а
с
д
ф
г
х
й
к
л
ш
щ
з
ь
ц
ж
б
н
м
ю

View file

@ -0,0 +1,33 @@
у
е
и ѝ
ш
щ
к
с
д
з
ц
б
ь
я
а
о
ж
г
т
н
в
м
ч
ю
й
ъ
э
ф
х
п
р
л

View file

@ -0,0 +1,33 @@
у
е
и ѝ
ш
щ
к
с
д
з
ц
б
ь
я
а
о
ж
г
т
н
в
м
ч
ю
й ѭ
ъ ѫ
ѣ
ф
х
п
р
л

View file

@ -0,0 +1,31 @@
ق
و
ە
ر
ت
ی
ێ
ئ
ۆ
پ
ا
س
ش
د
ف
ھ|ه
ژ
ل
ک
گ
ز
ع
ح
ج
چ
خ
ب
ن
م

View file

@ -0,0 +1,44 @@
ё
ӑ
ӗ
ҫ
ӳ
ъ
-
!
?
"
й
ц
у
к
е
н
г
ш
щ
з
х
ф
ы
в
а
п
р
о
л
д
ж
э
я
ч
с
м
и
т
ь
б
ю

View file

@ -0,0 +1,38 @@
[
[
{ "label": "q" },
{ "label": "w" },
{ "label": "f" },
{ "label": "p" },
{ "label": "g" },
{ "label": "j" },
{ "label": "l" },
{ "label": "u" },
{ "label": "y" },
{ "$": "shift_state_selector",
"shiftedManual": { "label": ":" },
"default": { "label": ";", "popup": { "main": { "label": ":" } } }
}
],
[
{ "label": "a" },
{ "label": "r" },
{ "label": "s" },
{ "label": "t" },
{ "label": "d" },
{ "label": "h" },
{ "label": "n" },
{ "label": "e" },
{ "label": "i" },
{ "label": "o", "popup": { "main": { "label": "…" } } }
],
[
{ "label": "z" },
{ "label": "x" },
{ "label": "c" },
{ "label": "v" },
{ "label": "b" },
{ "label": "k" },
{ "label": "m" }
]
]

View file

@ -0,0 +1,38 @@
[
[
{ "label": "q" },
{ "label": "w" },
{ "label": "f" },
{ "label": "p" },
{ "label": "b" },
{ "label": "j" },
{ "label": "l" },
{ "label": "u" },
{ "label": "y" },
{ "$": "shift_state_selector",
"shiftedManual": { "label": ":" },
"default": { "label": ";", "popup": { "main": { "label": ":" } } }
}
],
[
{ "label": "a" },
{ "label": "r" },
{ "label": "s" },
{ "label": "t" },
{ "label": "g" },
{ "label": "m" },
{ "label": "n" },
{ "label": "e" },
{ "label": "i" },
{ "label": "o", "popup": { "main": { "label": "…" } } }
],
[
{ "label": "z" },
{ "label": "x" },
{ "label": "c" },
{ "label": "d" },
{ "label": "v" },
{ "label": "k" },
{ "label": "h" }
]
]

View file

@ -0,0 +1,28 @@
q
w
ɛ e
r ¢
t
y
u
i
ɔ o
p
a
s
d
f
ɣ g
h
j
k
l
ʒ z
x x
c
v
b
ŋ n
m

View file

@ -0,0 +1,35 @@
й
ц
у ӯ ӱ ý ӱ́
к ҟ ҝ ҡ
е ē ë е́ ë́
н
г ґ ғ ꚕ
ш
щ
з ҙ
х ҳ ẋ
ъ
ф
ы
в w
а ā ӓ á ӓ́
п ԥ
р ҏ
о о̄ ӧ ó ӧ́
л
д
ж җ
э э̄ э́
Ӏ
я я̄ я́ ǽ æ ǣ
ч ҹ
с
м
и ӣ и́
т ԏ
ь
б ҕ
ю ю́

View file

@ -0,0 +1,55 @@
[
[
{ "$": "shift_state_selector",
"shifted": { "label": "\"" },
"default": { "$": "variation_selector",
"uri": { "label": "/" },
"email": { "label": "@" },
"default": { "label": "'", "popup": { "relevant": [
{ "label": "!" },
{ "label": "\"" }
] } }
}
},
{ "$": "shift_state_selector",
"shifted": { "label": "<" },
"default": { "label": "," }
},
{ "$": "shift_state_selector",
"shifted": { "label": ">" },
"default": { "label": "." }
},
{ "label": "p" },
{ "label": "y" },
{ "label": "f" },
{ "label": "g" },
{ "label": "c" },
{ "label": "r" },
{ "label": "l" }
],
[
{ "label": "a" },
{ "label": "o" },
{ "label": "e" },
{ "label": "u" },
{ "label": "i" },
{ "label": "d" },
{ "label": "h" },
{ "label": "t" },
{ "label": "n" },
{ "label": "s" }
],
[
{ "label": "j" },
{ "label": "k" },
{ "label": "x" },
{ "label": "b" },
{ "label": "m" },
{ "label": "w" },
{ "label": "v" }
],
[
{ "label": "q" },
{ "label": "z" }
]
]

View file

@ -0,0 +1,29 @@
ŝ q
ĝ w
e
r
t
ŭ y
u
i
o
p
a
s
d
f
g
h
j
k
l
ĵ
z
ĉ x
c
v w
b
n
m

View file

@ -0,0 +1,28 @@
ɛ q
w
e
r
t
ɣ y
u
i
o
p
a
s
d
f
g
h
j
k
l
z
ɔ x
c ¢
v
b
n
m

View file

@ -0,0 +1,34 @@
ض
ص
ث
ق
ف
غ
ع
ه
خ
ح
ج
ش
س
ی
ب
ل
ا
ت
ن
م
ک
گ
ظ
ط
ژ
ز
ر
ذ
د
پ
و
چ

View file

@ -0,0 +1,28 @@
ɛ q
w
e
r
t
y
u
i
o
p
a
s
d
f
g
h
j
k
l
z
ɔ x
ŋ c ¢
v
b
n
m

View file

@ -0,0 +1,112 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "Q" },
"default": { "label": "ქ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ჭ" },
"default": { "label": "წ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "E" },
"default": { "label": "ე" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ღ" },
"default": { "label": "რ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "თ" },
"default": { "label": "ტ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "Y" },
"default": { "label": "" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "U" },
"default": { "label": "უ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "I" },
"default": { "label": "ი" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "O" },
"default": { "label": "ო" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "P" },
"default": { "label": "პ" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "A" },
"default": { "label": "ა" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "შ" },
"default": { "label": "ს" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "D" },
"default": { "label": "დ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "F" },
"default": { "label": "ფ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "G" },
"default": { "label": "გ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "H" },
"default": { "label": "ჰ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ჟ" },
"default": { "label": "ჯ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "K" },
"default": { "label": "კ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "L" },
"default": { "label": "ლ" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ძ" },
"default": { "label": "ზ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "X" },
"default": { "label": "ხ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ჩ" },
"default": { "label": "ც" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "V" },
"default": { "label": "ვ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "B" },
"default": { "label": "ბ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "N" },
"default": { "label": "ნ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "M" },
"default": { "label": "მ" }
}
]
]

View file

@ -0,0 +1,41 @@
[
[
{ "$": "shift_state_selector",
"shiftedManual": { "label": ":", "popup": { "main": { "label": ";" } } },
"default": { "label": ";", "popup": { "main": { "label": ":" } } }
},
{ "label": "ς", "labelFlags": 65536 },
{ "label": "ε" },
{ "label": "ρ" },
{ "label": "τ" },
{ "label": "υ" },
{ "label": "θ" },
{ "label": "ι" },
{ "label": "ο" },
{ "label": "π" }
],
[
{ "label": "α" },
{ "label": "σ" },
{ "label": "δ" },
{ "label": "φ" },
{ "label": "γ" },
{ "label": "η" },
{ "label": "ξ" },
{ "label": "κ" },
{ "label": "λ" },
{ "$": "shift_state_selector",
"shiftedManual": { "code": 776, "label": "¨" },
"default": { "code": 769, "label": "´" }
}
],
[
{ "label": "ζ" },
{ "label": "χ" },
{ "label": "ψ" },
{ "label": "ω" },
{ "label": "β" },
{ "label": "ν" },
{ "label": "μ" }
]
]

View file

@ -0,0 +1,129 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ધ" },
"default": { "label": "અ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ન" },
"default": { "label": "ા" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "પ" },
"default": { "label": "િ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ફ" },
"default": { "label": "ી" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "બ" },
"default": { "label": "ુ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ભ" },
"default": { "label": "ૂ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "મ" },
"default": { "label": "ે" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ય" },
"default": { "label": "ૈ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ર" },
"default": { "label": "ો" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "લ" },
"default": { "label": "ૌ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "વ" },
"default": { "label": "ં" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "શ" },
"default": { "label": "", "popup": { "main": { "label": "ઍ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ષ" },
"default": { "label": "ક", "popup": { "main": { "label": "ઑ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "સ" },
"default": { "label": "ખ", "popup": { "main": { "label": "ૅ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "હ" },
"default": { "label": "ગ", "popup": { "main": { "label": "ૉ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ળ" },
"default": { "label": "ઘ", "popup": { "main": { "label": "ૃ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ક્ષ", "labelFlags": 128 },
"default": { "label": "ઙ", "popup": { "main": { "label": "ઋ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "જ્ઞ", "labelFlags": 128 },
"default": { "label": "ચ", "popup": { "main": { "label": "ત્ર" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "આ" },
"default": { "label": "છ", "popup": { "main": { "label": "ત્ત" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઇ" },
"default": { "label": "જ", "popup": { "main": { "label": "દ્વ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઈ" },
"default": { "label": "ઝ", "popup": { "main": { "label": "દ્ધ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઉ" },
"default": { "label": "ઞ", "popup": { "main": { "label": "દ્ર" } } }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઊ" },
"default": { "label": "ટ"}
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "એ" },
"default": { "label": "ઠ", "popup": { "main": { "label": "શ્ર" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઐ" },
"default": { "label": "ડ", "popup": { "main": { "label": "શ્વ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઓ" },
"default": { "label": "ઢ", "popup": { "main": { "label": "દ્દ" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ઔ" },
"default": { "label": "ણ", "popup": { "main": { "label": "હ્ય" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "અં", "labelFlags": 128 },
"default": { "label": "ત", "popup": { "main": { "label": "꠰" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "અઃ", "labelFlags": 128 },
"default": { "label": "થ", "popup": { "main": { "label": "꠱" } } }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ૐ" },
"default": { "label": "દ", "popup": { "main": { "label": "꠲" } } }
},
{ "label": "્", "popup": { "main": { "label": "૱" } } }
]
]

View file

@ -0,0 +1,32 @@
w
l
r
b
z
;
q
u
d
j
s
h
n
t
,
.
a
e
o
i
m
v
c
g
p
x
k
f
y

View file

@ -0,0 +1,28 @@
ẹ q
w
e
r
t
y
u
i
o
p
a
s
d
f
g
h
j
k
l
z
ọ x
c
v
b
n ₦
m

View file

@ -0,0 +1,89 @@
[
[
{ "$": "variation_selector",
"email": { "label": "-" },
"uri": { "label": "-" },
"default": { "label": "'", "popup": { "relevant": [{ "label": "׳" }, { "label": "״" }, { "label": "\"" }] } }
},
{ "$": "variation_selector",
"email": { "label": "_" },
"uri": { "label": "_" },
"default": { "label": "-", "popup": { "relevant": [{ "label": "־" }, { "label": "_" }] } }
},
{ "label": "ק", "popup": {
"relevant": [
{ "label": "\u05b8" },
{ "label": "\u05b3" },
{ "label": "\u05bb" }
]
} },
{ "label": "ר", "popup": {
"relevant": [
{ "label": "\u05bf" }
]
} },
{ "label": "א" },
{ "label": "ט" },
{ "label": "ו", "popup": {
"relevant": [
{ "label": "ו\u05b9" },
{ "label": "ו\u05bc" }
]
} },
{ "label": "ן" },
{ "label": "ם" },
{ "label": "פ", "popup": {
"relevant": [
{ "label": "\u05b7" },
{ "label": "\u05b2" }
]
} }
],
[
{ "label": "ש", "popup": {
"relevant": [
{ "label": "\u05b0" },
{ "label": "ש\u05c2" },
{ "label": "ש\u05c1" }
]
} },
{ "label": "ד", "popup": {
"relevant": [
{ "label": "\u05bc" }
]
} },
{ "label": "ג" },
{ "label": "כ" },
{ "label": "ע" },
{ "label": "י" },
{ "label": "ח", "popup": {
"relevant": [
{ "label": "\u05b4" },
{ "label": "\u05b9" }
]
} },
{ "label": "ל" },
{ "label": "ך" },
{ "label": "ף" }
],
[
{ "label": "ז" },
{ "label": "ס", "popup": {
"relevant": [
{ "label": "\u05b6" },
{ "label": "\u05b1" }
]
} },
{ "label": "ב" },
{ "label": "ה" },
{ "label": "נ" },
{ "label": "מ" },
{ "label": "צ", "popup": {
"relevant": [
{ "label": "\u05b5" }
]
} },
{ "label": "ת" },
{ "label": "ץ" }
]
]

View file

@ -0,0 +1,85 @@
[
[
{ "label": "ץ", "popup": {
"relevant": [
{ "label": "ש\u05c2" }
]
} },
{ "label": "ן", "popup": {
"relevant": [
{ "label": "ש\u05c1" }
]
} },
{ "label": "ק", "popup": {
"relevant": [
{ "label": "\u05b8" },
{ "label": "\u05bb" }
]
} },
{ "label": "ר", "popup": {
"relevant": [
{ "label": "\u05b3" }
]
} },
{ "label": "א" },
{ "label": "ט" },
{ "label": "ו", "popup": {
"relevant": [
{ "label": "\u05b9" }
]
} },
{ "label": "ת" },
{ "label": "ם" },
{ "label": "פ", "popup": {
"relevant": [
{ "label": "\u05b2" },
{ "label": "\u05b7" }
]
} }
],
[
{ "label": "ש", "popup": {
"relevant": [
{ "label": "\u05b0" }
]
} },
{ "label": "ד", "popup": {
"relevant": [
{ "label": "\u05bc" }
]
} },
{ "label": "ג" },
{ "label": "כ" },
{ "label": "ע" },
{ "label": "י" },
{ "label": "ח", "popup": {
"relevant": [
{ "label": "\u05b4" }
]
} },
{ "label": "ל" },
{ "label": "ך" },
{ "label": "ף" }
],
[
{ "label": "ז" },
{ "label": "ס", "popup": {
"relevant": [
{ "label": "\u05b6" }
]
} },
{ "label": "ב", "popup": {
"relevant": [
{ "label": "\u05b1" }
]
} },
{ "label": "ה" },
{ "label": "נ" },
{ "label": "מ" },
{ "label": "צ", "popup": {
"relevant": [
{ "label": "\u05b5" }
]
} }
]
]

View file

@ -0,0 +1,132 @@
[
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "औ" },
"default": { "label": "ौ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ऐ" },
"default": { "label": "ै" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "आ" },
"default": { "label": "ा" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ई" },
"default": { "label": "ी" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ऊ" },
"default": { "label": "ू" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "भ" },
"default": { "label": "ब" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "" },
"default": { "label": "ह" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "घ" },
"default": { "label": "ग" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ध" },
"default": { "label": "द" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "झ" },
"default": { "label": "ज" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ढ" },
"default": { "label": "ड" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ओ" },
"default": { "label": "ो" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ए" },
"default": { "label": "े" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "अ" },
"default": { "label": "्" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "इ" },
"default": { "label": "ि" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "उ" },
"default": { "label": "ु" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "फ" },
"default": { "label": "प" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ऱ" },
"default": { "label": "र" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ख" },
"default": { "label": "क" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "थ" },
"default": { "label": "त" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "छ" },
"default": { "label": "च" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ठ" },
"default": { "label": "ट" }
}
],
[
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ऑ" },
"default": { "label": "ॉ" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ँ" },
"default": { "label": "ं" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ण" },
"default": { "label": "म" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ऩ" },
"default": { "label": "न" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ळ" },
"default": { "label": "व" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "श" },
"default": { "label": "ल" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ष" },
"default": { "label": "स" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ृ" },
"default": { "label": "य" }
},
{ "$": "shift_state_selector",
"manualOrLocked": { "label": "ञ" },
"default": { "label": "़" }
}
]
]

View file

@ -0,0 +1,40 @@
[
[
{ "label": "औ" },
{ "label": "ऐ" },
{ "label": "आ" },
{ "label": "ई" },
{ "label": "ऊ" },
{ "label": "ब" },
{ "label": "ह" },
{ "label": "ग" },
{ "label": "द" },
{ "label": "ज" },
{ "label": "ड" }
],
[
{ "label": "ओ" },
{ "label": "ए" },
{ "label": "अ" },
{ "label": "इ" },
{ "label": "उ" },
{ "label": "प" },
{ "label": "र" },
{ "label": "क" },
{ "label": "त" },
{ "label": "च" },
{ "label": "ट" }
],
[
{ "label": "ऑ" },
{ "label": "्" },
{ "label": "ं" },
{ "label": "म" },
{ "label": "न" },
{ "label": "व" },
{ "label": "ल" },
{ "label": "स" },
{ "label": "य" },
{ "label": "क्ष", "labelFlags": 128 }
]
]

View file

@ -0,0 +1,554 @@
[
[
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ठ"
},
"default": {
"label": "ट"
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ढ"
},
"default": {
"label": "ड",
"popup": {
"main": {
"label": "ड़"
},
"relevant": [
{
"label": "ढ़"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ै"
},
"default": {
"label": "े",
"popup": {
"main": {
"label": "ए"
},
"relevant": [
{
"label": "ऍ"
},
{
"label": "ऐ"
},
{
"code": 2374,
"label": " ॆ"
},
{
"code": 2389,
"label": " ॕ"
},
{
"code": 2382,
"label": " ॎ"
},
{
"label": "ऎ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ृ"
},
"default": {
"label": "र",
"popup": {
"main": {
"label": "ऋ"
},
"relevant": [
{
"label": "ॠ"
},
{
"label": "ॄ"
},
{
"label": "ऱ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "थ"
},
"default": {
"label": "त",
"popup": {
"main": {
"label": "त्र"
}
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "य़"
},
"default": {
"label": "य",
"popup": {
"main": {
"label": "ॺ"
}
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ू"
},
"default": {
"label": "ु",
"popup": {
"main": {
"label": "उ"
},
"relevant": [
{
"label": "ऊ"
},
{
"label": "ॷ"
},
{
"code": 2390,
"label": " ॖ"
},
{
"label": "ॶ"
},
{
"code": 2391,
"label": " ॗ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ी"
},
"default": {
"label": "ि",
"popup": {
"main": {
"label": "इ"
},
"relevant": [
{
"label": "ई"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ौ"
},
"default": {
"label": "ो",
"popup": {
"main": {
"label": "ओ"
},
"relevant": [
{
"label": "औ"
},
{
"label": "ऑ"
},
{
"code": 2383,
"label": " ॏ"
},
{
"label": "ॵ"
},
{
"label": "ॐ"
},
{
"label": "ॉ"
},
{
"label": "ॳ"
},
{
"label": "ॴ"
},
{
"code": 2362,
"label": " ऺ"
},
{
"code": 2363,
"label": " ऻ"
},
{
"label": "ऒ"
},
{
"code": 2378,
"label": " ॊ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "फ़"
},
"default": {
"label": "प"
}
}
],
[
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "अ"
},
"default": {
"label": "ा",
"popup": {
"main": {
"label": "आ"
},
"relevant": [
{
"label": "ॅ"
},
{
"label": "ॲ"
},
{
"label": "ऄ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "श"
},
"default": {
"label": "स",
"popup": {
"main": {
"label": "श्र"
},
"relevant": [
{
"label": "ष"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ध"
},
"default": {
"label": "द",
"popup": {
"main": {
"label": "ड़"
},
"relevant": [
{
"label": "ॾ"
},
{
"label": "ढ़"
},
{
"label": "ॸ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"code": 2364,
"label": " ़"
},
"default": {
"label": "फ",
"popup": {
"main": {
"label": "फ़"
}
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "घ"
},
"default": {
"label": "ग",
"popup": {
"main": {
"label": "ग़"
},
"relevant": [
{
"label": "ॻ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": ""
},
"default": {
"label": "ह"
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "झ"
},
"default": {
"label": "ज",
"popup": {
"main": {
"label": "ज़"
},
"relevant": [
{
"label": "ॼ"
},
{
"label": "ॹ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ख"
},
"default": {
"label": "क",
"popup": {
"main": {
"label": "क़"
},
"relevant": [
{
"label": "ख़"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ळ"
},
"default": {
"label": "ल",
"popup": {
"relevant": [
{
"label": "ऴ"
},
{
"label": "ॣ"
},
{
"label": "ऌ"
},
{
"label": "ॡ"
},
{
"label": "ॢ"
}
]
}
}
}
],
[
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ज़",
"labelFlags": 128
},
"default": {
"label": "ज्ञ",
"labelFlags": 128
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ष"
},
"default": {
"label": "क्ष",
"labelFlags": 128
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "छ"
},
"default": {
"label": "च",
"popup": {
"relevant": [
{
"$": "auto_text_key",
"code": 2385,
"label": " ॑"
},
{
"$": "auto_text_key",
"code": 2386,
"label": " ॒"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "्"
},
"default": {
"label": "व",
"popup": {
"relevant": [
{
"$": "auto_text_key",
"code": 2387,
"label": " ॓"
},
{
"$": "auto_text_key",
"code": 2388,
"label": " ॔"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "भ"
},
"default": {
"label": "ब",
"popup": {
"relevant": [
{
"label": "ॿ"
},
{
"label": "ऽ"
},
{
"label": "॰"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ण"
},
"default": {
"label": "न",
"popup": {
"main": {
"label": "ङ"
},
"relevant": [
{
"label": "ऩ"
},
{
"label": "ञ"
}
]
}
}
},
{
"$": "shift_state_selector",
"manualOrLocked": {
"label": "ं"
},
"default": {
"label": "म",
"popup": {
"main": {
"label": "ँ"
},
"relevant": [
{
"label": "ऀ"
}
]
}
}
}
]
]

View file

@ -0,0 +1,39 @@
á
é
í
ó
ö
ő
ú
ü
ű
'
q
w
e
r
t
z
u
i
o
p
a
s
d
f
g
h
j
k
l
y
x
c
v
b
n
m

View file

@ -0,0 +1,28 @@
ṅ q
w
e
r
t
y
u
i
o
p
a
s
d
f
g
h
j
k
l
z
ọ x
c
ụ v
b
n ₦
m

View file

@ -0,0 +1,38 @@
[
[
{ "label": "a" },
{ "label": "z" },
{ "label": "e" },
{ "label": "r" },
{ "label": "t" },
{ "label": "y" },
{ "label": "u" },
{ "label": "i" },
{ "label": "ɛ" },
{ "label": "ɣ" }
],
[
{ "label": "q" },
{ "label": "s" },
{ "label": "d" },
{ "label": "f" },
{ "label": "g" },
{ "label": "h" },
{ "label": "j" },
{ "label": "k" },
{ "label": "l" },
{ "label": "m" }
],
[
{ "label": "w" },
{ "label": "x" },
{ "label": "c" },
{ "label": "v" },
{ "label": "b" },
{ "label": "n" },
{ "$": "shift_state_selector",
"shiftedManual": { "label": "?" },
"default": { "label": "'" }
}
]
]

View file

@ -0,0 +1,32 @@
й
ц
у
к
е
н
г
ш
ҡ
з
х
ҳ
ғ
в
а
п
р
о
л
д
ж
ъ ~
я
ч
с
м
и
т
ь
б < >

View file

@ -0,0 +1,34 @@
ೌ ಔ %
ೈ ಐ %
ಾ ಆ %
ೀ ಈ %
ೂ ಊ %
ಬ ಭ %
ಹ ಙ %
ಗ ಘ %
ದ ಧ %
ಜ ಝ %
ಡ ಢ
ೋ ಓ
ೇ ಏ
್ ಅ
ಿ ಇ
ು ಉ
ಪ ಫ
ರ ಱ ೃ
ಕ ಖ
ತ ಥ
ಚ ಛ
ಟ ಠ
ೆ ಒ
ನ ಣ
ಲ ಳ
ಸ ಶ
ಋ ್ರ
ಷ ಕ್ಷ
ಯ ಜ್ಞ

View file

@ -0,0 +1,53 @@

Some files were not shown because too many files have changed in this diff Show more