diff --git a/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java b/java/src/com/android/inputmethod/latin/settings/AccountsSettingsFragment.java
index 48361bf..a2ae0ef 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 @@
         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 @@
 
         @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;
         }
