diff --git a/src/com/android/settings/accounts/SyncStateCheckBoxPreference.java b/src/com/android/settings/accounts/SyncStateCheckBoxPreference.java index b200eb67d99..4b9ca81b2c1 100644 --- a/src/com/android/settings/accounts/SyncStateCheckBoxPreference.java +++ b/src/com/android/settings/accounts/SyncStateCheckBoxPreference.java @@ -20,6 +20,7 @@ import com.android.settings.R; import android.content.Context; import android.graphics.drawable.AnimationDrawable; +import android.os.Handler; import android.preference.CheckBoxPreference; import android.util.AttributeSet; import android.view.View; @@ -40,7 +41,7 @@ public class SyncStateCheckBoxPreference extends CheckBoxPreference { * toggling whether the provider will do autosync. */ private boolean mOneTimeSyncMode = false; - + public SyncStateCheckBoxPreference(Context context, AttributeSet attrs) { super(context, attrs); setWidgetLayoutResource(R.layout.preference_widget_sync_toggle); @@ -67,7 +68,7 @@ public class SyncStateCheckBoxPreference extends CheckBoxPreference { boolean showError; boolean showPending; if (mIsActive) { - syncActiveView.post(new Runnable() { + new Handler(getContext().getMainLooper()).post(new Runnable() { public void run() { anim.start(); } @@ -87,11 +88,11 @@ public class SyncStateCheckBoxPreference extends CheckBoxPreference { syncFailedView.setVisibility(showError ? View.VISIBLE : View.GONE); syncPendingView.setVisibility((showPending && !mIsActive) ? View.VISIBLE : View.GONE); - + View checkBox = view.findViewById(android.R.id.checkbox); if (mOneTimeSyncMode) { checkBox.setVisibility(View.GONE); - + /* * Override the summary. Fill in the %1$s with the existing summary * (what ends up happening is the old summary is shown on the next @@ -138,7 +139,7 @@ public class SyncStateCheckBoxPreference extends CheckBoxPreference { mOneTimeSyncMode = oneTimeSyncMode; notifyChanged(); } - + /** * Gets whether the preference is in one-time sync mode. */ @@ -152,7 +153,7 @@ public class SyncStateCheckBoxPreference extends CheckBoxPreference { // checkbox state if (!mOneTimeSyncMode) { super.onClick(); - } + } } public Account getAccount() {