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

Commit 5cb9f780 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix double divider in Privacy page"

parents 33296d6d f3e3d7a4
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -123,10 +123,13 @@ public class PermissionBarChartPreferenceController extends BasePreferenceContro
            return;
        }

        // Add a shadow animation to action bar scroll only when the chart is available.
        com.android.settings.Utils.setActionBarShadowAnimation(mParent.getActivity(),
                mParent.getSettingsLifecycle(), mParent.getListView());
        // We don't hide chart when we have existing data.
        mBarChartPreference.updateLoadingState(mOldUsageInfos.isEmpty() /* isLoading */);
        // But we still need to hint user with progress bar that we are updating new usage data.
        mParent.setLoadingEnabled(true /* enabled */);
        mParent.showPinnedHeader(true);
        retrievePermissionUsageData();
    }

@@ -162,7 +165,7 @@ public class PermissionBarChartPreferenceController extends BasePreferenceContro
        }

        mBarChartPreference.updateLoadingState(false /* isLoading */);
        mParent.setLoadingEnabled(false /* enabled */);
        mParent.showPinnedHeader(false);
    }

    private void retrievePermissionUsageData() {
+2 −17
Original line number Diff line number Diff line
@@ -45,11 +45,6 @@ public class PrivacyDashboardFragment extends DashboardFragment {
    private static final String KEY_NOTIFICATION_WORK_PROFILE_NOTIFICATIONS =
            "privacy_lock_screen_work_profile_notifications";

    @VisibleForTesting
    View mProgressHeader;
    @VisibleForTesting
    View mProgressAnimation;

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.TOP_LEVEL_PRIVACY;
@@ -84,23 +79,13 @@ public class PrivacyDashboardFragment extends DashboardFragment {
    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        Utils.setActionBarShadowAnimation(getActivity(), getSettingsLifecycle(), getListView());
        initLoadingBar();
    }

    @VisibleForTesting
    void initLoadingBar() {
        mProgressHeader = setPinnedHeaderView(R.layout.progress_header);
        mProgressAnimation = mProgressHeader.findViewById(R.id.progress_bar_animation);
        setLoadingEnabled(false);
    }

    @VisibleForTesting
    void setLoadingEnabled(boolean enabled) {
        if (mProgressHeader != null && mProgressAnimation != null) {
            mProgressHeader.setVisibility(enabled ? View.VISIBLE : View.INVISIBLE);
            mProgressAnimation.setVisibility(enabled ? View.VISIBLE : View.INVISIBLE);
        }
        setPinnedHeaderView(R.layout.progress_header);
        showPinnedHeader(false);
    }

    private static List<AbstractPreferenceController> buildPreferenceControllers(
+8 −6
Original line number Diff line number Diff line
@@ -103,8 +103,7 @@ public class PermissionBarChartPreferenceControllerTest {
                .create().start().get());
        mController.setFragment(mFragment);
        mPreference = spy(new BarChartPreference(context));
        when(mScreen.findPreference(mController.getPreferenceKey()))
                .thenReturn((BarChartPreference) mPreference);
        when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
    }

    @After
@@ -189,7 +188,8 @@ public class PermissionBarChartPreferenceControllerTest {

        mController.onStart();

        verify(mFragment).setLoadingEnabled(true /* enabled */);
        assertThat(mFragment.getActivity().getActionBar().getElevation()).isZero();
        verify(mFragment).showPinnedHeader(true);
        verify(mPreference).updateLoadingState(true /* isLoading */);
    }

@@ -205,7 +205,8 @@ public class PermissionBarChartPreferenceControllerTest {

        mController.onStart();

        verify(mFragment).setLoadingEnabled(true /* enabled */);
        assertThat(mFragment.getActivity().getActionBar().getElevation()).isZero();
        verify(mFragment).showPinnedHeader(true);
        verify(mPreference).updateLoadingState(false /* isLoading */);
    }

@@ -217,7 +218,8 @@ public class PermissionBarChartPreferenceControllerTest {

        mController.onStart();

        verify(mFragment, never()).setLoadingEnabled(true /* enabled */);
        assertThat(mFragment.getActivity().getActionBar().getElevation()).isNonZero();
        verify(mFragment, never()).showPinnedHeader(true);
        verify(mPreference, never()).updateLoadingState(true /* isLoading */);
    }

@@ -231,7 +233,7 @@ public class PermissionBarChartPreferenceControllerTest {

        mController.onPermissionUsageResult(infos1);

        verify(mFragment).setLoadingEnabled(false /* enabled */);
        verify(mFragment).showPinnedHeader(false);
        verify(mPreference).updateLoadingState(false /* isLoading */);
    }

+0 −28
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@

package com.android.settings.privacy;

import static com.google.common.truth.Truth.assertThat;

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
@@ -27,7 +25,6 @@ import android.content.Context;
import android.content.pm.UserInfo;
import android.os.Bundle;
import android.os.UserManager;
import android.permission.PermissionControllerManager;
import android.view.View;
import android.view.accessibility.AccessibilityManager;

@@ -57,8 +54,6 @@ public class PrivacyDashboardFragmentTest {

    @Mock
    private LockPatternUtils mLockPatternUtils;
    @Mock
    private PermissionControllerManager mPCM;

    private Context mContext;
    private PrivacyDashboardFragment mFragment;
@@ -79,33 +74,10 @@ public class PrivacyDashboardFragmentTest {
                .create().start().get());
    }

    @Test
    public void onViewCreated_shouldSetActionBarShadowAnimation() {
        mFragment.onViewCreated(new View(mContext), new Bundle());

        assertThat(mFragment.getActivity().getActionBar().getElevation()).isEqualTo(0.f);
    }

    @Test
    public void onViewCreated_shouldInitLinearProgressBar() {
        mFragment.onViewCreated(new View(mContext), new Bundle());

        verify(mFragment).initLoadingBar();
    }

    @Test
    public void updateLinearProgressbar_isVisible_shouldShowProgressBar() {
        mFragment.setLoadingEnabled(true /* enabled */);

        assertThat(mFragment.mProgressHeader.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mFragment.mProgressAnimation.getVisibility()).isEqualTo(View.VISIBLE);
    }

    @Test
    public void updateLinearProgressbar_isInVisible_shouldHideProgressBar() {
        mFragment.setLoadingEnabled(false /* enabled */);

        assertThat(mFragment.mProgressHeader.getVisibility()).isEqualTo(View.INVISIBLE);
        assertThat(mFragment.mProgressAnimation.getVisibility()).isEqualTo(View.INVISIBLE);
    }
}