summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/java/android/preference/DialogPreference.java3
-rw-r--r--core/java/android/text/Html.java4
-rw-r--r--core/java/android/text/TextUtils.java14
-rw-r--r--core/java/android/text/style/SpellCheckSpan.java25
-rw-r--r--core/java/android/text/style/SuggestionRangeSpan.java51
-rw-r--r--core/java/android/webkit/WebView.java12
-rw-r--r--core/java/android/widget/AbsListView.java13
-rw-r--r--core/java/android/widget/Switch.java48
-rw-r--r--core/java/android/widget/TextView.java72
-rw-r--r--core/java/com/android/internal/widget/AbsActionBarView.java15
-rw-r--r--core/java/com/android/internal/widget/ActionBarContextView.java7
-rw-r--r--core/java/com/android/internal/widget/ActionBarView.java13
-rw-r--r--core/res/res/anim-sw600dp/activity_close_enter.xml24
-rw-r--r--core/res/res/anim-sw600dp/activity_close_exit.xml33
-rw-r--r--core/res/res/anim-sw600dp/activity_open_enter.xml35
-rw-r--r--core/res/res/anim-sw600dp/activity_open_exit.xml24
-rw-r--r--core/res/res/anim-sw600dp/wallpaper_close_enter.xml38
-rw-r--r--core/res/res/anim-sw600dp/wallpaper_close_exit.xml28
-rw-r--r--core/res/res/anim-sw600dp/wallpaper_open_enter.xml28
-rw-r--r--core/res/res/anim-sw600dp/wallpaper_open_exit.xml40
-rw-r--r--core/res/res/anim/activity_close_enter.xml7
-rw-r--r--core/res/res/anim/activity_close_exit.xml11
-rw-r--r--core/res/res/anim/activity_open_enter.xml8
-rw-r--r--core/res/res/anim/activity_open_exit.xml8
-rw-r--r--core/res/res/anim/lock_screen_behind_enter.xml12
-rw-r--r--core/res/res/anim/lock_screen_exit.xml26
-rw-r--r--core/res/res/anim/wallpaper_close_enter.xml44
-rw-r--r--core/res/res/anim/wallpaper_close_exit.xml18
-rw-r--r--core/res/res/anim/wallpaper_open_enter.xml22
-rw-r--r--core/res/res/anim/wallpaper_open_exit.xml35
-rw-r--r--core/res/res/drawable-hdpi/menu_hardkey_panel_holo_dark.9.pngbin0 -> 713 bytes
-rw-r--r--core/res/res/drawable-hdpi/menu_hardkey_panel_holo_light.9.pngbin0 -> 641 bytes
-rw-r--r--core/res/res/drawable-hdpi/text_select_handle_left.pngbin1449 -> 1461 bytes
-rw-r--r--core/res/res/drawable-hdpi/text_select_handle_middle.pngbin1563 -> 1569 bytes
-rw-r--r--core/res/res/drawable-hdpi/text_select_handle_right.pngbin1503 -> 1506 bytes
-rw-r--r--core/res/res/drawable-mdpi/menu_hardkey_panel_holo_dark.9.pngbin0 -> 486 bytes
-rw-r--r--core/res/res/drawable-mdpi/menu_hardkey_panel_holo_light.9.pngbin0 -> 474 bytes
-rw-r--r--core/res/res/drawable-mdpi/text_select_handle_left.pngbin974 -> 972 bytes
-rw-r--r--core/res/res/drawable-mdpi/text_select_handle_middle.pngbin1033 -> 1050 bytes
-rw-r--r--core/res/res/drawable-mdpi/text_select_handle_right.pngbin994 -> 999 bytes
-rw-r--r--core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_dark.9.pngbin0 -> 997 bytes
-rw-r--r--core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_light.9.pngbin0 -> 882 bytes
-rw-r--r--core/res/res/drawable-xhdpi/text_select_handle_left.pngbin1988 -> 1989 bytes
-rw-r--r--core/res/res/drawable-xhdpi/text_select_handle_middle.pngbin2237 -> 2249 bytes
-rw-r--r--core/res/res/drawable-xhdpi/text_select_handle_right.pngbin2154 -> 2182 bytes
-rw-r--r--core/res/res/values/arrays.xml2
-rwxr-xr-xcore/res/res/values/attrs.xml4
-rw-r--r--core/res/res/values/public.xml5
-rwxr-xr-xcore/res/res/values/strings.xml2
-rw-r--r--core/res/res/values/styles.xml22
-rw-r--r--core/res/res/values/themes.xml5
51 files changed, 324 insertions, 434 deletions
diff --git a/core/java/android/preference/DialogPreference.java b/core/java/android/preference/DialogPreference.java
index 73427d2..c59ed18 100644
--- a/core/java/android/preference/DialogPreference.java
+++ b/core/java/android/preference/DialogPreference.java
@@ -321,8 +321,7 @@ public abstract class DialogPreference extends Preference implements
*/
private void requestInputMethod(Dialog dialog) {
Window window = dialog.getWindow();
- window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE |
- WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
+ window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
/**
diff --git a/core/java/android/text/Html.java b/core/java/android/text/Html.java
index 07e71f9..85a3bbb 100644
--- a/core/java/android/text/Html.java
+++ b/core/java/android/text/Html.java
@@ -449,11 +449,11 @@ class HtmlToSpannedConverter implements ContentHandler {
handleP(mSpannableStringBuilder);
} else if (tag.equalsIgnoreCase("div")) {
handleP(mSpannableStringBuilder);
- } else if (tag.equalsIgnoreCase("em")) {
+ } else if (tag.equalsIgnoreCase("strong")) {
start(mSpannableStringBuilder, new Bold());
} else if (tag.equalsIgnoreCase("b")) {
start(mSpannableStringBuilder, new Bold());
- } else if (tag.equalsIgnoreCase("strong")) {
+ } else if (tag.equalsIgnoreCase("em")) {
start(mSpannableStringBuilder, new Italic());
} else if (tag.equalsIgnoreCase("cite")) {
start(mSpannableStringBuilder, new Italic());
diff --git a/core/java/android/text/TextUtils.java b/core/java/android/text/TextUtils.java
index 83ef6ce..b8b54f4 100644
--- a/core/java/android/text/TextUtils.java
+++ b/core/java/android/text/TextUtils.java
@@ -31,9 +31,11 @@ import android.text.style.QuoteSpan;
import android.text.style.RelativeSizeSpan;
import android.text.style.ReplacementSpan;
import android.text.style.ScaleXSpan;
+import android.text.style.SpellCheckSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.SubscriptSpan;
+import android.text.style.SuggestionRangeSpan;
import android.text.style.SuggestionSpan;
import android.text.style.SuperscriptSpan;
import android.text.style.TextAppearanceSpan;
@@ -579,6 +581,10 @@ public class TextUtils {
public static final int ANNOTATION = 18;
/** @hide */
public static final int SUGGESTION_SPAN = 19;
+ /** @hide */
+ public static final int SPELL_CHECK_SPAN = 20;
+ /** @hide */
+ public static final int SUGGESTION_RANGE_SPAN = 21;
/**
* Flatten a CharSequence and whatever styles can be copied across processes
@@ -734,6 +740,14 @@ public class TextUtils {
readSpan(p, sp, new SuggestionSpan(p));
break;
+ case SPELL_CHECK_SPAN:
+ readSpan(p, sp, new SpellCheckSpan(p));
+ break;
+
+ case SUGGESTION_RANGE_SPAN:
+ readSpan(p, sp, new SuggestionRangeSpan());
+ break;
+
default:
throw new RuntimeException("bogus span encoding " + kind);
}
diff --git a/core/java/android/text/style/SpellCheckSpan.java b/core/java/android/text/style/SpellCheckSpan.java
index 9b23177..caaae99 100644
--- a/core/java/android/text/style/SpellCheckSpan.java
+++ b/core/java/android/text/style/SpellCheckSpan.java
@@ -16,6 +16,10 @@
package android.text.style;
+import android.os.Parcel;
+import android.text.ParcelableSpan;
+import android.text.TextUtils;
+
/**
* A SpellCheckSpan is an internal data structure created by the TextView's SpellChecker to
* annotate portions of the text that are about to or currently being spell checked. They are
@@ -23,7 +27,7 @@ package android.text.style;
*
* @hide
*/
-public class SpellCheckSpan {
+public class SpellCheckSpan implements ParcelableSpan {
private boolean mSpellCheckInProgress;
@@ -31,6 +35,10 @@ public class SpellCheckSpan {
mSpellCheckInProgress = false;
}
+ public SpellCheckSpan(Parcel src) {
+ mSpellCheckInProgress = (src.readInt() != 0);
+ }
+
public void setSpellCheckInProgress() {
mSpellCheckInProgress = true;
}
@@ -38,4 +46,19 @@ public class SpellCheckSpan {
public boolean isSpellCheckInProgress() {
return mSpellCheckInProgress;
}
+
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeInt(mSpellCheckInProgress ? 1 : 0);
+ }
+
+ @Override
+ public int getSpanTypeId() {
+ return TextUtils.SPELL_CHECK_SPAN;
+ }
}
diff --git a/core/java/android/text/style/SuggestionRangeSpan.java b/core/java/android/text/style/SuggestionRangeSpan.java
new file mode 100644
index 0000000..fc91697
--- /dev/null
+++ b/core/java/android/text/style/SuggestionRangeSpan.java
@@ -0,0 +1,51 @@
+/*
+ * 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 android.text.style;
+
+import android.graphics.Color;
+import android.os.Parcel;
+import android.text.ParcelableSpan;
+import android.text.TextPaint;
+import android.text.TextUtils;
+
+/**
+ * A SuggestionRangeSpan is used to show which part of an EditText is affected by a suggestion
+ * popup window.
+ *
+ * @hide
+ */
+public class SuggestionRangeSpan extends CharacterStyle implements ParcelableSpan {
+ @Override
+ public void updateDrawState(TextPaint tp) {
+ tp.setColor(Color.GREEN);
+ }
+
+ public SuggestionRangeSpan() { /* Nothing to do*/ }
+
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) { /* Nothing to do*/ }
+
+ @Override
+ public int getSpanTypeId() {
+ return TextUtils.SUGGESTION_RANGE_SPAN;
+ }
+}
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 6238b72..2aa481c 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -4004,9 +4004,12 @@ public class WebView extends AbsoluteLayout
// state.
// If mNativeClass is 0, we should not reach here, so we do not
// need to check it again.
- nativeRecordButtons(hasFocus() && hasWindowFocus(),
- mTouchMode == TOUCH_SHORTPRESS_START_MODE
- || mTrackballDown || mGotCenterDown, false);
+ if (mDrawCursorRing && drawRings) {
+ // Only update if we are actually going to use the result
+ nativeRecordButtons(hasFocus() && hasWindowFocus(),
+ mTouchMode == TOUCH_SHORTPRESS_START_MODE
+ || mTrackballDown || mGotCenterDown, false);
+ }
drawCoreAndCursorRing(canvas, mBackgroundColor,
mDrawCursorRing && drawRings);
}
@@ -4075,7 +4078,8 @@ public class WebView extends AbsoluteLayout
boolean drawJavaRings = !mTouchHighlightRegion.isEmpty()
&& (mTouchMode == TOUCH_INIT_MODE
|| mTouchMode == TOUCH_SHORTPRESS_START_MODE
- || mTouchMode == TOUCH_SHORTPRESS_MODE);
+ || mTouchMode == TOUCH_SHORTPRESS_MODE
+ || mTouchMode == TOUCH_DONE_MODE);
boolean drawNativeRings = !drawJavaRings;
if (USE_WEBKIT_RINGS) {
drawNativeRings = !drawJavaRings && !isInTouchMode();
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java
index 86f061a..80cbbfb 100644
--- a/core/java/android/widget/AbsListView.java
+++ b/core/java/android/widget/AbsListView.java
@@ -1574,8 +1574,17 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
ss.inActionMode = mChoiceMode == CHOICE_MODE_MULTIPLE_MODAL && mChoiceActionMode != null;
- ss.checkState = mCheckStates;
- ss.checkIdState = mCheckedIdStates;
+ if (mCheckStates != null) {
+ ss.checkState = mCheckStates.clone();
+ }
+ if (mCheckedIdStates != null) {
+ final LongSparseArray<Boolean> idState = new LongSparseArray<Boolean>();
+ final int count = mCheckedIdStates.size();
+ for (int i = 0; i < count; i++) {
+ idState.put(mCheckedIdStates.keyAt(i), mCheckedIdStates.valueAt(i));
+ }
+ ss.checkIdState = idState;
+ }
ss.checkedItemCount = mCheckedItemCount;
return ss;
diff --git a/core/java/android/widget/Switch.java b/core/java/android/widget/Switch.java
index 4143383..4fcb358 100644
--- a/core/java/android/widget/Switch.java
+++ b/core/java/android/widget/Switch.java
@@ -41,9 +41,15 @@ import com.android.internal.R;
/**
* A Switch is a two-state toggle switch widget that can select between two
* options. The user may drag the "thumb" back and forth to choose the selected option,
- * or simply tap to toggle as if it were a checkbox.
+ * or simply tap to toggle as if it were a checkbox. The {@link #setText(CharSequence) text}
+ * property controls the text displayed in the label for the switch, whereas the
+ * {@link #setTextOff(CharSequence) off} and {@link #setTextOn(CharSequence) on} text
+ * controls the text on the thumb. Similarly, the
+ * {@link #setTextAppearance(android.content.Context, int) textAppearance} and the related
+ * setTypeface() methods control the typeface and style of label text, whereas the
+ * {@link #setSwitchTextAppearance(android.content.Context, int) switchTextAppearance} and
+ * the related seSwitchTypeface() methods control that of the thumb.
*
- * @hide
*/
public class Switch extends CompoundButton {
private static final int TOUCH_MODE_IDLE = 0;
@@ -132,8 +138,8 @@ public class Switch extends CompoundButton {
TypedArray a = context.obtainStyledAttributes(attrs,
com.android.internal.R.styleable.Switch, defStyle, 0);
- mThumbDrawable = a.getDrawable(com.android.internal.R.styleable.Switch_switchThumb);
- mTrackDrawable = a.getDrawable(com.android.internal.R.styleable.Switch_switchTrack);
+ mThumbDrawable = a.getDrawable(com.android.internal.R.styleable.Switch_thumb);
+ mTrackDrawable = a.getDrawable(com.android.internal.R.styleable.Switch_track);
mTextOn = a.getText(com.android.internal.R.styleable.Switch_textOn);
mTextOff = a.getText(com.android.internal.R.styleable.Switch_textOff);
mThumbTextPadding = a.getDimensionPixelSize(
@@ -146,7 +152,7 @@ public class Switch extends CompoundButton {
int appearance = a.getResourceId(
com.android.internal.R.styleable.Switch_switchTextAppearance, 0);
if (appearance != 0) {
- setSwitchTextAppearance(appearance);
+ setSwitchTextAppearance(context, appearance);
}
a.recycle();
@@ -162,9 +168,9 @@ public class Switch extends CompoundButton {
* Sets the switch text color, size, style, hint color, and highlight color
* from the specified TextAppearance resource.
*/
- public void setSwitchTextAppearance(int resid) {
+ public void setSwitchTextAppearance(Context context, int resid) {
TypedArray appearance =
- getContext().obtainStyledAttributes(resid,
+ context.obtainStyledAttributes(resid,
com.android.internal.R.styleable.TextAppearance);
ColorStateList colors;
@@ -174,6 +180,9 @@ public class Switch extends CompoundButton {
TextAppearance_textColor);
if (colors != null) {
mTextColors = colors;
+ } else {
+ // If no color set in TextAppearance, default to the view's textColor
+ mTextColors = getTextColors();
}
ts = appearance.getDimensionPixelSize(com.android.internal.R.styleable.
@@ -244,7 +253,7 @@ public class Switch extends CompoundButton {
}
/**
- * Sets the typeface and style in which the text should be displayed on the switch.
+ * Sets the typeface in which the text should be displayed on the switch.
* Note that not all Typeface families actually have bold and italic
* variants, so you may need to use
* {@link #setSwitchTypeface(Typeface, int)} to get the appearance
@@ -263,18 +272,14 @@ public class Switch extends CompoundButton {
}
/**
- * Returns the text for when the button is in the checked state.
- *
- * @return The text.
+ * Returns the text displayed when the button is in the checked state.
*/
public CharSequence getTextOn() {
return mTextOn;
}
/**
- * Sets the text for when the button is in the checked state.
- *
- * @param textOn The text.
+ * Sets the text displayed when the button is in the checked state.
*/
public void setTextOn(CharSequence textOn) {
mTextOn = textOn;
@@ -282,18 +287,14 @@ public class Switch extends CompoundButton {
}
/**
- * Returns the text for when the button is not in the checked state.
- *
- * @return The text.
+ * Returns the text displayed when the button is not in the checked state.
*/
public CharSequence getTextOff() {
return mTextOff;
}
/**
- * Sets the text for when the button is not in the checked state.
- *
- * @param textOff The text.
+ * Sets the text displayed when the button is not in the checked state.
*/
public void setTextOff(CharSequence textOff) {
mTextOff = textOff;
@@ -582,8 +583,11 @@ public class Switch extends CompoundButton {
mThumbDrawable.setBounds(thumbLeft, switchTop, thumbRight, switchBottom);
mThumbDrawable.draw(canvas);
- mTextPaint.setColor(mTextColors.getColorForState(getDrawableState(),
- mTextColors.getDefaultColor()));
+ // mTextColors should not be null, but just in case
+ if (mTextColors != null) {
+ mTextPaint.setColor(mTextColors.getColorForState(getDrawableState(),
+ mTextColors.getDefaultColor()));
+ }
mTextPaint.drawableState = getDrawableState();
Layout switchText = getTargetCheckedState() ? mOnLayout : mOffLayout;
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index c021c48..e9662ae 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -84,10 +84,10 @@ import android.text.method.WordIterator;
import android.text.style.ClickableSpan;
import android.text.style.ParagraphStyle;
import android.text.style.SpellCheckSpan;
+import android.text.style.SuggestionRangeSpan;
import android.text.style.SuggestionSpan;
import android.text.style.TextAppearanceSpan;
import android.text.style.URLSpan;
-import android.text.style.UnderlineSpan;
import android.text.style.UpdateAppearance;
import android.text.util.Linkify;
import android.util.AttributeSet;
@@ -2894,7 +2894,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
sp.removeSpan(cw);
}
- // hideControllers would do it, but it gets called after this method on rotation
sp.removeSpan(mSuggestionRangeSpan);
ss.text = sp;
@@ -5099,10 +5098,9 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
- boolean areSuggestionsShown = areSuggestionsShown();
boolean isInSelectionMode = mSelectionActionMode != null;
- if (areSuggestionsShown || isInSelectionMode) {
+ if (isInSelectionMode) {
if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) {
KeyEvent.DispatcherState state = getKeyDispatcherState();
if (state != null) {
@@ -5115,10 +5113,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
state.handleUpEvent(event);
}
if (event.isTracking() && !event.isCanceled()) {
- if (areSuggestionsShown) {
- hideSuggestions();
- return true;
- }
if (isInSelectionMode) {
stopSelectionActionMode();
return true;
@@ -5282,10 +5276,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
// Has to be done on key down (and not on key up) to correctly be intercepted.
case KeyEvent.KEYCODE_BACK:
- if (areSuggestionsShown()) {
- hideSuggestions();
- return -1;
- }
if (mSelectionActionMode != null) {
stopSelectionActionMode();
return -1;
@@ -7950,9 +7940,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
}
hideControllers();
-
- removeSpans(0, mText.length(), SuggestionSpan.class);
- removeSpans(0, mText.length(), SpellCheckSpan.class);
}
startStopMarquee(hasWindowFocus);
@@ -9196,11 +9183,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
}
}
- private static class SuggestionRangeSpan extends UnderlineSpan {
- // TODO themable, would be nice to make it a child class of TextAppearanceSpan, but
- // there is no way to have underline and TextAppearanceSpan.
- }
-
private class SuggestionsPopupWindow extends PinnedPopupWindow implements OnClickListener {
private static final int MAX_NUMBER_SUGGESTIONS = SuggestionSpan.SUGGESTIONS_MAX_SIZE;
private static final int NO_SUGGESTIONS = -1;
@@ -9208,13 +9190,42 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
private WordIterator mSuggestionWordIterator;
private TextAppearanceSpan[] mHighlightSpans = new TextAppearanceSpan
[(int) (AVERAGE_HIGHLIGHTS_PER_SUGGESTION * MAX_NUMBER_SUGGESTIONS)];
+ private boolean mCursorWasVisibleBeforeSuggestions;
+
+ private class CustomPopupWindow extends PopupWindow {
+ public CustomPopupWindow(Context context, int defStyle) {
+ super(context, null, defStyle);
+ }
+
+ @Override
+ public void dismiss() {
+ super.dismiss();
+
+ if ((mText instanceof Editable) && mSuggestionRangeSpan != null) {
+ ((Editable) mText).removeSpan(mSuggestionRangeSpan);
+ }
+
+ setCursorVisible(mCursorWasVisibleBeforeSuggestions);
+ if (hasInsertionController()) {
+ getInsertionController().show();
+ }
+ }
+ }
+
+ public SuggestionsPopupWindow() {
+ for (int i = 0; i < mHighlightSpans.length; i++) {
+ mHighlightSpans[i] = new TextAppearanceSpan(mContext,
+ android.R.style.TextAppearance_SuggestionHighlight);
+ }
+ mCursorWasVisibleBeforeSuggestions = mCursorVisible;
+ }
@Override
protected void createPopupWindow() {
- mPopupWindow = new PopupWindow(TextView.this.mContext, null,
+ mPopupWindow = new CustomPopupWindow(TextView.this.mContext,
com.android.internal.R.attr.textSuggestionsWindowStyle);
mPopupWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NOT_NEEDED);
- mPopupWindow.setOutsideTouchable(true);
+ mPopupWindow.setFocusable(true);
mPopupWindow.setClippingEnabled(false);
}
@@ -9288,6 +9299,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
if (!(mText instanceof Editable)) return;
if (updateSuggestions()) {
+ mCursorWasVisibleBeforeSuggestions = mCursorVisible;
+ setCursorVisible(false);
super.show();
}
}
@@ -9312,9 +9325,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
@Override
public void hide() {
super.hide();
- if ((mText instanceof Editable) && mSuggestionRangeSpan != null) {
- ((Editable) mText).removeSpan(mSuggestionRangeSpan);
- }
}
private boolean updateSuggestions() {
@@ -9553,7 +9563,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
final int spanEnd = suggestionInfo.spanEnd;
if (spanStart != NO_SUGGESTIONS) {
// SuggestionSpans are removed by replace: save them before
- Editable editable = ((Editable) mText);
+ Editable editable = (Editable) mText;
SuggestionSpan[] suggestionSpans = editable.getSpans(spanStart, spanEnd,
SuggestionSpan.class);
final int length = suggestionSpans.length;
@@ -9572,7 +9582,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
final String suggestion = textView.getText().subSequence(
suggestionStart, suggestionEnd).toString();
final String originalText = mText.subSequence(spanStart, spanEnd).toString();
- ((Editable) mText).replace(spanStart, spanEnd, suggestion);
+ editable.replace(spanStart, spanEnd, suggestion);
// A replacement on a misspelled text removes the misspelled flag.
// TODO restore the flag if the misspelled word is selected back?
@@ -9624,12 +9634,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
mSuggestionsPopupWindow.show();
}
- void hideSuggestions() {
- if (mSuggestionsPopupWindow != null) {
- mSuggestionsPopupWindow.hide();
- }
- }
-
boolean areSuggestionsShown() {
return mSuggestionsPopupWindow != null && mSuggestionsPopupWindow.isShowing();
}
@@ -10579,7 +10583,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
mEndHandle.setActionPopupWindow(mStartHandle.getActionPopupWindow());
hideInsertionPointCursorController();
- hideSuggestions();
}
public void hide() {
@@ -10691,7 +10694,6 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
private void hideControllers() {
hideInsertionPointCursorController();
stopSelectionActionMode();
- hideSuggestions();
}
/**
diff --git a/core/java/com/android/internal/widget/AbsActionBarView.java b/core/java/com/android/internal/widget/AbsActionBarView.java
index ccbce3e..df2f717 100644
--- a/core/java/com/android/internal/widget/AbsActionBarView.java
+++ b/core/java/com/android/internal/widget/AbsActionBarView.java
@@ -56,6 +56,16 @@ public abstract class AbsActionBarView extends ViewGroup {
mSplitView = splitView;
}
+ /**
+ * @return Current visibility or if animating, the visibility being animated to.
+ */
+ public int getAnimatedVisibility() {
+ if (mVisibilityAnim != null) {
+ return mVisAnimListener.mFinalVisibility;
+ }
+ return getVisibility();
+ }
+
public void animateToVisibility(int visibility) {
if (mVisibilityAnim != null) {
mVisibilityAnim.cancel();
@@ -179,7 +189,7 @@ public abstract class AbsActionBarView extends ViewGroup {
protected class VisibilityAnimListener implements Animator.AnimatorListener {
private boolean mCanceled = false;
- private int mFinalVisibility;
+ int mFinalVisibility;
public VisibilityAnimListener withFinalVisibility(int visibility) {
mFinalVisibility = visibility;
@@ -199,6 +209,9 @@ public abstract class AbsActionBarView extends ViewGroup {
mVisibilityAnim = null;
setVisibility(mFinalVisibility);
+ if (mSplitView != null && mMenuView != null) {
+ mMenuView.setVisibility(mFinalVisibility);
+ }
}
@Override
diff --git a/core/java/com/android/internal/widget/ActionBarContextView.java b/core/java/com/android/internal/widget/ActionBarContextView.java
index 45d38ae..4fccc32 100644
--- a/core/java/com/android/internal/widget/ActionBarContextView.java
+++ b/core/java/com/android/internal/widget/ActionBarContextView.java
@@ -33,6 +33,7 @@ import android.util.AttributeSet;
import android.view.ActionMode;
import android.view.LayoutInflater;
import android.view.View;
+import android.view.ViewGroup;
import android.view.animation.DecelerateInterpolator;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -270,14 +271,14 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi
}
@Override
- protected LayoutParams generateDefaultLayoutParams() {
+ protected ViewGroup.LayoutParams generateDefaultLayoutParams() {
// Used by custom views if they don't supply layout params. Everything else
// added to an ActionBarContextView should have them already.
return new MarginLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
}
@Override
- public LayoutParams generateLayoutParams(AttributeSet attrs) {
+ public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) {
return new MarginLayoutParams(getContext(), attrs);
}
@@ -321,7 +322,7 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi
}
if (mCustomView != null) {
- LayoutParams lp = mCustomView.getLayoutParams();
+ ViewGroup.LayoutParams lp = mCustomView.getLayoutParams();
final int customWidthMode = lp.width != LayoutParams.WRAP_CONTENT ?
MeasureSpec.EXACTLY : MeasureSpec.AT_MOST;
final int customWidth = lp.width >= 0 ?
diff --git a/core/java/com/android/internal/widget/ActionBarView.java b/core/java/com/android/internal/widget/ActionBarView.java
index a0f6259..ff26d50 100644
--- a/core/java/com/android/internal/widget/ActionBarView.java
+++ b/core/java/com/android/internal/widget/ActionBarView.java
@@ -401,6 +401,7 @@ public class ActionBarView extends AbsActionBarView {
if (oldParent != null && oldParent != mSplitView) {
oldParent.removeView(menuView);
}
+ menuView.setVisibility(getAnimatedVisibility());
mSplitView.addView(menuView, layoutParams);
} else {
// We'll add this later if we missed it this time.
@@ -683,7 +684,7 @@ public class ActionBarView extends AbsActionBarView {
}
@Override
- protected LayoutParams generateDefaultLayoutParams() {
+ protected ViewGroup.LayoutParams generateDefaultLayoutParams() {
// Used by custom nav views if they don't supply layout params. Everything else
// added to an ActionBarView should have them already.
return new ActionBar.LayoutParams(DEFAULT_CUSTOM_GRAVITY);
@@ -810,7 +811,7 @@ public class ActionBarView extends AbsActionBarView {
HomeView homeLayout = mExpandedActionView != null ? mExpandedHomeLayout : mHomeLayout;
if (homeLayout.getVisibility() != GONE) {
- final LayoutParams lp = homeLayout.getLayoutParams();
+ final ViewGroup.LayoutParams lp = homeLayout.getLayoutParams();
int homeWidthSpec;
if (lp.width < 0) {
homeWidthSpec = MeasureSpec.makeMeasureSpec(availableWidth, MeasureSpec.AT_MOST);
@@ -881,7 +882,7 @@ public class ActionBarView extends AbsActionBarView {
}
if (customView != null) {
- final LayoutParams lp = generateLayoutParams(customView.getLayoutParams());
+ final ViewGroup.LayoutParams lp = generateLayoutParams(customView.getLayoutParams());
final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ?
(ActionBar.LayoutParams) lp : null;
@@ -1017,7 +1018,7 @@ public class ActionBarView extends AbsActionBarView {
customView = mCustomNavView;
}
if (customView != null) {
- LayoutParams lp = customView.getLayoutParams();
+ ViewGroup.LayoutParams lp = customView.getLayoutParams();
final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ?
(ActionBar.LayoutParams) lp : null;
@@ -1095,12 +1096,12 @@ public class ActionBarView extends AbsActionBarView {
}
@Override
- public LayoutParams generateLayoutParams(AttributeSet attrs) {
+ public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) {
return new ActionBar.LayoutParams(getContext(), attrs);
}
@Override
- public LayoutParams generateLayoutParams(LayoutParams lp) {
+ public ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams lp) {
if (lp == null) {
lp = generateDefaultLayoutParams();
}
diff --git a/core/res/res/anim-sw600dp/activity_close_enter.xml b/core/res/res/anim-sw600dp/activity_close_enter.xml
deleted file mode 100644
index c17786f..0000000
--- a/core/res/res/anim-sw600dp/activity_close_enter.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android" android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
- android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/activity_close_exit.xml b/core/res/res/anim-sw600dp/activity_close_exit.xml
deleted file mode 100644
index ba33640..0000000
--- a/core/res/res/anim-sw600dp/activity_close_exit.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:shareInterpolator="false"
- android:zAdjustment="top">
- <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
- <scale android:fromXScale="1.0" android:toXScale="1.1"
- android:fromYScale="1.0" android:toYScale="1.1"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/activity_open_enter.xml b/core/res/res/anim-sw600dp/activity_open_enter.xml
deleted file mode 100644
index c4b5ed7..0000000
--- a/core/res/res/anim-sw600dp/activity_open_enter.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:shareInterpolator="false"
- android:zAdjustment="top">
- <alpha android:fromAlpha="0.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="false"
- android:duration="@android:integer/config_shortAnimTime"/>
- <scale android:fromXScale="1.1" android:toXScale="1.0"
- android:fromYScale="1.1" android:toYScale="1.0"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="false"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/activity_open_exit.xml b/core/res/res/anim-sw600dp/activity_open_exit.xml
deleted file mode 100644
index b386b8b..0000000
--- a/core/res/res/anim-sw600dp/activity_open_exit.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android" android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
- android:fillEnabled="true" android:fillBefore="false" android:fillAfter="false"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/wallpaper_close_enter.xml b/core/res/res/anim-sw600dp/wallpaper_close_enter.xml
deleted file mode 100644
index b65ecf4..0000000
--- a/core/res/res/anim-sw600dp/wallpaper_close_enter.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="true" android:shareInterpolator="false"
- android:zAdjustment="top">
-
- <alpha android:fromAlpha="0.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/decelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-
- <scale android:fromXScale="2.0" android:toXScale="1.0"
- android:fromYScale="0.1" android:toYScale="1.0"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/decelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/wallpaper_close_exit.xml b/core/res/res/anim-sw600dp/wallpaper_close_exit.xml
deleted file mode 100644
index fabfacc..0000000
--- a/core/res/res/anim-sw600dp/wallpaper_close_exit.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="false" android:shareInterpolator="false"
- android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/decelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/wallpaper_open_enter.xml b/core/res/res/anim-sw600dp/wallpaper_open_enter.xml
deleted file mode 100644
index 96bdf42..0000000
--- a/core/res/res/anim-sw600dp/wallpaper_open_enter.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="false" android:shareInterpolator="false"
- android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/accelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
-</set> \ No newline at end of file
diff --git a/core/res/res/anim-sw600dp/wallpaper_open_exit.xml b/core/res/res/anim-sw600dp/wallpaper_open_exit.xml
deleted file mode 100644
index d7bcc5c..0000000
--- a/core/res/res/anim-sw600dp/wallpaper_open_exit.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2009, 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.
-*/
--->
-
-<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="true" android:shareInterpolator="false"
- android:zAdjustment="top">
-
-
- <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
- android:interpolator="@interpolator/accelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="@android:integer/config_shortAnimTime"/>
-
-
- <scale android:fromXScale="1.0" android:toXScale="2.0"
- android:fromYScale="1.0" android:toYScale="0.1"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="@android:integer/config_shortAnimTime" />
-
-</set> \ No newline at end of file
diff --git a/core/res/res/anim/activity_close_enter.xml b/core/res/res/anim/activity_close_enter.xml
index c17786f..c759a83 100644
--- a/core/res/res/anim/activity_close_enter.xml
+++ b/core/res/res/anim/activity_close_enter.xml
@@ -21,4 +21,11 @@
<alpha android:fromAlpha="1.0" android:toAlpha="1.0"
android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
android:duration="@android:integer/config_shortAnimTime"/>
+ <scale android:fromXScale=".95" android:toXScale="1.0"
+ android:fromYScale=".95" android:toYScale="1.0"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:interpolator="@interpolator/accelerate_quint"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:duration="@android:integer/config_shortAnimTime"/>
+
</set> \ No newline at end of file
diff --git a/core/res/res/anim/activity_close_exit.xml b/core/res/res/anim/activity_close_exit.xml
index e560a41..384810f 100644
--- a/core/res/res/anim/activity_close_exit.xml
+++ b/core/res/res/anim/activity_close_exit.xml
@@ -18,16 +18,15 @@
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:shareInterpolator="false"
- android:zAdjustment="top">
+ android:shareInterpolator="false" android:zAdjustment="top">
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
- android:interpolator="@interpolator/accelerate_decelerate"
+ android:interpolator="@interpolator/decelerate_cubic"
android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
android:duration="@android:integer/config_shortAnimTime"/>
- <scale android:fromXScale="1.0" android:toXScale="1.15"
- android:fromYScale="1.0" android:toYScale="1.15"
+ <scale android:fromXScale="1.0" android:toXScale="1.1"
+ android:fromYScale="1.0" android:toYScale="1.1"
android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_decelerate"
+ android:interpolator="@interpolator/decelerate_quint"
android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
android:duration="@android:integer/config_shortAnimTime"/>
</set> \ No newline at end of file
diff --git a/core/res/res/anim/activity_open_enter.xml b/core/res/res/anim/activity_open_enter.xml
index 55fcc0d..744153d 100644
--- a/core/res/res/anim/activity_open_enter.xml
+++ b/core/res/res/anim/activity_open_enter.xml
@@ -21,14 +21,14 @@
android:shareInterpolator="false"
android:zAdjustment="top">
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/accelerate_decelerate"
+ android:interpolator="@interpolator/decelerate_cubic"
android:fillEnabled="true"
android:fillBefore="false" android:fillAfter="false"
android:duration="@android:integer/config_shortAnimTime"/>
- <scale android:fromXScale="1.15" android:toXScale="1.0"
- android:fromYScale="1.15" android:toYScale="1.0"
+ <scale android:fromXScale="1.1" android:toXScale="1.0"
+ android:fromYScale="1.1" android:toYScale="1.0"
android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_decelerate"
+ android:interpolator="@interpolator/decelerate_quint"
android:fillEnabled="true"
android:fillBefore="false" android:fillAfter="false"
android:duration="@android:integer/config_shortAnimTime"/>
diff --git a/core/res/res/anim/activity_open_exit.xml b/core/res/res/anim/activity_open_exit.xml
index b386b8b..58e8816 100644
--- a/core/res/res/anim/activity_open_exit.xml
+++ b/core/res/res/anim/activity_open_exit.xml
@@ -21,4 +21,12 @@
<alpha android:fromAlpha="1.0" android:toAlpha="1.0"
android:fillEnabled="true" android:fillBefore="false" android:fillAfter="false"
android:duration="@android:integer/config_shortAnimTime"/>
+ <scale android:fromXScale="1.0" android:toXScale=".95"
+ android:fromYScale="1.0" android:toYScale=".95"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:interpolator="@interpolator/decelerate_quint"
+ android:fillEnabled="true"
+ android:fillBefore="false" android:fillAfter="false"
+ android:duration="@android:integer/config_shortAnimTime"/>
+
</set> \ No newline at end of file
diff --git a/core/res/res/anim/lock_screen_behind_enter.xml b/core/res/res/anim/lock_screen_behind_enter.xml
index 232096c..4f58be4 100644
--- a/core/res/res/anim/lock_screen_behind_enter.xml
+++ b/core/res/res/anim/lock_screen_behind_enter.xml
@@ -19,10 +19,18 @@
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:detachWallpaper="true" android:shareInterpolator="false">
+ <scale
+ android:fromXScale="0.95" android:toXScale="1.0"
+ android:fromYScale="0.95" android:toYScale="1.0"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:fillEnabled="true" android:fillBefore="true"
+ android:interpolator="@interpolator/decelerate_cubic"
+ android:startOffset="@android:integer/config_shortAnimTime"
+ android:duration="@android:integer/config_shortAnimTime" />
<alpha
- android:fromAlpha="0" android:toAlpha="1.0"
+ android:fromAlpha="0.0" android:toAlpha="1.0"
android:fillEnabled="true" android:fillBefore="true"
android:interpolator="@interpolator/decelerate_quad"
android:startOffset="@android:integer/config_shortAnimTime"
- android:duration="300"/>
+ android:duration="@android:integer/config_shortAnimTime"/>
</set> \ No newline at end of file
diff --git a/core/res/res/anim/lock_screen_exit.xml b/core/res/res/anim/lock_screen_exit.xml
index c4b6fcb..a186126 100644
--- a/core/res/res/anim/lock_screen_exit.xml
+++ b/core/res/res/anim/lock_screen_exit.xml
@@ -19,16 +19,18 @@
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:shareInterpolator="false"
- android:zAdjustment="top">
- <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
- <scale android:fromXScale="1.0" android:toXScale="1.15"
- android:fromYScale="1.0" android:toYScale="1.15"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_decelerate"
- android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
- android:duration="@android:integer/config_shortAnimTime"/>
+ android:zAdjustment="top"
+ android:shareInterpolator="false">
+ <scale
+ android:fromXScale="1.0" android:toXScale="1.15"
+ android:fromYScale="1.0" android:toYScale="1.15"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:fillEnabled="true" android:fillAfter="true"
+ android:interpolator="@interpolator/accelerate_quint"
+ android:duration="@android:integer/config_shortAnimTime" />
+ <alpha
+ android:fromAlpha="1.0" android:toAlpha="0"
+ android:fillEnabled="true" android:fillAfter="true"
+ android:interpolator="@interpolator/accelerate_quad"
+ android:duration="@android:integer/config_shortAnimTime"/>
</set> \ No newline at end of file
diff --git a/core/res/res/anim/wallpaper_close_enter.xml b/core/res/res/anim/wallpaper_close_enter.xml
index 1cbe3ec..1ca5c0c 100644
--- a/core/res/res/anim/wallpaper_close_enter.xml
+++ b/core/res/res/anim/wallpaper_close_enter.xml
@@ -18,35 +18,17 @@
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="true" android:shareInterpolator="false"
- android:zAdjustment="top">
-
- <alpha android:fromAlpha="0.0" android:toAlpha="0.5"
- android:interpolator="@interpolator/accelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="140"/>
- <alpha android:fromAlpha="0.5" android:toAlpha="1.0"
- android:interpolator="@interpolator/decelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:startOffset="140"
- android:duration="140"/>
-
- <scale android:fromXScale="2.0" android:toXScale="1.5"
- android:fromYScale="0.01" android:toYScale="0.495"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/accelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="140"/>
- <scale android:fromXScale="1.5" android:toXScale="1.0"
- android:fromYScale="0.495" android:toYScale="1.0"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/decelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:startOffset="140"
- android:duration="140"/>
-
+ android:shareInterpolator="false" android:zAdjustment="top">
+ <scale android:fromXScale="1.2" android:toXScale="1.0"
+ android:fromYScale=".8" android:toYScale="1.0"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:interpolator="@interpolator/decelerate_quint"
+ android:startOffset="300"
+ android:duration="240" />
+ <alpha android:fromAlpha="0" android:toAlpha="1.0"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:interpolator="@interpolator/decelerate_quad"
+ android:startOffset="300"
+ android:duration="300"/>
</set> \ No newline at end of file
diff --git a/core/res/res/anim/wallpaper_close_exit.xml b/core/res/res/anim/wallpaper_close_exit.xml
index ebeae6e..7e0e05f 100644
--- a/core/res/res/anim/wallpaper_close_exit.xml
+++ b/core/res/res/anim/wallpaper_close_exit.xml
@@ -18,11 +18,15 @@
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="false" android:shareInterpolator="false"
- android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
+ android:detachWallpaper="true" android:shareInterpolator="false" android:zAdjustment="normal">
+ <alpha android:fromAlpha="1.0" android:toAlpha="0"
+ android:fillEnabled="true" android:fillAfter="true"
android:interpolator="@interpolator/decelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="true"
- android:duration="280"/>
-</set>
+ android:duration="200"/>
+ <scale android:fromXScale="1.0" android:toXScale="0.95"
+ android:fromYScale="1.0" android:toYScale="0.95"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:fillEnabled="true" android:fillAfter="true"
+ android:interpolator="@interpolator/decelerate_quint"
+ android:duration="300" />
+</set> \ No newline at end of file
diff --git a/core/res/res/anim/wallpaper_open_enter.xml b/core/res/res/anim/wallpaper_open_enter.xml
index 411ecd6..6fdbd40 100644
--- a/core/res/res/anim/wallpaper_open_enter.xml
+++ b/core/res/res/anim/wallpaper_open_enter.xml
@@ -18,11 +18,17 @@
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="false" android:shareInterpolator="false"
- android:zAdjustment="normal">
- <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
- android:interpolator="@interpolator/accelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="true"
- android:duration="280"/>
-</set>
+ android:detachWallpaper="true" android:shareInterpolator="false" android:zAdjustment="normal">
+ <scale android:fromXScale="0.95" android:toXScale="1.0"
+ android:fromYScale="0.95" android:toYScale="1.0"
+ android:pivotX="50%p" android:pivotY="50%p"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:interpolator="@interpolator/decelerate_quint"
+ android:startOffset="200"
+ android:duration="300" />
+ <alpha android:fromAlpha="0" android:toAlpha="1.0"
+ android:interpolator="@interpolator/decelerate_cubic"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:startOffset="200"
+ android:duration="300"/>
+</set> \ No newline at end of file
diff --git a/core/res/res/anim/wallpaper_open_exit.xml b/core/res/res/anim/wallpaper_open_exit.xml
index f9e0996..075831b 100644
--- a/core/res/res/anim/wallpaper_open_exit.xml
+++ b/core/res/res/anim/wallpaper_open_exit.xml
@@ -18,35 +18,16 @@
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
- android:detachWallpaper="true" android:shareInterpolator="false"
- android:zAdjustment="top">
-
-
- <alpha android:fromAlpha="1.0" android:toAlpha="0.5"
+ android:shareInterpolator="false" android:zAdjustment="top">
+ <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
android:interpolator="@interpolator/accelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="140"/>
- <alpha android:fromAlpha="0.5" android:toAlpha="0.0"
- android:interpolator="@interpolator/decelerate_cubic"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:startOffset="140" android:duration="140"/>
-
-
- <scale android:fromXScale="1.0" android:toXScale="1.5"
- android:fromYScale="1.0" android:toYScale="0.495"
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:duration="200" />
+ <scale android:fromXScale="1.0" android:toXScale="1.2"
+ android:fromYScale="1.0" android:toYScale="0.8"
android:pivotX="50%p" android:pivotY="50%p"
android:interpolator="@interpolator/accelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="true" android:fillAfter="false"
- android:duration="140" />
- <scale android:fromXScale="1.5" android:toXScale="2.0"
- android:fromYScale="0.495" android:toYScale="0.0"
- android:pivotX="50%p" android:pivotY="50%p"
- android:interpolator="@interpolator/decelerate_quint"
- android:fillEnabled="true"
- android:fillBefore="false" android:fillAfter="true"
- android:startOffset="140" android:duration="140" />
+ android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true"
+ android:duration="200" />
</set> \ No newline at end of file
diff --git a/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_dark.9.png b/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_dark.9.png
new file mode 100644
index 0000000..53871a0
--- /dev/null
+++ b/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_dark.9.png
Binary files differ
diff --git a/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_light.9.png b/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_light.9.png
new file mode 100644
index 0000000..e3a0313
--- /dev/null
+++ b/core/res/res/drawable-hdpi/menu_hardkey_panel_holo_light.9.png
Binary files differ
diff --git a/core/res/res/drawable-hdpi/text_select_handle_left.png b/core/res/res/drawable-hdpi/text_select_handle_left.png
index 82cb640..e980857 100644
--- a/core/res/res/drawable-hdpi/text_select_handle_left.png
+++ b/core/res/res/drawable-hdpi/text_select_handle_left.png
Binary files differ
diff --git a/core/res/res/drawable-hdpi/text_select_handle_middle.png b/core/res/res/drawable-hdpi/text_select_handle_middle.png
index a2a909a..603f497 100644
--- a/core/res/res/drawable-hdpi/text_select_handle_middle.png
+++ b/core/res/res/drawable-hdpi/text_select_handle_middle.png
Binary files differ
diff --git a/core/res/res/drawable-hdpi/text_select_handle_right.png b/core/res/res/drawable-hdpi/text_select_handle_right.png
index 31f1c03..a5efe30 100644
--- a/core/res/res/drawable-hdpi/text_select_handle_right.png
+++ b/core/res/res/drawable-hdpi/text_select_handle_right.png
Binary files differ
diff --git a/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_dark.9.png b/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_dark.9.png
new file mode 100644
index 0000000..9d80b77
--- /dev/null
+++ b/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_dark.9.png
Binary files differ
diff --git a/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_light.9.png b/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_light.9.png
new file mode 100644
index 0000000..efa4325
--- /dev/null
+++ b/core/res/res/drawable-mdpi/menu_hardkey_panel_holo_light.9.png
Binary files differ
diff --git a/core/res/res/drawable-mdpi/text_select_handle_left.png b/core/res/res/drawable-mdpi/text_select_handle_left.png
index d2cb710..0c3a0cc 100644
--- a/core/res/res/drawable-mdpi/text_select_handle_left.png
+++ b/core/res/res/drawable-mdpi/text_select_handle_left.png
Binary files differ
diff --git a/core/res/res/drawable-mdpi/text_select_handle_middle.png b/core/res/res/drawable-mdpi/text_select_handle_middle.png
index db70e5a..f488bdd 100644
--- a/core/res/res/drawable-mdpi/text_select_handle_middle.png
+++ b/core/res/res/drawable-mdpi/text_select_handle_middle.png
Binary files differ
diff --git a/core/res/res/drawable-mdpi/text_select_handle_right.png b/core/res/res/drawable-mdpi/text_select_handle_right.png
index be3d6ea..d3880c6 100644
--- a/core/res/res/drawable-mdpi/text_select_handle_right.png
+++ b/core/res/res/drawable-mdpi/text_select_handle_right.png
Binary files differ
diff --git a/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_dark.9.png b/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_dark.9.png
new file mode 100644
index 0000000..521e2d9
--- /dev/null
+++ b/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_dark.9.png
Binary files differ
diff --git a/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_light.9.png b/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_light.9.png
new file mode 100644
index 0000000..92e117d
--- /dev/null
+++ b/core/res/res/drawable-xhdpi/menu_hardkey_panel_holo_light.9.png
Binary files differ
diff --git a/core/res/res/drawable-xhdpi/text_select_handle_left.png b/core/res/res/drawable-xhdpi/text_select_handle_left.png
index 6a10560..5fcbc52 100644
--- a/core/res/res/drawable-xhdpi/text_select_handle_left.png
+++ b/core/res/res/drawable-xhdpi/text_select_handle_left.png
Binary files differ
diff --git a/core/res/res/drawable-xhdpi/text_select_handle_middle.png b/core/res/res/drawable-xhdpi/text_select_handle_middle.png
index 71aaa85..05c2ca7 100644
--- a/core/res/res/drawable-xhdpi/text_select_handle_middle.png
+++ b/core/res/res/drawable-xhdpi/text_select_handle_middle.png
Binary files differ
diff --git a/core/res/res/drawable-xhdpi/text_select_handle_right.png b/core/res/res/drawable-xhdpi/text_select_handle_right.png
index 5339adc..ebf97c4 100644
--- a/core/res/res/drawable-xhdpi/text_select_handle_right.png
+++ b/core/res/res/drawable-xhdpi/text_select_handle_right.png
Binary files differ
diff --git a/core/res/res/values/arrays.xml b/core/res/res/values/arrays.xml
index 04e510b..57e9bbf 100644
--- a/core/res/res/values/arrays.xml
+++ b/core/res/res/values/arrays.xml
@@ -163,6 +163,8 @@
<item>@drawable/list_selector_holo_light</item>
<item>@drawable/menu_background</item>
<item>@drawable/menu_background_fill_parent_width</item>
+ <item>@drawable/menu_hardkey_panel_holo_dark</item>
+ <item>@drawable/menu_hardkey_panel_holo_light</item>
<item>@drawable/menu_submenu_background</item>
<item>@drawable/menu_selector</item>
<item>@drawable/overscroll_edge</item>
diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml
index 93cbde5..dae9f70 100755
--- a/core/res/res/values/attrs.xml
+++ b/core/res/res/values/attrs.xml
@@ -5318,9 +5318,9 @@
<declare-styleable name="Switch">
<!-- Drawable to use as the "thumb" that switches back and forth. -->
- <attr name="switchThumb" format="reference" />
+ <attr name="thumb" />
<!-- Drawable to use as the "track" that the switch thumb slides within. -->
- <attr name="switchTrack" format="reference" />
+ <attr name="track" format="reference" />
<!-- Text to use when the switch is in the checked/"on" state. -->
<attr name="textOn" />
<!-- Text to use when the switch is in the unchecked/"off" state. -->
diff --git a/core/res/res/values/public.xml b/core/res/res/values/public.xml
index b9d05fd..fcd3bba 100644
--- a/core/res/res/values/public.xml
+++ b/core/res/res/values/public.xml
@@ -1713,6 +1713,11 @@
<public type="attr" name="switchTextOn" />
<public type="attr" name="switchTextOff" />
<public type="attr" name="switchPreferenceStyle" />
+ <public type="attr" name="switchTextAppearance" />
+ <public type="attr" name="track" />
+ <public type="attr" name="switchMinWidth" />
+ <public type="attr" name="switchPadding" />
+ <public type="attr" name="thumbTextPadding" />
<public type="attr" name="textSuggestionsWindowStyle" />
<public type="attr" name="textEditSuggestionItemLayout" />
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index a3e460e..8e0f300 100755
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -1789,7 +1789,7 @@
<!-- When the lock screen is showing and the phone plugged in, and the battery
is not fully charged, show the current charge %. -->
- <string name="lockscreen_plugged_in">Charging (<xliff:g id="number">%d</xliff:g><xliff:g id="percent">%%</xliff:g>)</string>
+ <string name="lockscreen_plugged_in">Charging, <xliff:g id="number">%d</xliff:g><xliff:g id="percent">%%</xliff:g></string>
<!-- When the lock screen is showing, the phone is plugged in and the battery is fully
charged, say that it is charged. -->
<string name="lockscreen_charged">Charged.</string>
diff --git a/core/res/res/values/styles.xml b/core/res/res/values/styles.xml
index 5a76ed4..052a040 100644
--- a/core/res/res/values/styles.xml
+++ b/core/res/res/values/styles.xml
@@ -725,6 +725,11 @@ please see styles_device_defaults.xml.
<item name="android:quickContactWindowSize">modeLarge</item>
</style>
+ <style name="Widget.CompoundButton.Switch">
+ <item name="android:textOn">@android:string/capital_on</item>
+ <item name="android:textOff">@android:string/capital_off</item>
+ </style>
+
<!-- Text Appearances -->
<eat-comment />
@@ -885,11 +890,9 @@ please see styles_device_defaults.xml.
<item name="android:textSize">30sp</item>
</style>
- <!-- @hide -->
<style name="TextAppearance.SuggestionHighlight">
<item name="android:textSize">18sp</item>
<item name="android:textColor">@android:color/suggestion_highlight_text</item>
- <item name="android:textStyle">bold</item>
</style>
<!-- Preference Styles -->
@@ -1919,8 +1922,8 @@ please see styles_device_defaults.xml.
</style>
<style name="Widget.Holo.CompoundButton.Switch">
- <item name="android:switchTrack">@android:drawable/switch_track_holo_dark</item>
- <item name="android:switchThumb">@android:drawable/switch_inner_holo_dark</item>
+ <item name="android:track">@android:drawable/switch_track_holo_dark</item>
+ <item name="android:thumb">@android:drawable/switch_inner_holo_dark</item>
<item name="android:switchTextAppearance">@android:style/TextAppearance.Holo.Widget.Switch</item>
<item name="android:textOn">@android:string/capital_on</item>
<item name="android:textOff">@android:string/capital_off</item>
@@ -2293,6 +2296,17 @@ please see styles_device_defaults.xml.
<item name="android:itemPadding">8dip</item>
</style>
+ <style name="Widget.Holo.Light.CompoundButton.Switch" parent="Widget.CompoundButton.Switch">
+ <item name="android:track">@android:drawable/switch_track_holo_light</item>
+ <item name="android:thumb">@android:drawable/switch_inner_holo_light</item>
+ <item name="android:switchTextAppearance">@android:style/TextAppearance.Holo.Widget.Switch</item>
+ <item name="android:textOn">@android:string/capital_on</item>
+ <item name="android:textOff">@android:string/capital_off</item>
+ <item name="android:thumbTextPadding">12dip</item>
+ <item name="android:switchMinWidth">96dip</item>
+ <item name="android:switchPadding">16dip</item>
+ </style>
+
<!-- Animation Styles -->
<style name="Animation.Holo" parent="Animation">
diff --git a/core/res/res/values/themes.xml b/core/res/res/values/themes.xml
index 903fc04..f434ce8 100644
--- a/core/res/res/values/themes.xml
+++ b/core/res/res/values/themes.xml
@@ -980,7 +980,7 @@ please see themes_device_defaults.xml.
<item name="toastFrameBackground">@android:drawable/toast_frame_holo</item>
<!-- Panel attributes -->
- <item name="panelBackground">@android:drawable/menu_dropdown_panel_holo_dark</item>
+ <item name="panelBackground">@android:drawable/menu_hardkey_panel_holo_dark</item>
<item name="panelFullBackground">@android:drawable/menu_background_fill_parent_width</item>
<!-- These three attributes do not seems to be used by the framework. Declared public though -->
<item name="panelColorBackground">#000</item>
@@ -1215,6 +1215,7 @@ please see themes_device_defaults.xml.
<item name="buttonStyleInset">@android:style/Widget.Holo.Light.Button.Inset</item>
<item name="buttonStyleToggle">@android:style/Widget.Holo.Light.Button.Toggle</item>
+ <item name="switchStyle">@android:style/Widget.Holo.Light.CompoundButton.Switch</item>
<item name="selectableItemBackground">@android:drawable/item_background_holo_light</item>
<item name="borderlessButtonStyle">@android:style/Widget.Holo.Light.Button.Borderless</item>
@@ -1283,7 +1284,7 @@ please see themes_device_defaults.xml.
<item name="toastFrameBackground">@android:drawable/toast_frame_holo</item>
<!-- Panel attributes -->
- <item name="panelBackground">@android:drawable/menu_dropdown_panel_holo_light</item>
+ <item name="panelBackground">@android:drawable/menu_hardkey_panel_holo_light</item>
<item name="panelFullBackground">@android:drawable/menu_background_fill_parent_width</item>
<!-- These three attributes do not seems to be used by the framework. Declared public though -->
<item name="panelColorBackground">#000</item>