Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 802bc6ee authored by Jason Monk's avatar Jason Monk
Browse files

Add branded VPN messages to go along with branded icons

Change-Id: Id2089d50581a958ebab6af1d5b172ec61b1aced3
Fixes: 31019697
parent ac63c858
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1001,6 +1001,9 @@
    <!-- Footer vpn present text [CHAR LIMIT=50] -->
    <string name="vpn_footer">Network may be monitored</string>

    <!-- Footer vpn present text [CHAR LIMIT=50] -->
    <string name="branded_vpn_footer">Network may be monitored</string>

    <!-- Monitoring dialog title for device owned devices [CHAR LIMIT=35] -->
    <string name="monitoring_title_device_owned">Device monitoring</string>

@@ -1037,6 +1040,9 @@
    <!-- Monitoring dialog text for single app (inside personal profile) [CHAR LIMIT=400] -->
    <string name="monitoring_description_app_personal">You\'re connected to <xliff:g id="application">%1$s</xliff:g>, which can monitor your personal network activity, including emails, apps, and websites.</string>

    <!-- Monitoring dialog text for single app (inside personal profile) [CHAR LIMIT=400] -->
    <string name="branded_monitoring_description_app_personal">You\'re connected to <xliff:g id="application">%1$s</xliff:g>, which can monitor your personal network activity, including emails, apps, and websites.</string>

    <!-- Monitoring dialog text for single app (inside work profile) [CHAR LIMIT=400] -->
    <string name="monitoring_description_app_work">Your work profile is managed by <xliff:g id="organization">%1$s</xliff:g>. It is connected to <xliff:g id="application">%2$s</xliff:g>, which can monitor your work network activity, including emails, apps, and websites.\n\nFor more information, contact your administrator.</string>

+19 −12
Original line number Diff line number Diff line
@@ -120,11 +120,10 @@ public class QSFooter implements OnClickListener, DialogInterface.OnClickListene
            mFooterTextId = R.string.device_owned_footer;
            mIsVisible = true;
        } else {
            mFooterTextId = R.string.vpn_footer;
            boolean isBranded = mSecurityController.isVpnBranded();
            mFooterTextId = isBranded ? R.string.branded_vpn_footer : R.string.vpn_footer;
            // Update the VPN footer icon, if needed.
            int footerIconId = (mSecurityController.isVpnBranded()
                ? R.drawable.ic_qs_branded_vpn
                : R.drawable.ic_qs_vpn);
            int footerIconId = isBranded ? R.drawable.ic_qs_branded_vpn : R.drawable.ic_qs_vpn;
            if (mFooterIconId != footerIconId) {
                mFooterIconId = footerIconId;
                mMainHandler.post(mUpdateIcon);
@@ -148,11 +147,15 @@ public class QSFooter implements OnClickListener, DialogInterface.OnClickListene
        String primaryVpn = mSecurityController.getPrimaryVpnName();
        String profileVpn = mSecurityController.getProfileVpnName();
        boolean managed = mSecurityController.hasProfileOwner();
        boolean isBranded = deviceOwner == null && mSecurityController.isVpnBranded();

        mDialog = new SystemUIDialog(mContext);
        if (!isBranded) {
            mDialog.setTitle(getTitle(deviceOwner));
        mDialog.setMessage(getMessage(deviceOwner, profileOwner, primaryVpn, profileVpn, managed));
        mDialog.setButton(DialogInterface.BUTTON_POSITIVE, getPositiveButton(), this);
        }
        mDialog.setMessage(getMessage(deviceOwner, profileOwner, primaryVpn, profileVpn, managed,
                isBranded));
        mDialog.setButton(DialogInterface.BUTTON_POSITIVE, getPositiveButton(isBranded), this);
        if (mSecurityController.isVpnEnabled() && !mSecurityController.isVpnRestricted()) {
            mDialog.setButton(DialogInterface.BUTTON_NEGATIVE, getSettingsButton(), this);
        }
@@ -163,12 +166,12 @@ public class QSFooter implements OnClickListener, DialogInterface.OnClickListene
        return mContext.getString(R.string.status_bar_settings_settings_button);
    }

    private String getPositiveButton() {
        return mContext.getString(R.string.quick_settings_done);
    private String getPositiveButton(boolean isBranded) {
        return mContext.getString(isBranded ? android.R.string.ok : R.string.quick_settings_done);
    }

    private String getMessage(String deviceOwner, String profileOwner, String primaryVpn,
            String profileVpn, boolean primaryUserIsManaged) {
            String profileVpn, boolean primaryUserIsManaged, boolean isBranded) {
        // Show a special warning when the device has device owner, but --
        // TODO See b/25779452 -- device owner doesn't actually have monitoring power.
        if (deviceOwner != null) {
@@ -183,10 +186,14 @@ public class QSFooter implements OnClickListener, DialogInterface.OnClickListene
            if (profileVpn != null) {
                return mContext.getString(R.string.monitoring_description_app_personal_work,
                        profileOwner, profileVpn, primaryVpn);
            } else {
                if (isBranded) {
                    return mContext.getString(R.string.branded_monitoring_description_app_personal);
                } else {
                    return mContext.getString(R.string.monitoring_description_app_personal,
                            primaryVpn);
                }
            }
        } else if (profileVpn != null) {
            return mContext.getString(R.string.monitoring_description_app_work,
                    profileOwner, profileVpn);