Tadashi G. Takaoka d773bf38a3 Cleanup key drawing code
This change also modifies 9-patch drawables to fix the following
issues.  In order to draw key background drawable just on the
coordinates we want, we have to know where an actual "visible" part is
in the drawable.  The only clue we can use is "padding" of the
drawable.  To achieve this, the 9-patch drawable must have its
"visible" part marked as "content".  Please refer the Bug: 4948171 for
more detailed explanation.

This change also reverts the following "black" drawables back from
Gingerbread because recent change broke these (I70019a91).
  * drawable-hdpi/sym_bkeyboard_*.png
  * drawable-hdpi/btn_keyboard_key_*_stone.9.png

Bug: 4948171
Change-Id: I6e4d03b3144caa95c793aac97af22df34c5f454f
2011-06-29 18:34:57 +09:00

47 lines
1.8 KiB
Java

/*
* Copyright (C) 2011 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.android.inputmethod.keyboard;
import android.content.Context;
public class MiniKeyboard extends Keyboard {
private int mDefaultKeyCoordX;
public MiniKeyboard(Context context, int xmlLayoutResId, Keyboard parentKeyboard) {
super(context, xmlLayoutResId, parentKeyboard.mId.cloneAsMiniKeyboard(),
parentKeyboard.getMinWidth());
// HACK: Current mini keyboard design totally relies on the 9-patch padding about horizontal
// and vertical key spacing. To keep the visual of mini keyboard as is, these hacks are
// needed to keep having the same horizontal and vertical key spacing.
setHorizontalGap(0);
setVerticalGap(parentKeyboard.getVerticalGap() / 2);
// TODO: When we have correctly padded key background 9-patch drawables for mini keyboard,
// revert the above hacks and uncomment the following lines.
//setHorizontalGap(parentKeyboard.getHorizontalGap());
//setVerticalGap(parentKeyboard.getVerticalGap());
}
public void setDefaultCoordX(int pos) {
mDefaultKeyCoordX = pos;
}
public int getDefaultCoordX() {
return mDefaultKeyCoordX;
}
}