Not all selected languages are deleted in language preferences

Bug: 67883179
Change-Id: I650084cc3fceb82c874e8e8e36bf5182da183f2b
Fixes: 67883179
Test: manual test by following the reproduce steps
Test: verify the issue is fixed
This commit is contained in:
Jacky Wang
2017-10-17 18:43:45 +08:00
parent 7b6b22301e
commit e462c0ab72

View File

@@ -29,6 +29,7 @@ import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import com.android.internal.app.LocalePicker;
@@ -159,10 +160,13 @@ class LocaleDragAndDropAdapter
dragCell.setShowCheckbox(mRemoveMode);
dragCell.setShowMiniLabel(!mRemoveMode);
dragCell.setShowHandle(!mRemoveMode && mDragEnabled);
dragCell.setChecked(mRemoveMode ? feedItem.getChecked() : false);
dragCell.setTag(feedItem);
dragCell.getCheckbox()
.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
CheckBox checkbox = dragCell.getCheckbox();
// clear listener before setChecked() in case another item already bind to
// current ViewHolder and checked event is triggered on stale listener mistakenly.
checkbox.setOnCheckedChangeListener(null);
checkbox.setChecked(mRemoveMode ? feedItem.getChecked() : false);
checkbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
LocaleStore.LocaleInfo feedItem =