Use java.text.DateFormat where possible, since that is already using
the CLDR data for the things it supports. Remove an unused date format
object from DatePickerDialog.
Add a new method for getting the standalone month names from applications,
although @hidden for now because it is an API change.
Pass the standalone month names down to native code in Time so that
tztime's strftime() can use them.
And then the bulk of the change: replace all the names for the months
and the days of the week, and AM and PM, and yesterday, today, and tomorrow,
with strings from CLDR. And replace several of the date format strings
with ones derived from CLDR, but reformatted to use strftime() style
instead of SimpleDateFormat style.
All these resource changes go into new donottranslate-cldr.xml files
and are removed from strings.xml so that they aren't part of the
normal translation process and the translators don't have to bother
with them (and risk messing them up).
* changes:
Make pressing the search button within an app that does not support search bring up global search. This still respects the case where an app has chosen to disable search entirely by overriding onSearchRequested() to return false.
search bring up global search. This still respects the case where an
app has chosen to disable search entirely by overriding
onSearchRequested() to return false.
I do not believe any changes to the SearchManager documentation
(http://developer.android.com/reference/android/app/SearchManager.html#HowSearchIsInvoked)
are necessary, because this documentation already indicates that
pressing the search button within an app that does nothing special with
regard to search can bring up global search.
* Keyboard should use DisplayMetrics from Resource rather than getting it from WindowManager as
the display metrics can differ under compatibility mode.
like a slide-out drawer, to provide app context and because it is not
full-screen.
Also fix a problem where bringing up global search sometimes still did
not size the dropdown correctly, because the keyboard was not yet showing.
with respect to the soft keyboard. getMaxAvailableHeight in
PopupWindow relies on View's getWindowVisibleDisplayFrame, which
always takes into account the IME, whereas in this case, because
we want the window to extend down to the bottom of the display
when it is being interacted with by the user, I added a new
boolean option 'ignoreBottomDecorations' to getMaxAvailableHeight.
If true, the method returns the height which will extend the
PopupWindow down to the bottom of the screen, rather than just
down to the IME.
Then in AutoCompleteTextView, I set this to true when the
dropDownAlwaysVisible attribute is true and the PopupWindow's
input method mode is INPUT_METHOD_NOT_NEEDED (which happens when
the list is dragged or otherwise interacted with).
Then, because the dropdown height is only calculated when we call
showDropDown(), I had to replace a couple calls to mPopup.update().
There are still a few remaining bugs here I'm tracking Still to do:
* Fix a strange re-placement of the window which happens
intermittently.
* Strange behavior when using the directional pad.
* In a few cases, the list does not correctly size itself to the IME.
This seems to be because the available height is calculated before
the IME is yet on screen, and thus is calculated as the entire screen.
This introduces a new class in the base platform for performing a clean
shutdown (which was copied from the classes in the policies). It
includes new features to send a shutdown broadcast for applications
to do cleanup, and ot have the activity manager pause the current
activity before proceeding with the shutdown. These facilities are
also use to write at the most recent stat files for sync, battery
and user activity.
- Removes the mSearchable field which was only
for communication between the constructor and
getActivityMetaData().
- Removes the badge and query rewriting fields,
since their values can be efficiently computed
on the fly.
- Makes all the other public fields private and adds getters
for them.
- Makes all fields final, except mActionKeys.
- Removes the DBG_INHIBIT_SUGGESTIONS_CONSTANT.
I don't see why we would every want that, and it
complicated making the fields final.
- Makes all fields in ActionKeyInfo final.
- Makes all fields in ActionKeyInfo private and adds getters.
- Removes the use of ActioKeyInfo.mKeyCode for failure
signalling. Uses IllegalArgumentException instead.
- Replaces the ad hoc linked list for looking up
action keys by a HashMap. This is needed to
make the fields in ActionkeyInfo final, and also avoids O(N)
lookup in the (unlikely) case that an activity
has lots of action keys.
- Don't throw exceptions when reading searchable
meta-data, since that could crash SearchManagerService.
- Adds debug logging.
within in-app search. If within in-app search and toggled out to global
search, pressing the hard search button will take the user *back* into
in-app search too.
Before, pressing MENU with the SearchDialog open would show
a menu item that launched the search settings activity. Now that
the search settings are accessible from the Settings app, this is
no longer needed.
Fixes http://b/issue?id=1819469 and http://b/issue?id=1817823
The attribute is not yet public.
Also adds a SearchManager method for listing all
searchables that can be included in global search.
This is the framework part of http://b/issue?id=1819651
This lets the searchable activity specify the number of
characters needed to trigger suggestions. Before, this was
hard-coded at 0. This caused unnecessary querying of the
suggestion provider in cases where the provider does not
return suggestions for empty or short queries.
The attribute is not yet public, pending API council approval.
Merge commit 'b8b3645a9799c38ad68549316ebbf7a4849f2e0c' into donut
* commit 'b8b3645a9799c38ad68549316ebbf7a4849f2e0c':
AI 147803: add docs and images for docs on Toast and Notification docs
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
* Changes to RootView / SurfaceView
- Makes the app believe it's running in the supported density/resolution.
- Makes the window manager believe it's running at the right density/resolution.
* Added methods to Rect/Event for scaling up/down.
Known issues:
* certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
which, in turn, is causing layout issue.
* ZoomButton in MapView is rendered in wrong place
* Transparent region on Surface is not correct
* Specifying different densities in one process is not working.
BUG=1770627
Automated import of CL 147976
The back key now dismisses the soft keyboard, and then the dialog.
The soft keyboard behavior is improved by having ACTV do the following when 'mDropdownAlwaysShowing' is true:
- touching outside of the drop down doesn't dismiss it
- touching the text field ensures the imei is brought in front of the drop down
CL 147456 introduced support for HTML formatted search suggestions.
This is triggered by the value "html" in the SUGGEST_COLUMN_FORMAT
column. However, the code failed to check that the
SUGGEST_COLUMN_FORMAT column was present before trying to read it.
This resulted in an IllegalStateException being thrown when searching
with a suggestion provider that does not include the SUGGEST_COLUMN_FORMAT
column. This broke search at least in the Contacts and Music apps.
Automated import of CL 147681
- all public apis and framework changes have been reviewed by relevant folks in our branch (e.g romainguy)
- all new public apis are @hidden; they will still get reviewed by api council once we're in git
- other than that, it's mostly GlobalSearch and search dialog stuff, a new apps provider, and some tweaks
to the contacts provider that was reviewed by jham
Automated import of CL 147564
There are three major classes of changes here:
- Avoid writing lines where their values are often empty, false, or some other typical thing.
- Use partial writes to the PrintWriter to avoid creating temporary strings.
- Use StringBuilder where we need to generate real String objects (and where possible cache the result).
were already listed in attrs.xml into SearchManager.java. Add
a (brief - no time for more) description about how to add search
by voice to apps.
JAVADOC ONLY - should be safe change for cupcake sdk.
Original author: stadler
Merged from: //branches/cupcake/...
Automated import of CL 147168
were already listed in attrs.xml into SearchManager.java. Add
a (brief - no time for more) description about how to add search
by voice to apps.
JAVADOC ONLY - should be safe change for cupcake sdk.
BUG=1554704
Automated import of CL 147163
Previously any Intent designated by setIntent() would be lost when
the Activity was shut down and restarted due to orientation change.
Now the custom intent is preserved across the relaunch.
Bug: b/1743425
Android's UI guide line. This modification is based on leland's mock.
See http://b/issue?id=1748136 for more information.
Put ProgressNumber left side, next to ProgressPercentage.
Make ProgressPercentage Bold.
Put ProgressNumber and ProgressPercentage near to the ProgressBar
above. This is same as the design of Market application.
Enable ProgressDialog change the ProgressNumber format. This is hidden
since the interface is premature.
Original author: dmiyakawa
Merged from: //branches/cupcake/...
Automated import of CL 144182
Android's UI guide line. This modification is based on leland's mock.
See http://b/issue?id=1748136 for more information.
Put ProgressNumber left side, next to ProgressPercentage.
Make ProgressPercentage Bold.
Put ProgressNumber and ProgressPercentage near to the ProgressBar
above. This is same as the design of Market application.
Enable ProgressDialog change the ProgressNumber format. This is hidden
since the interface is premature.
BUG=1748136,1612476
Automated import of CL 144181