Bluetooth messages improved.

Tap to pair in place of searching. Message when no device is found.

Change-Id: I0a4b1fa140e8a30b154ae2686e9c75d3768fc44e
This commit is contained in:
Gilles Debunne
2011-06-30 15:44:05 -07:00
parent f5f40108ad
commit 9416136b4d
3 changed files with 37 additions and 10 deletions

View File

@@ -237,7 +237,11 @@
<!--Bluetooth settings screen, summary text under individual Bluetooth devices that are hands free or a headset -->
<string name="bluetooth_device">handsfree/headset</string>
<!--Bluetooth settings screen, text that appears in heading bar when scanning for devices -->
<string name="progress_scanning">Scanning</string>
<string name="progress_scanning">Searching</string>
<!--Bluetooth settings screen, text that appears in heading bar when scanning for devices is finished, indicating that user can tap on a device to pair with it [CHAR LIMIT=20]-->
<string name="progress_tap_to_pair">Tap to pair</string>
<!--Bluetooth settings screen, text that appears when scanning for devices is finished and no nearby bluetooth device was found [CHAR LIMIT=40]-->
<string name="bluetooth_no_devices_found">No Bluetooth devices were found nearby.</string>
<!-- Notification ticker text (shown in the status bar) when a Bluetooth device wants to pair with us -->
<string name="bluetooth_notif_ticker">Bluetooth pairing request</string>
<!-- Notification title when a Bluetooth device wants to pair with us -->
@@ -936,8 +940,10 @@
<!-- Bluetooth settings: The title of the preference (list item) that initiates a scan for devices -->
<string name="bluetooth_preference_scan_title">Scan for devices</string>
<!-- Bluetooth settings: The title of the action button that initiates a scan for nearby devices [CHAR LIMIT=20] -->
<string name="bluetooth_scan_nearby_devices">Scan</string>
<!-- Bluetooth settings: The title of the action button that initiates a search for nearby devices [CHAR LIMIT=20] -->
<string name="bluetooth_search_for_devices">Search for devices</string>
<!-- Bluetooth settings: The title of the action button while a search for nearby devices is in progress [CHAR LIMIT=20] -->
<string name="bluetooth_searching_for_devices">Searching\u2026</string>
<!-- Bluetooth settings: The sub heading for device settings. [CHAR LIMIT=30] -->
<string name="bluetooth_preference_device_settings">Device settings</string>
<!-- Bluetooth settings: The sub heading for paired devices. [CHAR LIMIT=30] -->

View File

@@ -17,12 +17,15 @@
package com.android.settings;
import android.content.Context;
import android.preference.Preference;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TextView;
public class ProgressCategory extends ProgressCategoryBase {
private boolean mProgress = false;
private Preference mNoDeviceFoundPreference;
public ProgressCategory(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -32,12 +35,27 @@ public class ProgressCategory extends ProgressCategoryBase {
@Override
public void onBindView(View view) {
super.onBindView(view);
final View textView = view.findViewById(R.id.scanning_text);
final TextView textView = (TextView) view.findViewById(R.id.scanning_text);
final View progressBar = view.findViewById(R.id.scanning_progress);
final int visibility = mProgress ? View.VISIBLE : View.INVISIBLE;
textView.setVisibility(visibility);
progressBar.setVisibility(visibility);
textView.setText(mProgress ? R.string.progress_scanning : R.string.progress_tap_to_pair);
boolean noDeviceFound = getPreferenceCount() == 0;
textView.setVisibility(noDeviceFound ? View.INVISIBLE : View.VISIBLE);
progressBar.setVisibility(mProgress ? View.VISIBLE : View.INVISIBLE);
if (mProgress) {
if (mNoDeviceFoundPreference != null) {
removePreference(mNoDeviceFoundPreference);
}
} else {
if (noDeviceFound) {
if (mNoDeviceFoundPreference == null) {
mNoDeviceFoundPreference = new Preference(getContext());
mNoDeviceFoundPreference.setSummary(R.string.bluetooth_no_devices_found);
}
addPreference(mNoDeviceFoundPreference);
}
}
}
@Override

View File

@@ -101,9 +101,12 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment {
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
boolean bluetoothIsEnabled = mLocalAdapter.getBluetoothState() == BluetoothAdapter.STATE_ON;
menu.add(Menu.NONE, MENU_ID_SCAN, 0, R.string.bluetooth_scan_nearby_devices)
boolean isDiscovering = mLocalAdapter.isDiscovering();
int textId = isDiscovering ? R.string.bluetooth_searching_for_devices :
R.string.bluetooth_search_for_devices;
menu.add(Menu.NONE, MENU_ID_SCAN, 0, textId)
//.setIcon(R.drawable.ic_menu_scan_network)
.setEnabled(bluetoothIsEnabled && !mLocalAdapter.isDiscovering())
.setEnabled(bluetoothIsEnabled && !isDiscovering)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
menu.add(Menu.NONE, MENU_ID_ADVANCED, 0, R.string.bluetooth_menu_advanced)
//.setIcon(android.R.drawable.ic_menu_manage)
@@ -218,7 +221,7 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment {
@Override
public void onScanningStateChanged(boolean started) {
super.onScanningStateChanged(started);
// Update 'Scan' option enabled state
// Update options' enabled state
getActivity().invalidateOptionsMenu();
}