Merge branch 'implement-basic-views' into 'master'

Implement basic keyboard views

See merge request Librem5/squeekboard!51
This commit is contained in:
David Boddie
2019-07-11 10:24:29 +00:00
2 changed files with 20 additions and 2 deletions

View File

@ -167,6 +167,9 @@
</key>
<key keycode="66" name="ALTGR">
<keysym keyval="65027">ISO_Level3_Shift</keysym>
<keysym keyval="65027">ISO_Level3_Shift</keysym>
<keysym keyval="65027" label="ABC">ISO_Level3_Shift</keysym>
<keysym keyval="65027" label="ABC">ISO_Level3_Shift</keysym>
</key>
<key keycode="38" name="AC01">
<keysym keyval="97">a</keysym>
@ -235,6 +238,9 @@
</key>
<key keycode="50" name="LFSH">
<keysym keyval="65505">Shift_L</keysym>
<keysym keyval="65505">Shift_L</keysym>
<keysym keyval="65505" label="=/+">Shift_L</keysym>
<keysym keyval="65505" label="123">Shift_L</keysym>
</key>
<key keycode="52" name="AB01">
<keysym keyval="122">z</keysym>

View File

@ -208,10 +208,22 @@ set_level_from_modifiers (EekKeyboard *self)
EekKeyboardPrivate *priv = EEK_KEYBOARD_GET_PRIVATE(self);
gint level = 0;
if (priv->modifiers & priv->alt_gr_mask)
if (priv->modifiers & priv->alt_gr_mask) {
/* Alt-Gr is the 123 and ABC keys */
priv->modifier_behavior = EEK_MODIFIER_BEHAVIOR_LOCK;
level |= 2;
if (priv->modifiers & EEK_SHIFT_MASK)
}
if (priv->modifiers & EEK_SHIFT_MASK) {
/* Left Shift is the Shift and =/+ keys */
level |= 1;
if (level == 1)
priv->modifier_behavior = EEK_MODIFIER_BEHAVIOR_LATCH;
else
priv->modifier_behavior = EEK_MODIFIER_BEHAVIOR_LOCK;
}
eek_element_set_level (EEK_ELEMENT(self), level);
}