Cherish: Unplug adapter when disabling UDFPS animation
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
@@ -84,6 +84,7 @@ public class UdfpsAnimation extends SettingsPreferenceFragment implements
|
|||||||
private String[] mTitles;
|
private String[] mTitles;
|
||||||
|
|
||||||
private boolean mEnabled;
|
private boolean mEnabled;
|
||||||
|
private UdfpsAnimAdapter mUdfpsAnimAdapter;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
@@ -118,8 +119,7 @@ public class UdfpsAnimation extends SettingsPreferenceFragment implements
|
|||||||
mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
|
mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
|
||||||
GridLayoutManager gridLayoutManager = new GridLayoutManager(getActivity(), 3);
|
GridLayoutManager gridLayoutManager = new GridLayoutManager(getActivity(), 3);
|
||||||
mRecyclerView.setLayoutManager(gridLayoutManager);
|
mRecyclerView.setLayoutManager(gridLayoutManager);
|
||||||
UdfpsAnimAdapter mUdfpsAnimAdapter = new UdfpsAnimAdapter(getActivity());
|
mUdfpsAnimAdapter = new UdfpsAnimAdapter(getActivity());
|
||||||
mRecyclerView.setAdapter(mUdfpsAnimAdapter);
|
|
||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
@@ -143,15 +143,15 @@ public class UdfpsAnimation extends SettingsPreferenceFragment implements
|
|||||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||||
Settings.System.putInt(getActivity().getContentResolver(),
|
Settings.System.putInt(getActivity().getContentResolver(),
|
||||||
Settings.System.UDFPS_ANIM, isChecked ? 1 : 0);
|
Settings.System.UDFPS_ANIM, isChecked ? 1 : 0);
|
||||||
|
mSwitch.setChecked(isChecked);
|
||||||
setEnabled(isChecked);
|
setEnabled(isChecked);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEnabled(boolean enabled) {
|
public void setEnabled(boolean enabled) {
|
||||||
for (int i = 0; i < mRecyclerView.getChildCount(); ++i) {
|
if (enabled) {
|
||||||
RecyclerView.ViewHolder holder = mRecyclerView.getChildViewHolder(mRecyclerView.getChildAt(i));
|
mRecyclerView.setAdapter(mUdfpsAnimAdapter);
|
||||||
holder.itemView.setEnabled(enabled);
|
} else {
|
||||||
holder.itemView.findViewById(R.id.option_thumbnail).setAlpha(enabled ? 1f : 0.5f);
|
mRecyclerView.setAdapter(null);
|
||||||
holder.itemView.findViewById(R.id.option_label).setAlpha(enabled ? 1f : 0.5f);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -215,10 +215,6 @@ public class UdfpsAnimation extends SettingsPreferenceFragment implements
|
|||||||
Settings.System.UDFPS_ANIM_STYLE, position);
|
Settings.System.UDFPS_ANIM_STYLE, position);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
holder.itemView.setEnabled(mEnabled);
|
|
||||||
holder.itemView.findViewById(R.id.option_thumbnail).setAlpha(mEnabled ? 1f : 0.5f);
|
|
||||||
holder.itemView.findViewById(R.id.option_label).setAlpha(mEnabled ? 1f : 0.5f);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user