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

Commit 4133fc1c authored by Felipe Leme's avatar Felipe Leme
Browse files

Improvements on "App data usage" screen.

- Don't disply whitelist toggle if app is blacklisted.
- Handle scenario where app don't have any quota usage.

BUG: 27481520

Change-Id: I0147025d6bba2d6deeda109aeebb296607550bd8
parent 1e890cb8
Loading
Loading
Loading
Loading
+19 −10
Original line number Diff line number Diff line
@@ -226,9 +226,14 @@ public class AppDataUsage extends DataUsageBase implements Preference.OnPreferen
            mRestrictBackground.setChecked(!getAppRestrictBackground());
        }
        if (mUnrestrictedData != null) {
            if (getAppRestrictBackground()) {
                mUnrestrictedData.setVisible(false);
            } else {
                mUnrestrictedData.setVisible(true);
                mUnrestrictedData.setChecked(mDataSaverBackend.isWhitelisted(mAppItem.key));
            }
        }
    }

    private void addUid(int uid) {
        String[] packages = getPackageManager().getPackagesForUid(uid);
@@ -240,18 +245,21 @@ public class AppDataUsage extends DataUsageBase implements Preference.OnPreferen
    }

    private void bindData() {
        final long backgroundBytes, foregroundBytes;
        if (mChartData == null || mStart == 0) {
            return;
        }
        final Context context = getContext();
            backgroundBytes = foregroundBytes = 0;
            mCycle.setVisible(false);
        } else {
            mCycle.setVisible(true);
            final long now = System.currentTimeMillis();

            NetworkStatsHistory.Entry entry = null;
            entry = mChartData.detailDefault.getValues(mStart, mEnd, now, entry);
        final long backgroundBytes = entry.rxBytes + entry.txBytes;
            backgroundBytes = entry.rxBytes + entry.txBytes;
            entry = mChartData.detailForeground.getValues(mStart, mEnd, now, entry);
        final long foregroundBytes = entry.rxBytes + entry.txBytes;
            foregroundBytes = entry.rxBytes + entry.txBytes;
        }
        final long totalBytes = backgroundBytes + foregroundBytes;
        final Context context = getContext();

        mTotalUsage.setSummary(Formatter.formatFileSize(context, totalBytes));
        mForegroundUsage.setSummary(Formatter.formatFileSize(context, foregroundBytes));
@@ -268,6 +276,7 @@ public class AppDataUsage extends DataUsageBase implements Preference.OnPreferen
        final int uid = mAppItem.key;
        services.mPolicyManager.setUidPolicy(
                uid, restrictBackground ? POLICY_REJECT_METERED_BACKGROUND : POLICY_NONE);
        updatePrefs();        // TODO: should have been notified by NPMS instead
    }

    @Override