abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/Theme.java
AgeCommit message (Collapse)AuthorFilesLines
2025-02-09Refactor: Compute appearance values before onDrawJules Aguillon1-40/+110
This moves some computations that used to be done during onDraw into the new Theme.Computed class. This also removes Paint objects from the Theme class, making it data-only. This is a requirement for making some keys render differently.
2024-05-29Configure anticircle gesture per-key (#644)Jules Aguillon1-2/+4
This adds the new 'anticircle' attribute to layouts '<key>' elements that configure the key to send when doing a anti-clockwise circle gesture on it. Labels are drawn the same way as indication. Updated docs.
2024-02-17compose: Grey out keys that are not in sequenceJules Aguillon1-0/+3
Keys that are not in the pending compose sequence are greyed out with the new 'FLAG_GREYED' flag.
2024-02-17Dim secondary keys in every themesJules Aguillon1-4/+6
Themes do not dim secondary keys the same way due to the "offset" mechanism. Instead, use a ratio that is the same for every themes. It's still possible to override this ratio per theme.
2023-11-25Use Gradle (#452)deftkHD1-1/+0
2022-11-13Draw borders and update themesJules Aguillon1-1/+16
Themes can define the color of each borders independently. Every borders must have the same width for now. It's possible to set a different width when the key is activated, thought this is only used to remove borders. The 4 themes are updated to take advantage of borders.
2022-11-11Dim secondary keysJules Aguillon1-2/+14
Reduce the constrast of "secondary" labels. Modifiers (except diacritics), event and keyevent keys are considered secondary.
2022-10-24Draw letter indication on the pin layoutJules Aguillon1-0/+7
There is no way to type letters on the pin layout, the indication are decoration only. Use the E.161 standard.
2022-09-19Add the Extra Keys optionJules Aguillon1-8/+6
Allows to add more keys to the keyboard from a predefined list. The implementation doesn't use MultiSelectListPreference because it doesn't seem possible to change the item layout to properly show the rendered symbols.
2022-05-07Set the color of the navigation barJules Aguillon1-0/+5
Since SDK 21, applications can set the background color of the navigation bar. This is normally simply an item in a theme but it is more complicated for keyboards.
2022-03-17Stateless build of the special font fileJules Aguillon1-1/+1
Keep the glyphs in SVG format and build the font using a FontForge script. A part of the previous font is kept because the sources is lost. This adds a new dependency to the build system, fontforge.
2022-02-27Compute text size relative to key heightJules Aguillon1-6/+0
Instead of a fixed size that don't work at all for bigger screens. Other tweaks: - Use the value-land dimens to vary 'extra_horizontal_margin' - Move label size to Config, because it can change at runtime (rotation) - Slightly decrease the size of "long" symbols
2022-02-06Allow egde keys instead of corner keys (swipe vertically/horizontally)Max Schillinger1-2/+2
Add a new boolean parameter "edgekeys" for defining keys that have the additional (swipe) keys on the edges (top, right, left, bottom) instead of at the corners (top left, top right, bottom left, bottom right).
2021-12-30Move the border radius from Config to ThemeJules Aguillon1-0/+4
Also, draw activated keys with a round border too.
2021-12-30Add themesJules Aguillon1-1/+1
Add a "Theme" option to choose between a dark and light theme. The light theme uses the colors of the dark theme with the luminance inversed. The reloading after a configuration change is changed slightly: - Special handling is needed when the Theme is changed (recreate the views) - The default implementation of 'onConfigurationChanged' is used Which triggers more refresh (but don't recreate the views) - 'onCreateInputView' is no longer needed
2021-12-28Use the themes abstractionJules Aguillon1-6/+10
Themes replace 'colors.xml' and soon will replace 'dimens.xml'.
2021-12-28Reference the "special key font" in the Theme objectJules Aguillon1-3/+14
Remove the last cast of the context.
2021-12-26Move Theme code to its own classJules Aguillon1-0/+64