Commit Graph

139 Commits

Author SHA1 Message Date
Romain Guy
870e09fcd2 Fixes #1963229. Introduces Context#isRestricted().
A restricted Context is a special type of Context that prevents specific features
from being used. For instance, android:onClick, used by View, can be dangerous when
used from within apps widgets. By using a restricted Context to inflate apps widgets,
widgets providers are prevented from using android:onClick.
2009-07-06 16:45:17 -07:00
Android (Google) Code Review
79ec07b333 Merge change 6241 into donut
* changes:
  Fixes #1444844. Set a maximum fling velocity in scrollable views.
2009-07-06 13:10:50 -07:00
Romain Guy
4296fc4d32 Fixes #1444844. Set a maximum fling velocity in scrollable views. 2009-07-06 11:48:52 -07:00
James Dong
aa00e390c1 Fix bug (#1947162)
The bug (1947162) is caused by the fact that sometimes, surfaceChanged() is called after onCompletion().
In surfaceChanged(), start() is called automatically. The fix is to use a flag is avoid calling start()
when onCompletion() has been called already.
2009-07-06 11:30:29 -07:00
Romain Guy
a54755962c Cleanup a bunch of warnings in app widgets code. 2009-07-01 17:21:12 -07:00
Satish Sampath
1b1a6e406c Fix build break by adding an @hide javadoc comment. 2009-07-01 19:08:05 +01:00
Satish Sampath
fef8d3e4d8 Make search UI open up quicker to the user.
On invoking the search UI, the drop down list box with past queries and shortcut items
appears after a few hundreds of milliseconds on screen. This was because we were
displaying the drop down within the onFilterCompleted callback after the list box filtered
the items based on the given query text. While that code path is necessary, for the first
invocation of the search dialog with an empty query we can show the list box before the
text stuff happens. This change does that, issuing an async request to show the drop
down after pending events have been processed.

Without this change, on an average it took 350ms for the code to show the drop down.
With this change, on an average it takes 150ms.
2009-07-01 17:55:31 +01:00
Romain Guy
b5537c4522 Replace indeterminate progress animated asset with new ones 2009-06-30 12:39:18 -07:00
Romain Guy
baac46339d Fixes #1940605. MeasureSpec's mode and height were inverted in RelativeLayout.
Also bumps up the cache's number of Nodes.
2009-06-29 14:28:29 -07:00
Eric Fischer
d072154bdd Add a null check in an AutoCompleteTextView callback to prevent a crash.
It looks like the drop down list had already been taken down before the
callback fired so it caused a null pointer exception.  In this case just
do nothing instead.

Bug 1927858
2009-06-26 16:14:59 -07:00
Romain Guy
f782e60efc Improve handling of FILL_PARENT in RelativeLayout.
This was causing trouble with VideoView, in Gallery in particular.
2009-06-25 15:26:49 -07:00
Romain Guy
f7dabb088a Fixes #1943309. RelativeLayout was confused by gravities.
RelativeLayout, when measured with AT_MOST, was applying the gravity on its
children way too early. This caused the RL to set its measured size to
a value that was larger than necessary. This fixes the issue by deferring
the positioning of the gravity-dependent children until the dimensions
of the layout are known.
2009-06-25 14:47:14 -07:00
Romain Guy
1ab621e316 Fixes #1943915. Prevents circular dependency exception when using several NO_ID
views.
2009-06-25 13:31:57 -07:00
Romain Guy
e24ef6032f Fixes #1940605. RelativeLayout was swapping horizontal and vertical
dependencies.
2009-06-25 13:01:55 -07:00
Android (Google) Code Review
0bcfc537e8 Merge change 5386 into donut
* changes:
  Fixes #1940839. Prevents NPE in RelativeLayout when a non-existing View is targeted.
2009-06-25 12:05:08 -07:00
Romain Guy
b8f8de8516 Fixes #1940839. Prevents NPE in RelativeLayout when a non-existing View is
targeted.
2009-06-25 12:03:56 -07:00
Android (Google) Code Review
7941e903c9 Merge change 5091 into donut
* changes:
  * new screen resolution support impl.   * use full window for activities, and shift & clip the content   * refactored the compatibility code, and introdcued Translator class to handle cooridnate translations.   * removed a workaround to handle an activity with configChagne=rotation in old implementation.   * I'll fix background issue on rotation in next CL.
2009-06-24 17:53:57 -07:00
Romain Guy
076dc9fa57 Fix TextView's fading edge when compound drawables are setup.
TextView was not correctly taking into account the extra space taken
by compound drawable when drawing the fading edge of a marquee'd
text.
2009-06-24 17:17:51 -07:00
Romain Guy
9560703839 Reverse the order in which RelativeLayout measures and positions children.
This fixes RelativeLayouts with height=wrap_content.
2009-06-24 14:38:34 -07:00
Romain Guy
a0fd1d742d Fix NPE in RelativeLayout. 2009-06-24 14:25:43 -07:00
Android (Google) Code Review
83f6b13018 Merge change 5237 into donut
* changes:
  Calling setItemChecked(p, true) twice would toggle the selection in ListView.
2009-06-24 12:59:15 -07:00
Romain Guy
8842f0bd5c Calling setItemChecked(p, true) twice would toggle the selection in ListView.
This fixes a bug in ListView#setItemChecked(int, boolean). Calling the method
twice would cause the checked state to be toggled instead of remaining the
same.
2009-06-24 12:53:54 -07:00
Romain Guy
9fffa1eb40 RelativeLayout was ignoring some dependencies.
This change also improves the speed of RelativeLayout by eliminating calls to
findViewById() whenever possible.
2009-06-24 12:44:01 -07:00
Mitsuru Oshima
64f59342d4 * new screen resolution support impl.
* use full window for activities, and shift & clip the content
  * refactored the compatibility code, and introdcued Translator class to handle cooridnate translations.
  * removed a workaround to handle an activity with configChagne=rotation in old implementation.
  * I'll fix background issue on rotation in next CL.

  * removed unnecessary scaling code in SurfaceView, which I forgot to remove when I changed SurfaceView
    not to scale the content.
2009-06-23 23:11:55 -07:00
Romain Guy
e29f064383 Fixes #1905761. Updates the height of ACTV's drop down whenever the IME changes. 2009-06-23 21:27:02 -07:00
Romain Guy
725015a9cd Improve RelativeLayout by allowing dependencies to be declared in a random
order.

The new implementation uses a dually topologically sorted graph of the child
views. The graph of dependencies is sorted once for the rules that impact the
horizontal axis (toLeftOf, alignRight, etc.) and once for the rules that impact
the vertical axis (above, below, etc.)

Doing so gives the ability to declare dependencies in any order, allows for
partial cycles in the graph (given view1 and view2, view1 can be toRightOf=view2
and view2 can be above=view1) and probably gets rid of most surprising behaviors
of RelativeLayout.
2009-06-23 17:45:44 -07:00
Dianne Hackborn
a465a170ce Fix bugs 1827027, 1808979, 1820700.
These are all variations of needing to validate ranges on editing operations
coming from the IME, to account for the underlying text changing (usually being
deleted) asynchronously with the IME.
2009-06-22 14:20:17 -07:00
Romain Guy
7299807d18 Fixes #1933585. Don't dismiss ACTV's drop down when it's set to alwaysVisible.
This change also resizes the drop down automatically whenever the soft input
method is shown/hidden.
2009-06-22 11:09:20 -07:00
Romain Guy
4dc4f73cab Fixes #1926784. Setting android:ellipsize on an EditText now ellipsizes the hint.
It doesn't make much sense to ellipsize the text entered by the user, so we
just ellipsize the hint. This avoids introducing a new XML attribute/Java API
just for the particular case of ellipsizing the hint.
2009-06-19 16:39:35 -07:00
Android (Google) Code Review
cff19c1a01 Merge change 4539 into donut
* changes:
  Fixes #1925003. Make ListView honor the android:choiceMode XML attribute.
2009-06-17 17:01:55 -07:00
Romain Guy
536fb04c1c Fixes #1925003. Make ListView honor the android:choiceMode XML attribute.
The attribute was simply ignored by the constructor.
2009-06-17 17:01:04 -07:00
Romain Guy
465dee4b4b Fixes #1819572. Do not resurrect the list's selection when the user moved it away.
This is a workaround for a touch mode issue.

Touch mode is propagated lazily to windows. This causes problems in
the following scenario:
- Type something in the AutoCompleteTextView and get some results
- Move down with the d-pad to select an item in the list
- Move up with the d-pad until the selection disappears
- Type more text in the AutoCompleteTextView *using the soft keyboard*
and get new results; you are now in touch mode
- The selection comes back on the first item in the list, even though
the list is supposed to be in touch mode

Using the soft keyboard triggers the touch mode change but that change
is propagated to our window only after the first list layout, therefore
after the list attempts to resurrect the selection.

The trick to work around this issue is to pretend the list is in touch
mode when we know that the selection should not appear, that is when
we know the user moved the selection away from the list.

This boolean is set to true whenever we explicitely hide the list's
selection and reset to false whenver we know the user moved the
selection back to the list.

When this boolean is true, isInTouchMode() returns true, otherwise it
returns super.isInTouchMode().
2009-06-17 16:49:17 -07:00
Bjorn Bringert
50145bc883 ACTV: getWindowVisibility() instead of private attach count
When debugging a problem with the search dialog drop-down
sometimes not showing up, I saw that the mAttachCount variable
in AutoCompleteTextView could get a negative value because
onDetachedFromWindow() was called multiple times. This lead to
the drop-down not being displayed on filtering.

Instead of the private attach count in ACTV, this change
uses View.getWindowVisibility().
2009-06-11 12:30:48 +01:00
Jack Veenstra
53175148c9 Add support for custom tab views in TabHost and TabWidget.
This change adds the ability to specify an arbitrary view for a tab
indicator.  It also adds support for specifying a drawable to use as
the divider between tab views.
2009-06-10 11:38:02 -07:00
Android (Google) Code Review
a32b5f3252 Merge change 2411 into donut
* changes:
  Manual merge from cupcake_dcm. Need to be reviewed by enf.
2009-06-10 08:01:20 -07:00
Romain Guy
0e1ca5749a Add support for gestures in Home.
Adds a new animation style for the gestures pad, and de-normalize
the scores in the recognition engine.
2009-06-09 22:58:46 -07:00
Romain Guy
f642aa2a44 Removes gestures from ListView. 2009-06-08 23:24:18 -07:00
Romain Guy
0a20264db8 Do not automatically enable gestures in list based on filtering/fastscroll status. Enable gestures in Contacts for now. 2009-06-08 14:47:01 -07:00
Android (Google) Code Review
4e0b13c9a9 Merge change 3348 into donut
* changes:
  Fix AlphabetIndexer.getSectionForPosition()
2009-06-05 14:53:00 -07:00
Phil Dubach
1b111bb6e2 Fix AlphabetIndexer.getSectionForPosition()
This did not properly set the cursor position before reading, which
resulted in wrong return values or exceptions in the cursor.
2009-06-05 12:27:59 -07:00
Romain Guy
834f0391b5 Fixes #1899273.
When a "ghost" stroke was showing, events would be intercepted in ListView. This patch modifies the logic used to detect when to still events: either the current stroke is a gesture, or the previous stroke was a gesture.
2009-06-05 11:24:09 -07:00
Android (Google) Code Review
ad8a510fcc Merge change 3227 into donut
* changes:
  Fix int to string mapping of exported properties. The value generated by the mapping in a @ViewDebug.ExportedProperty annotation was always overriden by the resolveId attribute.
2009-06-04 15:12:06 -07:00
Romain Guy
a1f3e4aef1 Fix int to string mapping of exported properties. The value generated by the
mapping in a @ViewDebug.ExportedProperty annotation was always overriden by
the resolveId attribute.
2009-06-04 15:10:46 -07:00
Android (Google) Code Review
b640da8fcb Merge change 3204 into donut
* changes:
  Avoid touching all adapter items when building accessibility event.
2009-06-04 14:12:02 -07:00
Amith Yamasani
d296fafab5 Avoid touching all adapter items when building accessibility event.
Only check for enabled items if the list is less than 15 items.
2009-06-04 14:00:20 -07:00
Romain Guy
f993ad5b89 Fixes #1882836.
Prevents the gestures window from leaking. This change does exactly what was
done for the filter popup window: the popup is dismissed in onSaveInstanceState()
as it is the only place that is executed early enough to avoid the dreaded
window leak error.
2009-06-04 13:26:52 -07:00
Android (Google) Code Review
fa30c0eed3 Merge change 2548 into donut
* changes:
  Fix a bug in AppSecurityPermissions where it wouldn't display permissions used by an app if it uses a shared user id. Remove the else clause and always get the list of requested permissions first before adding the permissions obtained via the shared user id. Also change an if condition and comments for better readability
2009-06-01 10:21:05 -07:00
Android (Google) Code Review
10d273bb69 Merge change 2591 into donut
* changes:
  Check if the ownerView is still attached to window in refreshPositionVariables.
2009-06-01 09:55:44 -07:00
Android (Google) Code Review
f422dc495a Merge change 2566 into donut
* changes:
  Fix javadoc typos. No code changes.
2009-05-29 15:07:45 -07:00
Romain Guy
0a63716ed0 Modify the base gestures API to use streams instead of files. Adds new wrappers to easily load/save gestures from files, resources, etc. Do the same for the letters recognizer. 2009-05-29 14:43:54 -07:00