Skip to content
Snippets Groups Projects
Commit b6c70f4e authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Remove unneeded CustomViewPager class

Originally this hacky class has been introduced by I0824f82c30 to
address bug: 11721001.  Because the bug: 11721001 has been addressed
by I950f13ec40 and etc., this class should be removed.

Bug: 13665882
Change-Id: Iabdd369e4dddb0188534289eea1269fb196895eb
parent e2e41dc2
No related branches found
No related tags found
No related merge requests found
......@@ -73,7 +73,7 @@
android:background="@color/emoji_key_background_color"
android:src="@drawable/sym_keyboard_delete_holo_dark" />
</LinearLayout>
<com.android.inputmethod.keyboard.internal.CustomViewPager
<android.support.v4.view.ViewPager
android:id="@+id/emoji_keyboard_pager"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
......
......@@ -517,6 +517,14 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange
mEmojiLayoutParams.setKeyProperties(spaceKey);
}
@Override
public boolean dispatchTouchEvent(final MotionEvent ev) {
// Add here to the stack trace to nail down the {@link IllegalArgumentException} exception
// in MotionEvent that sporadically happens.
// TODO: Remove this override method once the issue has been addressed.
return super.dispatchTouchEvent(ev);
}
@Override
public void onTabChanged(final String tabId) {
final int categoryId = mEmojiCategory.getCategoryId(tabId);
......
/*
* Copyright (C) 2013 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.internal;
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
/**
* Custom view pager to prevent {@link ViewPager} from crashing while handling multi-touch
* event.
*/
public class CustomViewPager extends ViewPager {
private static final String TAG = CustomViewPager.class.getSimpleName();
public CustomViewPager(final Context context, final AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(final MotionEvent event) {
// This only happens when you multi-touch, take the first finger off and move.
// Unfortunately this causes {@link ViewPager} to crash, so we will ignore such events.
if (event.getAction() == MotionEvent.ACTION_MOVE && event.getPointerId(0) != 0) {
Log.w(TAG, "Ignored multi-touch move event to prevent ViewPager from crashing");
return false;
}
return super.onInterceptTouchEvent(event);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment