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

Commit 93712566 authored by Daniel Hillenbrand's avatar Daniel Hillenbrand Committed by Gerrit Code Review
Browse files

Merge "DockAudio: Route audio via dock for Samsung devices" into cm-10.2

parents a47942b2 39820649
Loading
Loading
Loading
Loading
+0 −35
Original line number Diff line number Diff line
@@ -79,8 +79,6 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks {

    private int mSwitchValues;

    private boolean dockAudioEnabled = false;

    private final WiredAccessoryObserver mObserver;
    private final InputManagerService mInputManager;

@@ -98,12 +96,6 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks {

        mObserver = new WiredAccessoryObserver();

        File f = new File("/sys/class/switch/dock/state");
        if (f!=null && f.exists()) {
            // Listen out for changes to the Dock Audio Settings
            context.registerReceiver(new SettingsChangedReceiver(),
            new IntentFilter("com.cyanogenmod.settings.SamsungDock"), null, null);
        }
        context.registerReceiver(new BroadcastReceiver() {
                    @Override
                    public void onReceive(Context ctx, Intent intent) {
@@ -113,23 +105,6 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks {
                new IntentFilter(Intent.ACTION_BOOT_COMPLETED), null, null);
    }

    private final class SettingsChangedReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            final String action = intent.getAction();
            Slog.e(TAG, "Recieved a Settings Changed Action " + action);
            if (action.equals("com.cyanogenmod.settings.SamsungDock")) {
                String data = intent.getStringExtra("data");
                Slog.e(TAG, "Recieved a Dock Audio change " + data);
                if (data != null && data.equals("1")) {
                    dockAudioEnabled = true;
                } else {
                    dockAudioEnabled = false;
                }
            }
        }
    }

    private void bootCompleted() {
        if (mUseDevInputEventForAudioJack) {
            int switchValues = 0;
@@ -419,16 +394,6 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks {
            try {
                String devPath = event.get("DEVPATH");
                String name = event.get("SWITCH_NAME");
                if (name.equals("dock")) {
                    // Samsung USB Audio Jack is non-sensing - so must be enabled manually
                    // The choice is made in the GalaxyS2Settings.apk
                    // device/samsung/i9100/DeviceSettings/src/com/cyanogenmod/settings/device/DockFragmentActivity.java
                    // This sends an Intent to this class
                    if ((!dockAudioEnabled) && (state > 0)) {
                        Slog.e(TAG, "Ignoring dock event as Audio routing disabled " + event);
                        return;
                    }
                }
                synchronized (mLock) {
                    updateStateLocked(devPath, name, state);
                }