diff options
| author | Jules Aguillon | 2021-04-17 23:56:51 +0200 |
|---|---|---|
| committer | Jules Aguillon | 2021-04-17 23:56:51 +0200 |
| commit | 1421bccc7b6588484fcf02517d35c98bbd05f6c4 (patch) | |
| tree | 1e5cfa16905344388142c9787e71051025076148 /srcs/juloo.keyboard2/Keyboard2View.java | |
| parent | ca07bff1330024bd78e28d1bc83940daab678fbb (diff) | |
| download | unexpected-keyboard-1421bccc7b6588484fcf02517d35c98bbd05f6c4.tar.gz unexpected-keyboard-1421bccc7b6588484fcf02517d35c98bbd05f6c4.zip | |
Remove fixed keyboard width
Remove the constant of keys per rows. Add the 'shift' attribute to
declare eventual alignment/blanks in layouts.
Diffstat (limited to 'srcs/juloo.keyboard2/Keyboard2View.java')
| -rw-r--r-- | srcs/juloo.keyboard2/Keyboard2View.java | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/srcs/juloo.keyboard2/Keyboard2View.java b/srcs/juloo.keyboard2/Keyboard2View.java index 84159b2..ccbbb7e 100644 --- a/srcs/juloo.keyboard2/Keyboard2View.java +++ b/srcs/juloo.keyboard2/Keyboard2View.java @@ -18,8 +18,6 @@ import java.util.ArrayList; public class Keyboard2View extends View implements View.OnTouchListener, Handler.Callback { - private static final float KEY_PER_ROW = 10; - private static final long VIBRATE_MIN_INTERVAL = 100; private KeyboardData _keyboard; @@ -187,20 +185,17 @@ public class Keyboard2View extends View private void onTouchDown(float touchX, float touchY, int pointerId) { - float x; - float y; - float keyW; - - y = _config.marginTop - _config.keyHeight; + float y = _config.marginTop - _config.keyHeight; for (KeyboardData.Row row : _keyboard.getRows()) { y += _config.keyHeight; if (touchY < y || touchY >= (y + _config.keyHeight)) continue ; - x = (KEY_PER_ROW * _keyWidth - row.getWidth(_keyWidth)) / 2 + _config.horizontalMargin; + float x = _config.horizontalMargin; for (KeyboardData.Key key : row.getKeys()) { - keyW = _keyWidth * key.width; + x += key.shift * _keyWidth; + float keyW = _keyWidth * key.width; if (touchX >= x && touchX < (x + keyW)) { KeyDown down = getKeyDown(key); @@ -333,21 +328,19 @@ public class Keyboard2View extends View height = (int)(_config.keyHeight * ((float)_keyboard.getRows().size()) + _config.marginTop + _config.marginBottom); setMeasuredDimension(dm.widthPixels, height); - _keyWidth = (getWidth() - (_config.horizontalMargin * 2)) / KEY_PER_ROW; + _keyWidth = (getWidth() - (_config.horizontalMargin * 2)) / _keyboard.getKeysWidth(); } @Override protected void onDraw(Canvas canvas) { - float x; - float y; - - y = _config.marginTop; + float y = _config.marginTop; for (KeyboardData.Row row : _keyboard.getRows()) { - x = (KEY_PER_ROW * _keyWidth - row.getWidth(_keyWidth)) / 2f + _config.horizontalMargin; + float x = _config.horizontalMargin; for (KeyboardData.Key k : row.getKeys()) { + x += k.shift * _keyWidth; float keyW = _keyWidth * k.width; KeyDown keyDown = getKeyDown(k); _tmpRect.set(x + _config.keyBgPadding, y + _config.keyBgPadding, |
