summaryrefslogtreecommitdiffstats
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/content/ContentResolver.java7
-rwxr-xr-x[-rw-r--r--]core/java/android/view/GestureDetector.java11
-rw-r--r--core/java/android/webkit/BrowserFrame.java1
-rw-r--r--core/java/android/widget/LinearLayout.java4
-rw-r--r--core/java/android/widget/Spinner.java34
-rw-r--r--core/java/android/widget/TimePicker.java2
6 files changed, 43 insertions, 16 deletions
diff --git a/core/java/android/content/ContentResolver.java b/core/java/android/content/ContentResolver.java
index cc3219b..780ec11 100644
--- a/core/java/android/content/ContentResolver.java
+++ b/core/java/android/content/ContentResolver.java
@@ -1030,7 +1030,8 @@ public abstract class ContentResolver {
}
/**
- * Notify registered observers that a row was updated.
+ * Notify registered observers that a row was updated and attempt to sync changes
+ * to the network.
* To register, call {@link #registerContentObserver(android.net.Uri , boolean, android.database.ContentObserver) registerContentObserver()}.
* By default, CursorAdapter objects will get this notification.
*
@@ -1045,10 +1046,14 @@ public abstract class ContentResolver {
* Notify registered observers that a row was updated.
* To register, call {@link #registerContentObserver(android.net.Uri , boolean, android.database.ContentObserver) registerContentObserver()}.
* By default, CursorAdapter objects will get this notification.
+ * If syncToNetwork is true, this will attempt to schedule a local sync using the sync
+ * adapter that's registered for the authority of the provided uri. No account will be
+ * passed to the sync adapter, so all matching accounts will be synchronized.
*
* @param uri
* @param observer The observer that originated the change, may be <code>null</null>
* @param syncToNetwork If true, attempt to sync the change to the network.
+ * @see #requestSync(android.accounts.Account, String, android.os.Bundle)
*/
public void notifyChange(Uri uri, ContentObserver observer, boolean syncToNetwork) {
try {
diff --git a/core/java/android/view/GestureDetector.java b/core/java/android/view/GestureDetector.java
index a496a9e..5c8b236 100644..100755
--- a/core/java/android/view/GestureDetector.java
+++ b/core/java/android/view/GestureDetector.java
@@ -193,8 +193,7 @@ public class GestureDetector {
}
}
- // TODO: ViewConfiguration
- private int mBiggerTouchSlopSquare = 20 * 20;
+ private int mBiggerTouchSlopSquare;
private int mTouchSlopSquare;
private int mDoubleTapSlopSquare;
@@ -408,6 +407,14 @@ public class GestureDetector {
}
mTouchSlopSquare = touchSlop * touchSlop;
mDoubleTapSlopSquare = doubleTapSlop * doubleTapSlop;
+
+ // The biggerTouchSlop should be a little bit bigger than touchSlop
+ // and mBiggerTouchSlopSquare should not be over mDoubleTapSlopSquare.
+ int biggerTouchSlop = (int)(touchSlop * 1.25f);
+ mBiggerTouchSlopSquare = biggerTouchSlop * biggerTouchSlop;
+ if (mBiggerTouchSlopSquare > mDoubleTapSlopSquare) {
+ mBiggerTouchSlopSquare = mDoubleTapSlopSquare;
+ }
}
/**
diff --git a/core/java/android/webkit/BrowserFrame.java b/core/java/android/webkit/BrowserFrame.java
index 66fca80..a810cf6 100644
--- a/core/java/android/webkit/BrowserFrame.java
+++ b/core/java/android/webkit/BrowserFrame.java
@@ -869,6 +869,7 @@ class BrowserFrame extends Handler {
loader.setCacheMode(headers.containsKey("If-Modified-Since")
|| headers.containsKey("If-None-Match") ?
WebSettings.LOAD_NO_CACHE : cacheMode);
+ loader.executeLoad();
// Set referrer to current URL?
return !synchronous ? loadListener : null;
}
diff --git a/core/java/android/widget/LinearLayout.java b/core/java/android/widget/LinearLayout.java
index 427fd3e..e67e4bb 100644
--- a/core/java/android/widget/LinearLayout.java
+++ b/core/java/android/widget/LinearLayout.java
@@ -307,7 +307,7 @@ public class LinearLayout extends ViewGroup {
if (child != null && child.getVisibility() != GONE) {
if (hasDividerBeforeChildAt(i)) {
final LayoutParams lp = (LayoutParams) child.getLayoutParams();
- final int top = child.getTop() - lp.topMargin;
+ final int top = child.getTop() - lp.topMargin - mDividerHeight;
drawHorizontalDivider(canvas, top);
}
}
@@ -334,7 +334,7 @@ public class LinearLayout extends ViewGroup {
if (child != null && child.getVisibility() != GONE) {
if (hasDividerBeforeChildAt(i)) {
final LayoutParams lp = (LayoutParams) child.getLayoutParams();
- final int left = child.getLeft() - lp.leftMargin;
+ final int left = child.getLeft() - lp.leftMargin - mDividerWidth;
drawVerticalDivider(canvas, left);
}
}
diff --git a/core/java/android/widget/Spinner.java b/core/java/android/widget/Spinner.java
index ec3790e..6499f9a 100644
--- a/core/java/android/widget/Spinner.java
+++ b/core/java/android/widget/Spinner.java
@@ -26,6 +26,7 @@ import android.database.DataSetObserver;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
+import android.util.DisplayMetrics;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
@@ -38,13 +39,13 @@ import android.view.ViewGroup;
*
* <p>See the <a href="{@docRoot}resources/tutorials/views/hello-spinner.html">Spinner
* tutorial</a>.</p>
- *
+ *
* @attr ref android.R.styleable#Spinner_prompt
*/
@Widget
public class Spinner extends AbsSpinner implements OnClickListener {
private static final String TAG = "Spinner";
-
+
// Only measure this many items to get a decent max width.
private static final int MAX_ITEMS_MEASURED = 15;
@@ -52,7 +53,7 @@ public class Spinner extends AbsSpinner implements OnClickListener {
* Use a dialog window for selecting spinner options.
*/
public static final int MODE_DIALOG = 0;
-
+
/**
* Use a dropdown anchored to the Spinner for selecting spinner options.
*/
@@ -732,13 +733,30 @@ public class Spinner extends AbsSpinner implements OnClickListener {
@Override
public void show() {
+ final Drawable background = getBackground();
+ int bgOffset = 0;
+ if (background != null) {
+ background.getPadding(mTempRect);
+ bgOffset = -mTempRect.left;
+ } else {
+ mTempRect.left = mTempRect.right = 0;
+ }
+
final int spinnerPaddingLeft = Spinner.this.getPaddingLeft();
if (mDropDownWidth == WRAP_CONTENT) {
final int spinnerWidth = Spinner.this.getWidth();
final int spinnerPaddingRight = Spinner.this.getPaddingRight();
+
+ int contentWidth = measureContentWidth(
+ (SpinnerAdapter) mAdapter, getBackground());
+ final int contentWidthLimit = mContext.getResources()
+ .getDisplayMetrics().widthPixels - mTempRect.left - mTempRect.right;
+ if (contentWidth > contentWidthLimit) {
+ contentWidth = contentWidthLimit;
+ }
+
setContentWidth(Math.max(
- measureContentWidth((SpinnerAdapter) mAdapter, getBackground()),
- spinnerWidth - spinnerPaddingLeft - spinnerPaddingRight));
+ contentWidth, spinnerWidth - spinnerPaddingLeft - spinnerPaddingRight));
} else if (mDropDownWidth == MATCH_PARENT) {
final int spinnerWidth = Spinner.this.getWidth();
final int spinnerPaddingRight = Spinner.this.getPaddingRight();
@@ -746,12 +764,6 @@ public class Spinner extends AbsSpinner implements OnClickListener {
} else {
setContentWidth(mDropDownWidth);
}
- final Drawable background = getBackground();
- int bgOffset = 0;
- if (background != null) {
- background.getPadding(mTempRect);
- bgOffset = -mTempRect.left;
- }
setHorizontalOffset(bgOffset + spinnerPaddingLeft);
setInputMethodMode(ListPopupWindow.INPUT_METHOD_NOT_NEEDED);
super.show();
diff --git a/core/java/android/widget/TimePicker.java b/core/java/android/widget/TimePicker.java
index afca2db..62373fc 100644
--- a/core/java/android/widget/TimePicker.java
+++ b/core/java/android/widget/TimePicker.java
@@ -212,6 +212,7 @@ public class TimePicker extends FrameLayout {
button.requestFocus();
mIsAm = !mIsAm;
updateAmPmControl();
+ onTimeChanged();
}
});
} else {
@@ -226,6 +227,7 @@ public class TimePicker extends FrameLayout {
picker.requestFocus();
mIsAm = !mIsAm;
updateAmPmControl();
+ onTimeChanged();
}
});
mAmPmSpinnerInput = (EditText) mAmPmSpinner.findViewById(R.id.numberpicker_input);