Index: ui/keyboard/resources/main.js |
diff --git a/ui/keyboard/resources/main.js b/ui/keyboard/resources/main.js |
index 0b07c90615d9877361fb54a0e6865cbce15f819a..03f2c5515b52f37ddfc1a62c07e466f2842de314 100644 |
--- a/ui/keyboard/resources/main.js |
+++ b/ui/keyboard/resources/main.js |
@@ -308,7 +308,7 @@ |
weight += allKeys[i].weight; |
} |
var availableWidth = width - (allKeys.length - 1) * pitch; |
- var pixelsPerWeight = width / weight; |
+ var pixelsPerWeight = availableWidth / weight; |
for (var i = 0; i < allKeys.length; i++) { |
var keyWidth = Math.floor(allKeys[i].weight * pixelsPerWeight); |
if (i == allKeys.length -1) { |
@@ -455,9 +455,11 @@ |
case RowAlignment.CENTER: |
xOffset += Math.floor(extra/2) |
break; |
- case RowAlignment.JUSTIFY: |
+ case RowAlignment.RIGHT: |
xOffset += extra; |
break; |
+ case RowAlignment.STRETCHRIGHT: |
+ all[all.length-1].setAttribute('bonus', extra); |
kevers
2014/01/31 20:11:00
See comment below on "bonus".
rsadam
2014/01/31 20:40:18
Done.
|
default: |
break; |
}; |
@@ -467,12 +469,11 @@ |
for (var i = 0; i < all.length; i++) { |
var key = all[i]; |
var width = params.keyWidth; |
- if (key.weight != DEFAULT_KEY_WEIGHT_X) { |
+ if (key.weight != DEFAULT_KEY_WEIGHT_X) |
width = Math.floor((params.keyWidth/DEFAULT_KEY_WEIGHT_X) * key.weight) |
- var bonus = key.getAttribute('bonus') |
- if (bonus) |
- width += parseInt(bonus) |
- } |
+ var bonus = key.getAttribute('bonus') |
kevers
2014/01/31 20:11:00
"bonus" is too generic. Also, we should be taking
rsadam
2014/01/31 20:40:18
Done.
|
+ if (bonus) |
+ width += parseInt(bonus) |
updateKey(key, width, params.keyHeight, left, yOffset) |
left += (width + params.pitchX); |
} |
@@ -525,6 +526,11 @@ |
*/ |
function realignKeyset(keyset, params) { |
var rows = keyset.querySelectorAll('kb-row').array(); |
+ var maxSize = getKeyboardBounds(); |
+ var height = (maxSize.width > ASPECT_RATIO * maxSize.height) ? |
+ maxSize.height : Math.floor(maxSize.width / ASPECT_RATIO); |
+ keyset.style.fontSize = (height / FONT_SIZE_RATIO / rows.length) + 'px'; |
+ |
var heightOffset = 0; |
for (var i = 0; i < rows.length; i++) { |
var row = rows[i]; |