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

Commit 401e3586 authored by Alex Dadukin's avatar Alex Dadukin Committed by Automerger Merge Worker
Browse files

Merge "Add audio policies classes to SystemMediaRoute2Provider" into udc-dev am: 2610029d

parents 8087aa1c 2610029d
Loading
Loading
Loading
Loading
+10 −1
Original line number Original line Diff line number Diff line
@@ -53,7 +53,16 @@ import java.util.Objects;
            return new NoOpBluetoothRouteController();
            return new NoOpBluetoothRouteController();
        }
        }


        MediaFeatureFlagManager flagManager = MediaFeatureFlagManager.getInstance();
        boolean isUsingLegacyController = flagManager.getBoolean(
                MediaFeatureFlagManager.FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER,
                true);

        if (isUsingLegacyController) {
            return new LegacyBluetoothRouteController(context, btAdapter, listener);
            return new LegacyBluetoothRouteController(context, btAdapter, listener);
        } else {
            return new AudioPoliciesBluetoothRouteController(context, btAdapter, listener);
        }
    }
    }


    /**
    /**
+16 −4
Original line number Original line Diff line number Diff line
@@ -44,10 +44,22 @@ import android.os.ServiceManager;
        IAudioService audioService = IAudioService.Stub.asInterface(
        IAudioService audioService = IAudioService.Stub.asInterface(
                ServiceManager.getService(Context.AUDIO_SERVICE));
                ServiceManager.getService(Context.AUDIO_SERVICE));


        MediaFeatureFlagManager flagManager = MediaFeatureFlagManager.getInstance();
        boolean isUsingLegacyController = flagManager.getBoolean(
                MediaFeatureFlagManager.FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER,
                true);

        if (isUsingLegacyController) {
            return new LegacyDeviceRouteController(context,
            return new LegacyDeviceRouteController(context,
                    audioManager,
                    audioManager,
                    audioService,
                    audioService,
                    onDeviceRouteChangedListener);
                    onDeviceRouteChangedListener);
        } else {
            return new AudioPoliciesDeviceRouteController(context,
                    audioManager,
                    audioService,
                    onDeviceRouteChangedListener);
        }
    }
    }


    /**
    /**
+3 −3
Original line number Original line Diff line number Diff line
@@ -32,7 +32,7 @@ import java.lang.annotation.Target;
    private static final String NAMESPACE_MEDIA_BETTER_TOGETHER = "media_better_together";
    private static final String NAMESPACE_MEDIA_BETTER_TOGETHER = "media_better_together";


    @StringDef(prefix = "FEATURE_", value = {
    @StringDef(prefix = "FEATURE_", value = {
        FEATURE_IS_USING_LEGACY_BLUETOOTH_CONTROLLER
            FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER
    })
    })
    @Target({ ElementType.TYPE_USE, ElementType.TYPE_PARAMETER })
    @Target({ ElementType.TYPE_USE, ElementType.TYPE_PARAMETER })
    @Retention(RetentionPolicy.SOURCE)
    @Retention(RetentionPolicy.SOURCE)
@@ -43,7 +43,7 @@ import java.lang.annotation.Target;
     * 'Audio Strategies'-aware controller.
     * 'Audio Strategies'-aware controller.
     */
     */
    /* package */ static final @MediaFeatureFlag String
    /* package */ static final @MediaFeatureFlag String
            FEATURE_IS_USING_LEGACY_BLUETOOTH_CONTROLLER =
            FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER =
            "BluetoothRouteController__enable_legacy_bluetooth_routes_controller";
            "BluetoothRouteController__enable_legacy_bluetooth_routes_controller";


    private static final MediaFeatureFlagManager sInstance = new MediaFeatureFlagManager();
    private static final MediaFeatureFlagManager sInstance = new MediaFeatureFlagManager();
@@ -52,7 +52,7 @@ import java.lang.annotation.Target;
        // Empty to prevent instantiation.
        // Empty to prevent instantiation.
    }
    }


    /* package */ MediaFeatureFlagManager getInstance() {
    /* package */ static MediaFeatureFlagManager getInstance() {
        return sInstance;
        return sInstance;
    }
    }