summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@google.com>2012-02-10 11:50:10 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-02-10 11:50:10 -0800
commit11ca31729c05a5c82aa298fb52ddebbe08a26627 (patch)
tree2dccdf3b3a7e5764e0b44cd04caa8a93ec3109f0 /core/java/android
parentadf7c11e56e84531a3f4e9097cb05db663d7d246 (diff)
parentd747dc8179df3cfcc68df78ec46b93992de52eaf (diff)
Merge changes Id747dc81,I3a74bd36,I2395527c,I86aeb066,Ic33d5766,I7bef7390,I4b797dd8,Id3622e9e,I28087c63,Ia1c6d909,I95a766dd,I6c0236c5,Ib71287f4,I4bcbefdc,I22a7cb8d,Ie24dbeaf,I7dbc4b45,I21d524ea,Iaa5bf14e,I7db766c3,I93fcaca2,I1eb72044,I05ffbe7c,Ifdfe2ff8,Ia8f767a2
* changes: Fix problems dispatching media button events on headless devices Add headless mode for running the framework without the surface flinger SettingsProvider: Allow overridding default value for Setttings.Secure.DEVICE_PROVISIONED Load lockscreen.disabled setting on database create as well as upgrade SystemUI: Log an error instead of throwing an exception if navigation bar is enabled in tablet UI SettingsProvider: Add support for overriding lockscreen.disabled default value Allow overriding default STAY_ON_WHILE_PLUGGED_IN setting value in an overlay Disable output processing when opening serial port. Update aidl for new Broker API. aidl: All flattenable types now must also be parcelable. Update aidl to new APIs. Suport RpcData as a parcelable type. Modified AIDL to support authentication Fix disconnect from wired ethernet issues. Fix PresenterClass by adding a _listener field add presenters to aidl. Add SerialPort.sendBreak() Generate fallthrough for unhandled actions in RPC methods. PhoneWindowManager: Disable boot progress dialog on headless builds Support custom flattenable types for RPC. SystemServer: Don't start A2DP service if audio is not enabled Add RpcData as a built-in marshallable type. Add the full suite of RpcData types. Checkpoint adding @home RPC support to aidl ActivityManager: Make sure BOOT_COMPLETED Intent is sent when running headless
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/hardware/SerialPort.java8
-rw-r--r--core/java/android/net/EthernetDataTracker.java26
-rw-r--r--core/java/android/provider/Settings.java6
3 files changed, 31 insertions, 9 deletions
diff --git a/core/java/android/hardware/SerialPort.java b/core/java/android/hardware/SerialPort.java
index 0889790fa4b5..5ef122b07c4f 100644
--- a/core/java/android/hardware/SerialPort.java
+++ b/core/java/android/hardware/SerialPort.java
@@ -113,10 +113,18 @@ public class SerialPort {
}
}
+ /**
+ * Sends a stream of zero valued bits for 0.25 to 0.5 seconds
+ */
+ public void sendBreak() {
+ native_send_break();
+ }
+
private native void native_open(FileDescriptor pfd, int speed) throws IOException;
private native void native_close();
private native int native_read_array(byte[] buffer, int length) throws IOException;
private native int native_read_direct(ByteBuffer buffer, int length) throws IOException;
private native void native_write_array(byte[] buffer, int length) throws IOException;
private native void native_write_direct(ByteBuffer buffer, int length) throws IOException;
+ private native void native_send_break();
}
diff --git a/core/java/android/net/EthernetDataTracker.java b/core/java/android/net/EthernetDataTracker.java
index 21ecc22c10ff..02e81b6a8697 100644
--- a/core/java/android/net/EthernetDataTracker.java
+++ b/core/java/android/net/EthernetDataTracker.java
@@ -79,10 +79,7 @@ public class EthernetDataTracker implements NetworkStateTracker {
if (up) {
mTracker.reconnect();
} else {
- NetworkUtils.stopDhcp(mIface);
- mTracker.mNetworkInfo.setIsAvailable(false);
- mTracker.mNetworkInfo.setDetailedState(DetailedState.DISCONNECTED,
- null, null);
+ mTracker.disconnect();
}
}
}
@@ -129,11 +126,7 @@ public class EthernetDataTracker implements NetworkStateTracker {
runDhcp();
}
- private void interfaceRemoved(String iface) {
- if (!iface.equals(mIface))
- return;
-
- Log.d(TAG, "Removing " + iface);
+ public void disconnect() {
NetworkUtils.stopDhcp(mIface);
@@ -147,6 +140,21 @@ public class EthernetDataTracker implements NetworkStateTracker {
msg = mCsHandler.obtainMessage(EVENT_STATE_CHANGED, mNetworkInfo);
msg.sendToTarget();
+ IBinder b = ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE);
+ INetworkManagementService service = INetworkManagementService.Stub.asInterface(b);
+ try {
+ service.clearInterfaceAddresses(mIface);
+ } catch (Exception e) {
+ Log.e(TAG, "Failed to clear addresses or disable ipv6" + e);
+ }
+ }
+
+ private void interfaceRemoved(String iface) {
+ if (!iface.equals(mIface))
+ return;
+
+ Log.d(TAG, "Removing " + iface);
+ disconnect();
mIface = "";
}
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 8f59484eb1a5..0aad64a61be9 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -1836,6 +1836,12 @@ public final class Settings {
public static final String LOCKSCREEN_SOUNDS_ENABLED = "lockscreen_sounds_enabled";
/**
+ * Whether the lockscreen should be completely disabled.
+ * @hide
+ */
+ public static final String LOCKSCREEN_DISABLED = "lockscreen.disabled";
+
+ /**
* URI for the low battery sound file.
* @hide
*/