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

Commit c5fe8336 authored by Todd Volkert's avatar Todd Volkert Committed by Android (Google) Code Review
Browse files

Merge "Don't flash "No apps" while loading permissions screens on TV" into mnc-dev

parents b11175de a11e73b9
Loading
Loading
Loading
Loading
+14 −8
Original line number Diff line number Diff line
@@ -22,12 +22,16 @@
    android:filterTouchesWhenObscured="true">

    <FrameLayout
        android:id="@+id/prefs_container"
        android:layout_width="@dimen/lb_action_section_width"
        android:layout_height="match_parent"
        android:layout_alignParentEnd="true"
        android:background="@color/lb_action_fragment_background">

        <FrameLayout
            android:id="@+id/prefs_container"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <TextView
                android:id="@+id/no_permissions"
                android:layout_width="match_parent"
@@ -39,6 +43,8 @@

        </FrameLayout>

    </FrameLayout>

    <RelativeLayout
        android:layout_width="@dimen/lb_content_section_width"
        android:layout_height="match_parent"
+3 −4
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ public final class AppPermissionsFragment extends SettingsWithHeader
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setLoading(true, false);
        setLoading(true /* loading */, false /* animate */);
        mHasConfirmedRevoke = false;
        setHasOptionsMenu(true);
        final ActionBar ab = getActivity().getActionBar();
@@ -267,9 +267,8 @@ public final class AppPermissionsFragment extends SettingsWithHeader
                    R.plurals.additional_permissions_more, count, count));
            screen.addPreference(extraPerms);
        }
        if (screen.getPreferenceCount() != 0) {
            setLoading(false, true);
        }

        setLoading(false /* loading */, true /* animate */);
    }

    @Override
+4 −2
Original line number Diff line number Diff line
@@ -68,7 +68,7 @@ public final class ManagePermissionsFragment extends PermissionsFrameFragment
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setLoading(true, false);
        setLoading(true /* loading */, false /* animate */);
        setHasOptionsMenu(true);
        final ActionBar ab = getActivity().getActionBar();
        if (ab != null) {
@@ -260,13 +260,14 @@ public final class ManagePermissionsFragment extends PermissionsFrameFragment
            screen.addPreference(extraScreenPreference);
        }
        if (screen.getPreferenceCount() != 0) {
            setLoading(false, true);
            setLoading(false /* loading */, true /* animate */);
        }
    }

    public static class AdditionalPermissionsFragment extends PermissionsFrameFragment {
        @Override
        public void onCreate(Bundle icicle) {
            setLoading(true /* loading */, false /* animate */);
            super.onCreate(icicle);
            getActivity().setTitle(R.string.additional_permissions);
            setHasOptionsMenu(true);
@@ -297,6 +298,7 @@ public final class ManagePermissionsFragment extends PermissionsFrameFragment
        @Override
        public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
            setPreferenceScreen(((ManagePermissionsFragment) getTargetFragment()).mExtraScreen);
            setLoading(false /* loading */, true /* animate */);
        }
    }
}
+10 −6
Original line number Diff line number Diff line
@@ -88,7 +88,7 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setLoading(true, false);
        setLoading(true /* loading */, false /* animate */);
        setHasOptionsMenu(true);
        final ActionBar ab = getActivity().getActionBar();
        if (ab != null) {
@@ -295,9 +295,7 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple
            }
        }

        if (screen.getPreferenceCount() != 0) {
            setLoading(false, true);
        }
        setLoading(false /* loading */, true /* animate */);

        if (mOnPermissionsLoadedListener != null) {
            mOnPermissionsLoadedListener.onPermissionsLoaded(permissionApps);
@@ -384,13 +382,14 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple
        @Override
        public void onCreate(Bundle savedInstanceState) {
            mOuterFragment = (PermissionAppsFragment) getTargetFragment();
            setLoading(true /* loading */, false /* animate */);
            super.onCreate(savedInstanceState);
        }

        @Override
        public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
            if (mOuterFragment.mExtraScreen != null) {
                setPreferenceScreen(mOuterFragment.mExtraScreen);
                setPreferenceScreen();
            } else {
                mOuterFragment.setOnPermissionsLoadedListener(this);
            }
@@ -406,8 +405,13 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple

        @Override
        public void onPermissionsLoaded(PermissionApps permissionApps) {
            setPreferenceScreen(mOuterFragment.mExtraScreen);
            setPreferenceScreen();
            mOuterFragment.setOnPermissionsLoadedListener(null);
        }

        private void setPreferenceScreen() {
            setPreferenceScreen(mOuterFragment.mExtraScreen);
            setLoading(false /* loading */, true /* animate */);
        }
    }
}
+5 −4
Original line number Diff line number Diff line
@@ -72,13 +72,14 @@ public abstract class PermissionsFrameFragment extends PreferenceFragment {
    private void setLoading(boolean loading, boolean animate, boolean force) {
        if (mIsLoading != loading || force) {
            mIsLoading = loading;
            if (mLoadingView == null) {
                return;
            }
            if (mPrefsView != null) {
                setViewShown(mPrefsView, !loading, animate);
            }
            if (mLoadingView != null) {
                setViewShown(mLoadingView, loading, animate);
            }
        }
    }

    private void setViewShown(final View view, boolean shown, boolean animate) {
        if (animate) {