diff options
7 files changed, 55 insertions, 32 deletions
diff --git a/core/java/android/provider/ContactsContract.java b/core/java/android/provider/ContactsContract.java index f0aa878..2d2f205 100644 --- a/core/java/android/provider/ContactsContract.java +++ b/core/java/android/provider/ContactsContract.java @@ -6127,6 +6127,14 @@ public final class ContactsContract { public static final int STATUS_CHANGING_LOCALE = 3; /** + * The status that indicates that there are no accounts and no contacts + * on the device. + * + * @hide + */ + public static final int STATUS_NO_ACCOUNTS_NO_CONTACTS = 4; + + /** * Additional data associated with the status. * * @hide diff --git a/docs/html/guide/topics/manifest/manifest-element.jd b/docs/html/guide/topics/manifest/manifest-element.jd index a35c5a1..7f21e6b 100644 --- a/docs/html/guide/topics/manifest/manifest-element.jd +++ b/docs/html/guide/topics/manifest/manifest-element.jd @@ -159,6 +159,9 @@ multiple SD cards can be used with the same device.</li> storage. However, the system will not allow the user to move the application to external storage if this attribute is set to {@code internalOnly}, which is the default setting.</p> +<p>Read <a href="{@docRoot}guide/appendix/install-location.html">App Install Location</a> for +more information about using this attribute (including how to maintain backward compatibility).</p> + <p>Introduced in: API Level 8.</p> @@ -173,7 +176,7 @@ this attribute is set to {@code internalOnly}, which is the default setting.</p> <p> <dt>see also:</dt> -<dd><a href="{@docRoot}guide/appendix/install-location.html">App Install Location</a><br/> +<dd> <code><a href="{@docRoot}guide/topics/manifest/application-element.html"><application></a></code></dd> </dl> diff --git a/media/java/android/media/videoeditor/AudioTrack.java b/media/java/android/media/videoeditor/AudioTrack.java index d02709e..32ff553 100755 --- a/media/java/android/media/videoeditor/AudioTrack.java +++ b/media/java/android/media/videoeditor/AudioTrack.java @@ -102,7 +102,7 @@ public class AudioTrack { // Ducking is enabled by default
mDuckingThreshold = 0;
mDuckedTrackVolume = 0;
- mIsDuckingEnabled = true;
+ mIsDuckingEnabled = false;
// The audio waveform file is generated later
mAudioWaveformFilename = null;
@@ -369,14 +369,15 @@ public class AudioTrack { /**
* Enable ducking by specifying the required parameters
*
- * @param threshold Ducking will be activated when the relative energy in
+ * @param threshold Ducking will be activated when the energy in
* the media items audio signal goes above this value. The valid
- * range of values is 0 to 100.
+ * range of values is 0db to 90dB. 0dB is equivalent to disabling
+ * ducking.
* @param duckedTrackVolume The relative volume of the audio track when ducking
* is active. The valid range of values is 0 to 100.
*/
public void enableDucking(int threshold, int duckedTrackVolume) {
- if (threshold < 0 || threshold > 100) {
+ if (threshold < 0 || threshold > 90) {
throw new IllegalArgumentException("Invalid threshold value: " + threshold);
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java index 1f4c9d1..d290bd9 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java @@ -77,7 +77,7 @@ public class TabletStatusBar extends StatusBar { public static final int MSG_CLOSE_RECENTS_PANEL = 1021; public static final int MSG_HIDE_SHADOWS = 1030; public static final int MSG_SHOW_SHADOWS = 1031; - public static final int MSG_SHOW_SHADOWS_NO_COLLAPSE = 1032; + public static final int MSG_RESTORE_SHADOWS = 1032; private static final int MAX_IMAGE_LEVEL = 10000; private static final boolean USE_2D_RECENTS = true; @@ -406,14 +406,18 @@ public class TabletStatusBar extends StatusBar { if (mRecentsPanel != null) mRecentsPanel.setVisibility(View.GONE); break; case MSG_HIDE_SHADOWS: + if (DEBUG) Slog.d(TAG, "hiding shadows (lights on)"); mShadowController.hideAllShadows(); break; case MSG_SHOW_SHADOWS: + if (DEBUG) Slog.d(TAG, "showing shadows (lights out)"); animateCollapse(); - // fall through - case MSG_SHOW_SHADOWS_NO_COLLAPSE: mShadowController.showAllShadows(); break; + case MSG_RESTORE_SHADOWS: + if (DEBUG) Slog.d(TAG, "quickly re-showing shadows if appropriate"); + mShadowController.refresh(); + break; } } } @@ -1071,15 +1075,15 @@ public class TabletStatusBar extends StatusBar { switch (action) { case MotionEvent.ACTION_CANCEL: case MotionEvent.ACTION_UP: - mHandler.removeMessages(MSG_SHOW_SHADOWS_NO_COLLAPSE); + mHandler.removeMessages(MSG_RESTORE_SHADOWS); if (mShowShadows) { - mHandler.sendEmptyMessageDelayed(MSG_SHOW_SHADOWS_NO_COLLAPSE, + mHandler.sendEmptyMessageDelayed(MSG_RESTORE_SHADOWS, v == mNotificationShadow ? 5000 : 500); } last = true; break; case MotionEvent.ACTION_DOWN: - mHandler.removeMessages(MSG_SHOW_SHADOWS_NO_COLLAPSE); + mHandler.removeMessages(MSG_RESTORE_SHADOWS); setShadowForButton(mTouchTarget, false); break; } @@ -1093,22 +1097,22 @@ public class TabletStatusBar extends StatusBar { }; } + public void refresh() { + setShadowForButton(mBackButton, mShowShadows); + setShadowForButton(mHomeButton, mShowShadows); + setShadowForButton(mRecentButton, mShowShadows); + setShadowForButton(mMenuButton, mShowShadows); + setShadowForButton(mNotificationArea, mShowShadows); + } + public void showAllShadows() { mShowShadows = true; - setShadowForButton(mBackButton, true); - setShadowForButton(mHomeButton, true); - setShadowForButton(mRecentButton, true); - setShadowForButton(mMenuButton, true); - setShadowForButton(mNotificationArea, true); + refresh(); } public void hideAllShadows() { mShowShadows = false; - setShadowForButton(mBackButton, false); - setShadowForButton(mHomeButton, false); - setShadowForButton(mRecentButton, false); - setShadowForButton(mMenuButton, false); - setShadowForButton(mNotificationArea, false); + refresh(); } // Use View.INVISIBLE for things hidden due to shadowing, and View.GONE for things that are diff --git a/policy/src/com/android/internal/policy/impl/SimUnlockScreen.java b/policy/src/com/android/internal/policy/impl/SimUnlockScreen.java index 5518e11..486e7aa 100644 --- a/policy/src/com/android/internal/policy/impl/SimUnlockScreen.java +++ b/policy/src/com/android/internal/policy/impl/SimUnlockScreen.java @@ -130,9 +130,10 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie /** {@inheritDoc} */ public void cleanUp() { - // hide the dialog. + // dismiss the dialog. if (mSimUnlockProgressDialog != null) { - mSimUnlockProgressDialog.hide(); + mSimUnlockProgressDialog.dismiss(); + mSimUnlockProgressDialog = null; } mUpdateMonitor.removeCallback(this); } diff --git a/services/java/com/android/server/InputMethodManagerService.java b/services/java/com/android/server/InputMethodManagerService.java index 8d25d50..84bc100 100644 --- a/services/java/com/android/server/InputMethodManagerService.java +++ b/services/java/com/android/server/InputMethodManagerService.java @@ -557,6 +557,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub public List<InputMethodSubtype> getEnabledInputMethodSubtypeList(InputMethodInfo imi) { synchronized (mMethodMap) { + if (imi == null && mCurMethodId != null) { + imi = mMethodMap.get(mCurMethodId); + } return mSettings.getEnabledInputMethodSubtypeListLocked(imi); } } @@ -2043,18 +2046,20 @@ public class InputMethodManagerService extends IInputMethodManager.Stub getEnabledInputMethodsAndSubtypeListLocked(); ArrayList<InputMethodSubtype> enabledSubtypes = new ArrayList<InputMethodSubtype>(); - for (Pair<String, ArrayList<String>> imsPair : imsList) { - InputMethodInfo info = mMethodMap.get(imsPair.first); - if (info != null && info.getId().equals(imi.getId())) { - ArrayList<InputMethodSubtype> subtypes = info.getSubtypes(); - for (InputMethodSubtype ims: subtypes) { - for (String s: imsPair.second) { - if (String.valueOf(ims.hashCode()).equals(s)) { - enabledSubtypes.add(ims); + if (imi != null) { + for (Pair<String, ArrayList<String>> imsPair : imsList) { + InputMethodInfo info = mMethodMap.get(imsPair.first); + if (info != null && info.getId().equals(imi.getId())) { + ArrayList<InputMethodSubtype> subtypes = info.getSubtypes(); + for (InputMethodSubtype ims: subtypes) { + for (String s: imsPair.second) { + if (String.valueOf(ims.hashCode()).equals(s)) { + enabledSubtypes.add(ims); + } } } + break; } - break; } } return enabledSubtypes; diff --git a/telephony/java/com/android/internal/telephony/RIL.java b/telephony/java/com/android/internal/telephony/RIL.java index 35d5564..a77e73e 100644 --- a/telephony/java/com/android/internal/telephony/RIL.java +++ b/telephony/java/com/android/internal/telephony/RIL.java @@ -141,6 +141,7 @@ class RILRequest { this.mNext = sPool; sPool = this; sPoolSize++; + mResult = null; } } } |
