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

Commit 531d9d6e authored by Matthew DeVore's avatar Matthew DeVore Committed by Android (Google) Code Review
Browse files

Merge "Do not show entry point when no CD attached" into main

parents cf90807c 012123b1
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -21,8 +21,8 @@ import static android.view.Display.INVALID_DISPLAY;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.EXTERNAL_DISPLAY_HELP_URL;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.DISPLAY_ID_ARG;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.EXTERNAL_DISPLAY_NOT_FOUND_RESOURCE;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.forceShowDisplayList;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isDisplayAllowed;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isTopologyPaneEnabled;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isUseDisplaySettingEnabled;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isResolutionSettingEnabled;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isRotationSettingEnabled;
@@ -366,7 +366,7 @@ public class ExternalDisplayPreferenceFragment extends SettingsPreferenceFragmen
    private void updateScreenForDisplayId(final int displayId,
            @NonNull final PrefRefresh screen, @NonNull Context context) {
        final boolean forceShowList = displayId == INVALID_DISPLAY
                && mInjector != null && forceShowDisplayList(mInjector.getFlags());
                && isTopologyPaneEnabled(mInjector);
        final var displaysToShow = externalDisplaysToShow(displayId);

        if (!forceShowList && displaysToShow.isEmpty() && displayId == INVALID_DISPLAY) {
@@ -430,7 +430,7 @@ public class ExternalDisplayPreferenceFragment extends SettingsPreferenceFragmen

    private void showDisplaysList(@NonNull List<Display> displaysToShow,
                                  @NonNull PrefRefresh screen, @NonNull Context context) {
        if (mInjector != null && mInjector.getFlags().displayTopologyPaneInDisplayList()) {
        if (isTopologyPaneEnabled(mInjector)) {
            screen.addPreference(getDisplayTopologyPreference(context));
            if (!displaysToShow.isEmpty()) {
                screen.addPreference(getMirrorPreference(context));
+4 −8
Original line number Diff line number Diff line
@@ -323,14 +323,6 @@ public class ExternalDisplaySettingsConfiguration {
                || flags.displayTopologyPaneInDisplayList();
    }

    /**
     * If true, indicates the display list activity should be shown even if there is only one
     * display.
     */
    public static boolean forceShowDisplayList(@NonNull FeatureFlags flags) {
        return flags.displayTopologyPaneInDisplayList();
    }

    static boolean isDisplayAllowed(@NonNull Display display,
            @NonNull SystemServicesProvider props) {
        return display.getType() == Display.TYPE_EXTERNAL
@@ -338,6 +330,10 @@ public class ExternalDisplaySettingsConfiguration {
                || isVirtualDisplayAllowed(display, props);
    }

    static boolean isTopologyPaneEnabled(@Nullable Injector injector) {
        return injector != null && injector.getFlags().displayTopologyPaneInDisplayList();
    }

    static boolean isVirtualDisplayAllowed(@NonNull Display display,
            @NonNull SystemServicesProvider properties) {
        var sysProp = properties.getSystemProperty(VIRTUAL_DISPLAY_PACKAGE_NAME_SYSTEM_PROPERTY);
+0 −5
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.settings.connecteddevice.display;

import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.forceShowDisplayList;
import static com.android.settings.connecteddevice.display.ExternalDisplaySettingsConfiguration.isDisplayAllowed;

import android.content.Context;
@@ -143,10 +142,6 @@ public class ExternalDisplayUpdater {
            }
        }

        if (forceShowDisplayList(mInjector.getFlags())) {
            return context.getString(R.string.external_display_off);
        }

        for (var display : mInjector.getAllDisplays()) {
            if (display != null && isDisplayAllowed(display, mInjector)) {
                return context.getString(R.string.external_display_off);