Currently CFPreferences Direct Mode propagation between WebKit constellation processes only supports AnyApp/CurUser/AnyHost preference types: void AuxiliaryProcess::setPreferenceValue(const String& domain, const String& key, id value) { if (domain.isEmpty()) { CFPreferencesSetValue(key.createCFString().get(), (__bridge CFPropertyListRef)value, kCFPreferencesAnyApplication, kCFPreferencesCurrentUser, kCFPreferencesAnyHost); #if ASSERT_ENABLED id valueAfterSetting = [[NSUserDefaults standardUserDefaults] objectForKey:key]; ASSERT(valueAfterSetting == value || [valueAfterSetting isEqual:value] || key == "AppleLanguages"); #endif } else CFPreferencesSetValue(key.createCFString().get(), (__bridge CFPropertyListRef)value, domain.createCFString().get(), kCFPreferencesCurrentUser, kCFPreferencesAnyHost); } We should support propagation of other preference types too, for example CurrentHost.
<rdar://problem/89757052>