Add tablayout for work/personal profile
- Add Tablayout in ProfileSelectFragment - Add AccountWorkProfileDashboardFragment inherited from ProfileSelectFragment - Add ProfileFragmentBridge to convert AccountDashboardFragment to AccountProfileSelectFragment - Use flag settings_work_profile to guard the new fragment Bug: 141601408 Test: Settings->developer options->feature flags-> turn settings_work_profile on/off, then go to settings->account to see if UI is changed. Change-Id: Ifb32c22cdeab69c51517664081cacf4a401c46a1
This commit is contained in:
@@ -35,6 +35,7 @@ import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.text.TextUtils;
|
||||
import android.util.FeatureFlagUtils;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
@@ -52,11 +53,13 @@ import androidx.preference.PreferenceManager;
|
||||
import com.android.internal.util.ArrayUtils;
|
||||
import com.android.settings.Settings.WifiSettingsActivity;
|
||||
import com.android.settings.applications.manageapplications.ManageApplications;
|
||||
import com.android.settings.core.FeatureFlags;
|
||||
import com.android.settings.core.OnActivityResultListener;
|
||||
import com.android.settings.core.SettingsBaseActivity;
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settings.core.gateway.SettingsGateway;
|
||||
import com.android.settings.dashboard.DashboardFeatureProvider;
|
||||
import com.android.settings.dashboard.profileselector.ProfileFragmentBridge;
|
||||
import com.android.settings.homepage.TopLevelSettings;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settings.wfd.WifiDisplaySettings;
|
||||
@@ -565,7 +568,15 @@ public class SettingsActivity extends SettingsBaseActivity
|
||||
throw new IllegalArgumentException("Invalid fragment for this activity: "
|
||||
+ fragmentName);
|
||||
}
|
||||
Fragment f = Fragment.instantiate(this, fragmentName, args);
|
||||
Fragment f = null;
|
||||
if (FeatureFlagUtils.isEnabled(this, FeatureFlags.PERSONAL_WORK_PROFILE)
|
||||
&& UserManager.get(this).getUserProfiles().size() > 1
|
||||
&& ProfileFragmentBridge.FRAGMENT_MAP.get(fragmentName) != null) {
|
||||
f = Fragment.instantiate(this, ProfileFragmentBridge.FRAGMENT_MAP.get(fragmentName),
|
||||
args);
|
||||
} else {
|
||||
f = Fragment.instantiate(this, fragmentName, args);
|
||||
}
|
||||
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
|
||||
transaction.replace(R.id.main_content, f);
|
||||
if (titleResId > 0) {
|
||||
|
Reference in New Issue
Block a user