Get rid of arrows in candidate view

bug: 2959293
Change-Id: Ia5dcb29397f608846f865fabb3c696866b3687aa
main
Ken Wakasa 2010-09-01 17:54:12 +09:00
parent d4f60bc8fc
commit 40ac45ebdc
9 changed files with 5 additions and 131 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 445 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 440 B

View File

@ -18,7 +18,7 @@
*/
-->
<com.android.inputmethod.latin.CandidateViewContainer
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
@ -26,27 +26,6 @@
android:background="@drawable/keyboard_suggest_strip"
>
<LinearLayout
android:id="@+id/candidate_left_parent"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal">
<ImageButton
android:id="@+id/candidate_left"
android:background="@drawable/ic_suggest_scroll_background"
android:src="@drawable/ic_suggest_strip_scroll_left_arrow"
android:layout_width="36dp"
android:layout_height="match_parent"
android:clickable="true"
/>
<ImageView
android:src="@drawable/keyboard_suggest_strip_divider"
android:layout_width="wrap_content"
android:layout_height="match_parent"
/>
</LinearLayout>
<com.android.inputmethod.latin.CandidateView
android:id="@+id/candidates"
android:layout_width="wrap_content"
@ -54,26 +33,4 @@
android:layout_weight="1"
/>
<LinearLayout
android:id="@+id/candidate_right_parent"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:clickable="true"
android:orientation="horizontal">
<ImageView
android:src="@drawable/keyboard_suggest_strip_divider"
android:layout_width="wrap_content"
android:layout_height="match_parent"
/>
<ImageButton
android:id="@+id/candidate_right"
android:background="@drawable/ic_suggest_scroll_background"
android:src="@drawable/ic_suggest_strip_scroll_right_arrow"
android:layout_width="36dp"
android:layout_height="match_parent"
android:clickable="true"
/>
</LinearLayout>
</com.android.inputmethod.latin.CandidateViewContainer>
</LinearLayout>

View File

@ -1,83 +0,0 @@
/*
* Copyright (C) 2008 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.latin;
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.LinearLayout;
public class CandidateViewContainer extends LinearLayout implements OnTouchListener {
private View mButtonLeft;
private View mButtonRight;
private View mButtonLeftLayout;
private View mButtonRightLayout;
private CandidateView mCandidates;
public CandidateViewContainer(Context screen, AttributeSet attrs) {
super(screen, attrs);
}
public void initViews() {
if (mCandidates == null) {
mButtonLeftLayout = findViewById(R.id.candidate_left_parent);
mButtonLeft = findViewById(R.id.candidate_left);
if (mButtonLeft != null) {
mButtonLeft.setOnTouchListener(this);
}
mButtonRightLayout = findViewById(R.id.candidate_right_parent);
mButtonRight = findViewById(R.id.candidate_right);
if (mButtonRight != null) {
mButtonRight.setOnTouchListener(this);
}
mCandidates = (CandidateView) findViewById(R.id.candidates);
}
}
@Override
public void requestLayout() {
if (mCandidates != null) {
int availableWidth = mCandidates.getWidth();
int neededWidth = mCandidates.computeHorizontalScrollRange();
int x = mCandidates.getScrollX();
boolean leftVisible = x > 0;
boolean rightVisible = x + availableWidth < neededWidth;
if (mButtonLeftLayout != null) {
mButtonLeftLayout.setVisibility(leftVisible ? VISIBLE : GONE);
}
if (mButtonRightLayout != null) {
mButtonRightLayout.setVisibility(rightVisible ? VISIBLE : GONE);
}
}
super.requestLayout();
}
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
if (v == mButtonRight) {
mCandidates.scrollNext();
} else if (v == mButtonLeft) {
mCandidates.scrollPrev();
}
}
return false;
}
}

View File

@ -61,6 +61,7 @@ import android.view.inputmethod.ExtractedText;
import android.view.inputmethod.ExtractedTextRequest;
import android.view.inputmethod.InputConnection;
import android.view.inputmethod.InputMethodManager;
import android.widget.LinearLayout;
import java.io.FileDescriptor;
import java.io.IOException;
@ -153,7 +154,7 @@ public class LatinIME extends InputMethodService
private static final int POS_METHOD = 1;
//private LatinKeyboardView mInputView;
private CandidateViewContainer mCandidateViewContainer;
private LinearLayout mCandidateViewContainer;
private CandidateView mCandidateView;
private Suggest mSuggest;
private CompletionInfo[] mCompletions;
@ -538,9 +539,8 @@ public class LatinIME extends InputMethodService
@Override
public View onCreateCandidatesView() {
mKeyboardSwitcher.makeKeyboards(true);
mCandidateViewContainer = (CandidateViewContainer) getLayoutInflater().inflate(
mCandidateViewContainer = (LinearLayout) getLayoutInflater().inflate(
R.layout.candidates, null);
mCandidateViewContainer.initViews();
mCandidateView = (CandidateView) mCandidateViewContainer.findViewById(R.id.candidates);
mCandidateView.setService(this);
setCandidatesViewShown(true);