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

Commit a2e66343 authored by Mike Lockwood's avatar Mike Lockwood Committed by Android (Google) Code Review
Browse files

Merge "Revert "USB connected notification and temporary USB options dialog""

parents 07cac12c 3ac588b0
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -30,10 +30,6 @@
        <service android:name=".screenshot.TakeScreenshotService"
            android:exported="false" />

        <activity android:name=".usb.UsbPreferenceActivity"
             android:theme="@*android:style/Theme.Holo.Dialog.Alert"
             android:excludeFromRecents="true">
        </activity>
        <activity android:name=".usb.UsbStorageActivity"
                android:excludeFromRecents="true">
        </activity>
+0 −43
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<!-- Check box that is displayed in the activity resolver UI for the user
     to make their selection the preferred activity. -->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingLeft="14dip"
    android:paddingRight="15dip"
    android:orientation="vertical">

    <Button
        android:id="@+id/mtp_ptp_button"
        android:text="@string/use_ptp_button_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:focusable="true"
        android:clickable="true" />

    <Button
        android:id="@+id/installer_cd_button"
        android:text="@string/installer_cd_button_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:focusable="true"
        android:clickable="true" />

</LinearLayout>
+0 −9
Original line number Diff line number Diff line
@@ -157,15 +157,6 @@
    <!-- Compatibility mode help screen: body text. [CHAR LIMIT=150] -->
    <string name="compat_mode_help_body">When an app was designed for a smaller screen, a zoom control will appear by the clock.</string>

    <!-- Title for the USB function chooser in UsbPreferenceActivity. [CHAR LIMIT=30] -->
    <string name="usb_preference_title">USB file transfer options</string>
    <!-- Label for the MTP USB function in UsbPreferenceActivity. [CHAR LIMIT=50] -->
    <string name="use_mtp_button_title">Mount as a media player (MTP)</string>
    <!-- Label for the PTP USB function in UsbPreferenceActivity. [CHAR LIMIT=50] -->
    <string name="use_ptp_button_title">Mount as a camera (PTP)</string>
    <!-- Label for the installer CD image option in UsbPreferenceActivity. [CHAR LIMIT=50] -->
    <string name="installer_cd_button_title">Install Android File Transfer application for Mac</string>

    <!-- toast message displayed when a screenshot is saved to the Gallery. -->
    <string name="screenshot_saving_toast">Screenshot saved to Gallery</string>
    <!-- toast message displayed when we fail to take a screenshot. -->
+0 −96
Original line number Diff line number Diff line
/*
 * Copyright (C) 2011 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.systemui.usb;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.hardware.usb.UsbManager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.util.Log;
import android.widget.Button;

import java.io.File;

import com.android.systemui.R;

public class UsbPreferenceActivity extends Activity implements View.OnClickListener  {

    private static final String TAG = "UsbPreferenceActivity";

    private UsbManager mUsbManager;
    private String mCurrentFunction;
    private String[] mFunctions;
    private String mInstallerImagePath;
    private AlertDialog mDialog;
    private Button mMtpPtpButton;
    private Button mInstallerCdButton;
    private boolean mPtpActive;

    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);

        mUsbManager = (UsbManager)getSystemService(Context.USB_SERVICE);

        AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this);
        dialogBuilder.setTitle(getString(R.string.usb_preference_title));

        LayoutInflater inflater = (LayoutInflater)getSystemService(
                Context.LAYOUT_INFLATER_SERVICE);
        View buttonView = inflater.inflate(R.layout.usb_preference_buttons, null);
        dialogBuilder.setView(buttonView);
        mMtpPtpButton = (Button)buttonView.findViewById(R.id.mtp_ptp_button);
        mInstallerCdButton = (Button)buttonView.findViewById(R.id.installer_cd_button);
        mMtpPtpButton.setOnClickListener(this);
        mInstallerCdButton.setOnClickListener(this);

        mPtpActive = mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_PTP);
        if (mPtpActive) {
            mMtpPtpButton.setText(R.string.use_mtp_button_title);
        }

        mInstallerImagePath = getString(com.android.internal.R.string.config_isoImagePath);
        if (!(new File(mInstallerImagePath)).exists()) {
            mInstallerCdButton.setVisibility(View.GONE);
        }

        mDialog = dialogBuilder.show();
    }

    public void onClick(View v) {
        if (v.equals(mMtpPtpButton)) {
            if (mPtpActive) {
                mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MTP, true);
            } else {
                mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_PTP, true);
            }
        } else if (v.equals(mInstallerCdButton)) {
            // installer CD is never default
            mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MASS_STORAGE, false);
            mUsbManager.setMassStorageBackingFile(mInstallerImagePath);
        }

        if (mDialog != null) {
            mDialog.dismiss();
        }
        finish();
    }
}