summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKholoud Mohamed <kholoudm@google.com>2020-06-08 14:03:05 +0100
committerKholoud Mohamed <kholoudm@google.com>2020-06-08 16:03:58 +0100
commit8fc0a24bc2af40e302ed3dec36920c32f517a105 (patch)
tree374f515973b6fab8754c50336eacf8835cae4f29
parenta44860c880327bb57ac5ad843ffdc5963a55b9cf (diff)
downloadpackages_apps_Settings-8fc0a24bc2af40e302ed3dec36920c32f517a105.tar.gz
packages_apps_Settings-8fc0a24bc2af40e302ed3dec36920c32f517a105.tar.bz2
packages_apps_Settings-8fc0a24bc2af40e302ed3dec36920c32f517a105.zip
Add extra summary string in cross profiles page
Fixes: 158227594 Test: manual testing Change-Id: Idd44c690c2a77503173e733a49bc59c1717cbdd5
-rw-r--r--res/values/strings.xml5
-rw-r--r--res/xml/interact_across_profiles_permissions_details.xml5
-rw-r--r--src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java18
3 files changed, 26 insertions, 2 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 910aba47c8..887991942b 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -8706,6 +8706,11 @@
to the user's IT admin. [CHAR LIMIT=NONE] -->
<string name="interact_across_profiles_summary_2">Only connect apps if you trust them not to share personal data with your IT admin.</string>
+ <!-- Settings text. This text lets a user know that they can disconnect work and personal apps from
+ the Privacy page in settings, This is only shown when the connected app page is launched via
+ an app, not when navigated to via settings. [CHAR LIMIT=NONE] -->
+ <string name="interact_across_profiles_summary_3">You can disconnect apps anytime in your device\u2019s privacy settings.</string>
+
<!-- Dialog title. This dialog is shown when a user tries to connect a work app to a personal
app (e.g. their work Calendar to their personal Calendar), and it's confirming that they should
connect the apps only if they trust the work app with their personal data. [CHAR LIMIT=NONE] -->
diff --git a/res/xml/interact_across_profiles_permissions_details.xml b/res/xml/interact_across_profiles_permissions_details.xml
index c40eaf542f..bf0ea8fbfd 100644
--- a/res/xml/interact_across_profiles_permissions_details.xml
+++ b/res/xml/interact_across_profiles_permissions_details.xml
@@ -38,4 +38,9 @@
<Preference
android:summary="@string/interact_across_profiles_summary_2"
android:selectable="false" />
+
+ <Preference
+ android:key="interact_across_profiles_extra_summary"
+ android:summary="@string/interact_across_profiles_summary_3"
+ android:selectable="false"/>
</PreferenceScreen>
diff --git a/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java b/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
index 1fe9fd6264..71d9d13ade 100644
--- a/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
+++ b/src/com/android/settings/applications/specialaccess/interactacrossprofiles/InteractAcrossProfilesDetails.java
@@ -63,6 +63,8 @@ public class InteractAcrossProfilesDetails extends AppInfoBase
"interact_across_profiles_settings_switch";
private static final String INTERACT_ACROSS_PROFILES_HEADER = "interact_across_profiles_header";
public static final String INSTALL_APP_BANNER_KEY = "install_app_banner";
+ public static final String INTERACT_ACROSS_PROFILE_EXTRA_SUMMARY_KEY =
+ "interact_across_profiles_extra_summary";
public static final String EXTRA_SHOW_FRAGMENT_ARGS = ":settings:show_fragment_args";
public static final String INTENT_KEY = "intent";
@@ -79,6 +81,7 @@ public class InteractAcrossProfilesDetails extends AppInfoBase
private boolean mInstalledInWork;
private String mAppLabel;
private Intent mInstallAppIntent;
+ private boolean mIsPageLaunchedByApp;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -106,6 +109,8 @@ public class InteractAcrossProfilesDetails extends AppInfoBase
mInstallBanner = findPreference(INSTALL_APP_BANNER_KEY);
mInstallBanner.setOnPreferenceClickListener(this);
+ mIsPageLaunchedByApp = launchedByApp();
+
// refreshUi checks that the user can still configure the appOp, return to the
// previous page if it can't.
if (!refreshUi()) {
@@ -113,14 +118,23 @@ public class InteractAcrossProfilesDetails extends AppInfoBase
}
addAppTitleAndIcons(mPersonalProfile, mWorkProfile);
styleActionBar();
+ maybeShowExtraSummary();
logPageLaunchMetrics();
}
+ private void maybeShowExtraSummary() {
+ Preference extraSummary = findPreference(INTERACT_ACROSS_PROFILE_EXTRA_SUMMARY_KEY);
+ if (extraSummary == null) {
+ return;
+ }
+ extraSummary.setVisible(mIsPageLaunchedByApp);
+ }
+
private void logPageLaunchMetrics() {
if (!mCrossProfileApps.canConfigureInteractAcrossProfiles(mPackageName)) {
logNonConfigurableAppMetrics();
}
- if (launchedByApp()) {
+ if (mIsPageLaunchedByApp) {
logEvent(DevicePolicyEnums.CROSS_PROFILE_SETTINGS_PAGE_LAUNCHED_FROM_APP);
} else {
logEvent(DevicePolicyEnums.CROSS_PROFILE_SETTINGS_PAGE_LAUNCHED_FROM_SETTINGS);
@@ -262,7 +276,7 @@ public class InteractAcrossProfilesDetails extends AppInfoBase
logEvent(DevicePolicyEnums.CROSS_PROFILE_SETTINGS_PAGE_USER_CONSENTED);
enableInteractAcrossProfiles(true);
refreshUi();
- if (launchedByApp()) {
+ if (mIsPageLaunchedByApp) {
setIntentAndFinish(/* appChanged= */ true);
}
}