0
0
mirror of https://github.com/florisboard/florisboard.git synced 2024-09-19 19:42:20 +02:00
Commit Graph

55 Commits

Author SHA1 Message Date
Patrick Goldinger
443b6d5e75 Change repo license to Apache 2.0 2020-05-01 17:42:14 +02:00
Patrick Goldinger
55e7d35a8e Fix minor issues & bugs 2020-04-30 19:33:27 +02:00
Patrick Goldinger
f0950fb879 Implement auto selection of keyViews and ability to cancel key presses
ELI5: When you press on a key and the while holding down move you couldn't escape that key press. Now, if you move to far, it cancels the initial key press and triggers a new one at the location your pointer is currently on. Also works for extended popups.
2020-04-30 18:57:00 +02:00
Patrick Goldinger
138efec980 Implement quick actions / Fix bugs in Florisboard and KeyView class 2020-04-29 22:57:44 +02:00
Patrick Goldinger
ebafa81b9b Add keyboard arrow icons and settings icon 2020-04-29 22:57:21 +02:00
Patrick Goldinger
937b0e55ee Add base layout for smartbar / candidates view 2020-04-29 17:25:13 +02:00
Patrick Goldinger
3b316dec6f Add icons to preference screen 2020-04-29 17:24:34 +02:00
Patrick Goldinger
648bcee605 Fix issues / Update README.md 2020-04-28 21:20:46 +02:00
Patrick Goldinger
5e018a89e4 Add key press sound & vibration 2020-04-28 19:43:34 +02:00
Patrick Goldinger
097c3f33f5 Add custom app logo 2020-04-28 15:51:08 +02:00
Patrick Goldinger
93db905a12 Implement app about screen
- Also include licenses of used libraries and icons
- Add privacy policy link
- Add link to source code
2020-04-24 19:14:25 +02:00
Patrick Goldinger
95b81423cb Fix visual layout measurement bugs 2020-04-24 19:10:33 +02:00
Patrick Goldinger
6ca33b14f2 Improve layout calculation and speed up initial layout measurements
- The width and height are now both set as a measured dimension rather than in the layoutParams. This reduces unnecessary measurement cycles and vastly improves performance
- The first layout switch (from characters to symbols etc.) is now smooth and does not glitch around
- The special keys in the modifier layout (ENTER, DELETE, VIEW_* (except NUMERIC) and SHIFT are now fixed in width (1.5 * the desired key width)
2020-04-24 00:41:44 +02:00
Patrick Goldinger
20430a7308 Fix bugs and improve popup creation 2020-04-22 17:55:19 +02:00
Patrick Goldinger
0d75025b14 Change icon(s) from png to vector format 2020-04-22 17:55:06 +02:00
Patrick Goldinger
78b80caceb Implement Fragments for Settings
- Add preference for long key press delay
2020-04-21 21:48:39 +02:00
Patrick Goldinger
47ab122368 Rewrite Settings implementation
- Settings proxy for launcher is now an activity-alias and not an Activity
- Settings will be split into Fragments (coming later) insteadof separate Activities
- Add preference for hiding/showing app icon
2020-04-21 18:02:31 +02:00
Patrick Goldinger
17ba361078 Optimize rendering 2020-04-21 15:50:51 +02:00
Patrick Goldinger
c2e41011be Add base for Settings 2020-04-20 18:19:03 +02:00
Patrick Goldinger
c671b8fb39 Move KeyboardMode from .ime.key to .ime.keyboard 2020-04-20 16:07:10 +02:00
Patrick Goldinger
34e70207c1 Update README.md 2020-04-20 02:47:37 +02:00
Patrick Goldinger
7bed6d6ab2 Fix typos and a package name; Remove unused imports and variables 2020-04-20 01:56:07 +02:00
Patrick Goldinger
d175fc32dc Delete KeyCodes class file (ime.key.KeyCode is the newer version) 2020-04-20 01:55:21 +02:00
Patrick Goldinger
525329c8d0 Implement extended popup selection functionality
- Extended popup layout now is 1 FlexboxLayout instead of 3 LinearLayouts (makes getting the views much easier)
- The extended TextView is responsible for rendering the active background
- KeyView decides based on KeyPopupManager's answer which code to send
2020-04-20 01:29:05 +02:00
Patrick Goldinger
ef1d208d5e Add symbols2 layout and modifier keys 2020-04-19 20:22:10 +02:00
Patrick Goldinger
84204142b5 Change KeyPopupManager so that each KeyView has its own manager
Helps in future changes to KeyPopupManager
2020-04-17 00:55:11 +02:00
Patrick Goldinger
a64ea81e70 Add special character popups for '.' key on character mod layout 2020-04-17 00:52:53 +02:00
Patrick Goldinger
072ca99bd7 Add textures for VIEW_SYMBOLS", VIEW_NUMERIC and VIEW_CHARACTERS 2020-04-16 00:58:09 +02:00
Patrick Goldinger
b3cc11713e Add popup key codes to qwerty layout 2020-04-15 20:05:06 +02:00
Patrick Goldinger
04d7734250 Add number_row extension layout 2020-04-15 02:47:00 +02:00
Patrick Goldinger
f0f0a9b669 Add symbols layout (extension layout and textures still missing) 2020-04-15 02:27:55 +02:00
Patrick Goldinger
8fb93d4677 Divide InputMethodService code from KeyboardView code
- KeyboardView is now only responsible for building the UI from the given ComputedLayoutData
- FlorisBoard (InputMethodService) is now responsible for both selectiong the correct KeyboardView for the active KeyboardMode and sending an actual key press to the system
2020-04-15 01:48:12 +02:00
Patrick Goldinger
23806c0fe1 Add keyboard preview layout / Change attribute and style names 2020-04-15 01:45:26 +02:00
Patrick Goldinger
5bf45ce31c Rewrite layout and update of UI of KeyView
- KeyPopupManager is now in package .ime.popup
- All keyboard related code is now in .ime.keyboard
2020-04-14 20:02:27 +02:00
Patrick Goldinger
a8f4b2a36f Rename package .ime.kbd to .ime.key
Renaming was done to separate key, popup and keyboard related code.
2020-04-14 16:27:19 +02:00
Patrick Goldinger
e1de54e24e Cleanup code (formatting & unused imports only) 2020-04-13 23:54:40 +02:00
Patrick Goldinger
55b4385c3a Fully implement loading and management functionality for LayoutManager
LayoutManager is now solely responsible for fetching the layout from the app's resource folder and will also automatically based on the shared prefs (NYI, currently static strings) fetch the layout associations. CustomKeyboard can now ask to get a computed layout from LayoutManager. LayoutManager then automatically decides based on the given keyboard mode, how to squish the layouts together. This way the keyboard class now only has to render the layout, not compute it too.
2020-04-13 23:44:45 +02:00
Patrick Goldinger
18dfe3eb5c Rework the code base further
- CustomKey is now named KeyView
- LayoutManager will now be responsible for loading Layouts
- Key's data like code, type, etc. is now stored in a KeyData object (KeyView.data)
- Layouts are now preloaded as LayoutData and computed when requesting for the needed keyboard mode
2020-04-13 19:17:40 +02:00
Patrick Goldinger
2c2206ca62 Create layout for character control 2020-04-13 19:13:42 +02:00
Patrick Goldinger
1324f6a9ef Create util sub-package 2020-04-13 19:12:56 +02:00
Patrick Goldinger
8f7b875a3d Structure Kotlin files in sub-packages
- Design is currently completely messed up (both code & UI)
- Goal of structuring: allowing a more clean codebase
2020-04-13 03:34:05 +02:00
Patrick Goldinger
8201970bb4 Add Key/Keyboard constants 2020-04-13 03:32:01 +02:00
Patrick Goldinger
69c4d0947e Implement extended popup style and rendering 2020-04-13 00:05:14 +02:00
Patrick Goldinger
310e7263ab Implement editor action functionality for enter key 2020-04-12 12:03:39 +02:00
Patrick Goldinger
91ecb046de Delete qwerty.xml
- Layouts are now defined inside res/raw/* and are of type JSON
2020-04-12 03:02:50 +02:00
Patrick Goldinger
9262fda63a Fix correct rendering and positioning of icons
- Switched from png to svg resources
- Icons use vector padding to gain the centered effect on the button
- Implement caps lock feature
- Code cleanup in CustomKey.kt
2020-04-12 02:26:47 +02:00
Patrick Goldinger
14873b1d55 Delete keyboard.xml
- Was previously a placeholder for the CustomKeyboard, now not needed anymore
2020-04-11 20:44:53 +02:00
Patrick Goldinger
6a04447c5c Clean up root layout
- Fully shift popup logic to KeyPopupManager
- Root layout now directly uses customKeyboard in layout (remove 1 layer of unnecessary LinearLayout)
2020-04-11 20:43:21 +02:00
Patrick Goldinger
f21ecc04d0 Add KeyPopupManager class
- Key popup creation and calculations are now done in the KeyPopupManager (Keyboard.popupManager contains instance of this manager)
2020-04-11 19:42:27 +02:00
Patrick Goldinger
d2fc8c5cf1 Implement popup and update Ui redraw logic 2020-04-11 18:07:57 +02:00