diff --git a/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java b/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java
index 48361bf8cd80904dba50d55edb42faf997204778..a2ae0ef4eeb41c6f073c24a0c4cf2b2690fbb246 100644
--- a/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java
+++ b/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java
@@ -118,11 +118,17 @@ public final class AccountsSettingsFragment extends SubScreenFragment {
         if (!ProductionFlags.ENABLE_USER_HISTORY_DICTIONARY_SYNC) {
             removeSyncPreferences();
         } else {
+            // Temporarily disable the preferences till we can
+            // check that we don't have a work profile.
             disableSyncPreferences();
             new ManagedProfileCheckerTask(this).execute();
         }
     }
 
+    /**
+     * Task to check work profile. If found, it removes the sync prefs. If not,
+     * it enables them.
+     */
     private static class ManagedProfileCheckerTask extends AsyncTask<Void, Void, Void> {
         private final AccountsSettingsFragment mFragment;
 
@@ -132,10 +138,11 @@ public final class AccountsSettingsFragment extends SubScreenFragment {
 
         @Override
         protected Void doInBackground(Void... params) {
-            if (ManagedProfileUtils.getInstance().hasManagedWorkProfile(mFragment.getActivity())) {
+            if (ManagedProfileUtils.getInstance().hasWorkProfile(mFragment.getActivity())) {
                 mFragment.removeSyncPreferences();
             } else {
-                mFragment.enableSyncPreferences();
+                mFragment.refreshAccountAndDependentPreferences(
+                        mFragment.getSignedInAccountName());
             }
             return null;
         }