[DRAFT] Make Dvorak number row aware, and add press and hold symbols #756
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Dvorak Improvements
This is a draft for dealing with issue #712
I tried it out with English (US + UK), German and Spanish (does not solve #394 though, because that requires additional keys).
This works more or less, but as it stands, there are two problems/discussion points with this draft. Since I don't know how to approach that, I'm opening this, in case someone has a useful pointer for me, and to discuss, whether these problems are dealbreakers.
Hard Coded Currency Symbol
The currency symbol on the 'e' is set to the '€' sign, because that's what I need for my German layout, but it should be a '$' on the US keyboard (and probably a '£' sign on the UK keyboard). The symbol layer is unaffected by this. QWERTY variant keyboards (cf. US/UK) also don't account for that on the first layer as far as I can see, so maybe just putting a '$' as default and calling it a day would be good enough, but that's not for me to decide.
In case it is not, I don't think it would be feasible to define multiple Dvorak variants because of the additional maintenance burden, but I don't know if there's a way to use a placeholder value instead of the symbol.
There is
currencyKeyStyle
, but I think it can't be used as a value forkeyHintLabel
oradditionalMoreKeys
.Another thing I considered was adding a separate file for the 'e' key and including that.
In there, one could switch on the selected language, but I don't know whether that is even possible, and if so it still seems very unclean.
Design
The switching 'logic' is based off of the way the QWERTY and QWERTZ keyboards are doing it, but because Dvorak is a little special with the first three symbol keys on the upper row (defined in
res/xml(sw600dp)?/keys_dvorak_123.xml
) those get a little unwieldy with nested switches.A cleaner way might be to just add new files (e.g.
keys_dvorak_123_numrow.xml
andkeys_dvorak_123_no_numrow.xml
) and including those inkeys_dvorak_123.xml
based on a switch.If requested, I can make this change.
As an addendum:
The QWERTZ keyboard is splitting left and right row halves, I don't know whether this is for limiting the unwieldiness of the files, or some split functionality, that I haven't discovered yet, but if that is a more suitable way to organize these files, I can certainly do that as well.