The locked label color is a special color that displays when the user
holds a modifier key for very long. In !7, this locked color replaced
the color for the pressed non-modifier key with no explanation. Revert
the change and use the "label_pressed" color for a non-modifier key
being pressed.
With the new layout switching, the size of the layout can change. The
scale depends on the size of the layout. Update the graphics scale when
the layout changes.
Some applications have features (like typing Unicode codepoints in foot)
that can only be used with key presses. Add a Meta key to allow the user
to always send a keypress.
Extend the height of the label when a glyph goes past the descent.
Also truncate the bitmap when the height is final.
Also remove statements added for debugging.
Some glyphs, specifically some Arabic text, may have a top that is
higher than the ascent value of the font, or a bottom that is lower than
the descent value of the font. For glyphs that fit inside the area, the
ascent and descent should be used for aligning with the top or bottom of
a key respectively. For glyphs that do not, align the top and bottom of
the text with the top and bottom of the key.