diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/us/minak/IMEGestureOverlayView.java | 6 | ||||
-rw-r--r-- | src/us/minak/IMEService.java | 29 | ||||
-rw-r--r-- | src/us/minak/IMEView.java | 105 |
3 files changed, 4 insertions, 136 deletions
diff --git a/src/us/minak/IMEGestureOverlayView.java b/src/us/minak/IMEGestureOverlayView.java index b167c53..7e8867d 100644 --- a/src/us/minak/IMEGestureOverlayView.java +++ b/src/us/minak/IMEGestureOverlayView.java @@ -33,6 +33,7 @@ public class IMEGestureOverlayView extends GestureOverlayView implements OnGestu private final GestureLibrary mGestureLibrary; private StringReciever mOnGestureRecognizedListener; public List<MetaCircle> circles = new LinkedList<MetaCircle>(); + private final Paint mPaint = new Paint(); public IMEGestureOverlayView(Context context, AttributeSet attrs) { super(context, attrs); @@ -63,9 +64,8 @@ public class IMEGestureOverlayView extends GestureOverlayView implements OnGestu public void onDraw(Canvas canvas) { for (MetaCircle circle : circles) { - final Paint p = new Paint(); - p.setColor(circle.color); - canvas.drawCircle(circle.x, circle.y, circle.radius, p); + mPaint.setColor(circle.color); + canvas.drawCircle(circle.x, circle.y, circle.radius, mPaint); } } } diff --git a/src/us/minak/IMEService.java b/src/us/minak/IMEService.java index ae12bc2..a0a9ece 100644 --- a/src/us/minak/IMEService.java +++ b/src/us/minak/IMEService.java @@ -35,17 +35,6 @@ public class IMEService extends InputMethodService { } }); - minakView.setOnBackspacePressedListener(new OnBackspacePressedListener() { - @Override - public void backspacePressed(boolean isLongClick) { - if (isLongClick) { - deleteLastWord(); - } else { - getCurrentInputConnection().deleteSurroundingText(1, 0); - } - } - }); - mIMEView = minakView; return minakView; } @@ -60,22 +49,4 @@ public class IMEService extends InputMethodService { } } } - - /** - * Deletes one word before the cursor. - */ - private void deleteLastWord() { - final int charactersToGet = 20; - final String splitRegexp = " "; - - // delete trailing spaces - while (getCurrentInputConnection().getTextBeforeCursor(1, 0).toString().equals(splitRegexp)) { - getCurrentInputConnection().deleteSurroundingText(1, 0); - } - - // delete last word letters - final String[] words = getCurrentInputConnection().getTextBeforeCursor(charactersToGet, 0).toString() - .split(splitRegexp); - getCurrentInputConnection().deleteSurroundingText(words[words.length - 1].length(), 0); - } } diff --git a/src/us/minak/IMEView.java b/src/us/minak/IMEView.java index 7cdf4fd..2cf7921 100644 --- a/src/us/minak/IMEView.java +++ b/src/us/minak/IMEView.java @@ -30,9 +30,6 @@ import android.widget.RelativeLayout; */ public class IMEView extends RelativeLayout { private StringReciever mOnCharacterEnteredListener; - private OnBackspacePressedListener mOnBackspacePressedListener; - private Button mShiftButton; - private ShiftState mShiftState = ShiftState.OFF; private final Queue<Character> mSymbolsQueue = new LinkedList<Character>(); private float x; @@ -56,10 +53,6 @@ public class IMEView extends RelativeLayout { return ongoingGesture; } - private enum ShiftState { - OFF, ON, CAPS_LOCK - }; - public IMEView(Context context, AttributeSet attrs) { super(context, attrs); } @@ -74,18 +67,6 @@ public class IMEView extends RelativeLayout { } }); - mShiftButton = (Button) findViewById(R.id.shift_btn); - mShiftButton.setOnClickListener(mButtonClickListener); - mShiftButton.setOnLongClickListener(mButtonLongClickListener); - - final Button backspaceButton = (Button) findViewById(R.id.backspace_btn); - backspaceButton.setOnClickListener(mButtonClickListener); - backspaceButton.setOnLongClickListener(mButtonLongClickListener); - - final Button spaceButton = (Button) findViewById(R.id.space_btn); - spaceButton.setOnClickListener(mButtonClickListener); - spaceButton.setOnLongClickListener(mButtonLongClickListener); - //dynamic MetaCircle adding stuff here. replace null with Shift or Ctrl or Meta or Alt or Hyper or whatever. drawingSpaceView.circles.add(new MetaCircle((float)50.0, (float)50.0, (float)20.0, Color.RED, new MetaExpression(null))); drawingSpaceView.circles.add(new MetaCircle((float)70.0, (float)70.0, (float)20.0, Color.RED, new MetaExpression(null))); @@ -96,58 +77,10 @@ public class IMEView extends RelativeLayout { mOnCharacterEnteredListener = onCharacterEnteredListener; } - public void setOnBackspacePressedListener(OnBackspacePressedListener onBackspacePressedListener) { - mOnBackspacePressedListener = onBackspacePressedListener; - } - public Queue<Character> getSymbolsQueue() { return mSymbolsQueue; } - /** - * Listener handling pressing all buttons. - */ - private final OnClickListener mButtonClickListener = new OnClickListener() { - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.shift_btn: - shift(); - break; - case R.id.backspace_btn: - mOnBackspacePressedListener.backspacePressed(false); - break; - case R.id.space_btn: - mOnCharacterEnteredListener.putString(" "); - break; - default: - throw new IllegalArgumentException(); - } - } - }; - - /** - * Listener handling long pressing all buttons. - */ - private final OnLongClickListener mButtonLongClickListener = new OnLongClickListener() { - @Override - public boolean onLongClick(View v) { - switch (v.getId()) { - case R.id.shift_btn: - break; - case R.id.backspace_btn: - mOnBackspacePressedListener.backspacePressed(true); - return true; - case R.id.space_btn: - break; - default: - throw new IllegalArgumentException(); - } - - return false; - } - }; - private final OnTouchListener mOnTouchListener = new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { @@ -156,48 +89,12 @@ public class IMEView extends RelativeLayout { }; /** - * Changes shift state to the next one (OFF -> ON -> CAPS LOCK). - */ - private void shift() { - switch (mShiftState) { - case OFF: - mShiftState = ShiftState.ON; - //mShiftButton.setBackgroundResource(R.drawable.shift_on); - break; - case ON: - mShiftState = ShiftState.CAPS_LOCK; - //mShiftButton.setBackgroundResource(R.drawable.shift_caps_lock); - break; - case CAPS_LOCK: - mShiftState = ShiftState.OFF; - //mShiftButton.setBackgroundResource(R.drawable.shift_off); - break; - default: - throw new IllegalArgumentException(); - } - } - - /** * Passes the given character to the input service. * * @param character * The character to enter */ private void enterCharacter(String character) { - //for each circle in circles check to see if the touch was in the circle and apply the meta-key - switch (mShiftState) { - case OFF: - mOnCharacterEnteredListener.putString(character); - break; - case ON: - mOnCharacterEnteredListener.putString(character.toUpperCase(Locale.ENGLISH)); - shift(); - break; - case CAPS_LOCK: - mOnCharacterEnteredListener.putString(character.toUpperCase(Locale.ENGLISH)); - break; - default: - throw new IllegalArgumentException(); - } + mOnCharacterEnteredListener.putString(character); } } |