Commit Graph

321 Commits

Author SHA1 Message Date
Android (Google) Code Review
1007bf2e50 am 0e230c57: Merge change 7688 into donut
Merge commit '0e230c574bdbf096994f6b658a19c19585907f11'

* commit '0e230c574bdbf096994f6b658a19c19585907f11':
  Copy cached drawables in search dialog.
2009-07-17 13:58:36 -07:00
Android (Google) Code Review
9ae8b09756 am f32f746b: Merge change 7645 into donut
Merge commit 'f32f746b83826303350417ff9937a6f9e5488f24'

* commit 'f32f746b83826303350417ff9937a6f9e5488f24':
  Make the SearchDialog's AutoCompleteTextView dropdown respect the
2009-07-17 13:58:11 -07:00
Bjorn Bringert
dfefa3e915 Copy cached drawables in search dialog.
Before, Drawables for cached icons were reused. This is not good,
since they can then share mutable state information. This change
copies all Drawables when getting them from the cache, storing
only the constant state in the cache.

Hopefully fixes http://b/issue?id=1984813
2009-07-17 17:22:44 +01:00
Mike LeBeau
ffe3ecf2b1 Make the SearchDialog's AutoCompleteTextView dropdown respect the
IME again when the user presses right or left from a query-jammed
suggestion to continue editing. Previously we required the user
to press on the text field again in order to get the IME to show.

We accomplish this by factoring out the code to 'ensureImeVisible'
into a separate method and calling that from SearchDialog.

Fixes http://b/1976338
2009-07-16 19:51:48 -07:00
Android (Google) Code Review
b2536b0b5c am 9ce081aa: Merge change 7551 into donut
Merge commit '9ce081aa2493dc163a42decfd4e1756b5c55a834'

* commit '9ce081aa2493dc163a42decfd4e1756b5c55a834':
  Add ability to delay messages in Filter based on constraint.  Use this to delay 500ms for delete keys in the search dialog.
2009-07-16 17:54:35 -07:00
Android (Google) Code Review
019de98b84 am eb09c6a0: Merge change 7568 into donut
Merge commit 'eb09c6a07abf58b4da2c4baf3800a1f96e3b0731'

* commit 'eb09c6a07abf58b4da2c4baf3800a1f96e3b0731':
  Issue #1969025: need api for launching intent as if it were coming from another component
2009-07-16 17:54:31 -07:00
Android (Google) Code Review
53245df9c1 am 8e3c3f64: Merge change 7514 into donut
Merge commit '8e3c3f6461b53dc587ba92b3fe8cfbeb985f8514'

* commit '8e3c3f6461b53dc587ba92b3fe8cfbeb985f8514':
  Only parse search suggestions that look like HTML
2009-07-16 17:53:57 -07:00
Android (Google) Code Review
991e986bed am 5380aa29: Merge change 7512 into donut
Merge commit '5380aa29470274de5b3e445d577ef0834cfacb71'

* commit '5380aa29470274de5b3e445d577ef0834cfacb71':
  Get rid of drawing hacks for search dialog suggestions
2009-07-16 17:53:53 -07:00
Bjorn Bringert
8145c35fdb am ee716fa2: Make sure SearchDialog.mSearchable != null in key handlers
Merge commit 'ee716fa2b03666622a73f8cc54dae4afd091353d'

* commit 'ee716fa2b03666622a73f8cc54dae4afd091353d':
  Make sure SearchDialog.mSearchable != null in key handlers
2009-07-16 17:53:48 -07:00
Android (Google) Code Review
9ce081aa24 Merge change 7551 into donut
* changes:
  Add ability to delay messages in Filter based on constraint.  Use this to delay 500ms for delete keys in the search dialog.
2009-07-16 14:41:10 -07:00
Karl Rosaen
8bf92e003d Add ability to delay messages in Filter based on constraint. Use this to delay 500ms for delete keys in the search dialog.
Holding down delete is nice and zippy in the browser now :)
2009-07-16 14:14:08 -07:00
Dianne Hackborn
2d91af0608 Issue #1969025: need api for launching intent as if it were coming from another component
And now there is.
2009-07-16 13:34:33 -07:00
Android (Google) Code Review
8e3c3f6461 Merge change 7514 into donut
* changes:
  Only parse search suggestions that look like HTML
2009-07-16 06:32:52 -07:00
Bjorn Bringert
84ee74335f Only parse search suggestions that look like HTML
HTML parsing of search suggestions is still a major
CPU hog in the search dialog. This change first
checks if the text contains any HTML markup
(by looking for < and &) before bothering to
treat it as HTML.
2009-07-16 14:31:00 +01:00
Android (Google) Code Review
5380aa2947 Merge change 7512 into donut
* changes:
  Get rid of drawing hacks for search dialog suggestions
2009-07-16 06:08:59 -07:00
Bjorn Bringert
391eaa3ba8 Get rid of drawing hacks for search dialog suggestions
Before, SuggestionsAdapter parsed every HTML formatted
string three times, to support state-dependent colors
in <font> tags. Now that there is support in Html
for color resources (added in
https://android-git.corp.google.com/g/7441),
we can get rid of this code.

Also, SuggestionsAdapter had a special purpose view
for drawing background colors when suggestion items
were not selected or pressed. This change replaces that
code with a StateListDrawable of ColorDrawables.

Before this change, HTML parsing used ~17% (uncontrolled benchmark,
just did some random searching) of the system_process CPU.
This change should reduce that by 2/3, i.e. about ~11% total
system_process reduction.
2009-07-16 13:57:20 +01:00
Bjorn Bringert
ee716fa2b0 Make sure SearchDialog.mSearchable != null in key handlers
This change adds checking that the searchdialog is initialized
properly to a few key event listeners where it was missing
before.

Also makes sure that the search dialog is not shown if the
global search is requested but the global search provider
cannot be found.

Should fix http://b/issue?id=1982128
"Device rebooting after search results"
where SearchDialog.onKeyDown() threw an NPE
2009-07-16 09:15:37 +01:00
Android (Google) Code Review
c3350ab5b2 am 82b283a9: Merge change 7451 into donut
Merge commit '82b283a9bf8e3508e1b5c6d4b6b8cae04597b83c'

* commit '82b283a9bf8e3508e1b5c6d4b6b8cae04597b83c':
  Include 'calling_package' extra for uses of in-app voice search so that
2009-07-15 18:15:01 -07:00
Mike LeBeau
260dfb5716 Include 'calling_package' extra for uses of in-app voice search so that
the server can tailor recognition to an individual app.
2009-07-15 15:20:14 -07:00
Mike LeBeau
6d54c172c3 am 1fffbd97: Fix keyboard not showing for global search on Dream. Rather than trying to call the hidden showSoftInputUnchecked method to show the IME in SearchDialog#show(), override onWindowFocusChanged in our subclass of AutoCompleteTextView so that whenever it gets
Merge commit '1fffbd97fa756ef7d3e7e885a5c1c8bb64380c20'

* commit '1fffbd97fa756ef7d3e7e885a5c1c8bb64380c20':
  Fix keyboard not showing for global search on Dream. Rather than trying to
2009-07-14 18:56:32 -07:00
Mike LeBeau
1fffbd97fa Fix keyboard not showing for global search on Dream. Rather than trying to
call the hidden showSoftInputUnchecked method to show the IME in SearchDialog#show(),
override onWindowFocusChanged in our subclass of AutoCompleteTextView so that whenever
it gets focus, we call the public showSoftInput method, passing in the ACTV, which is
the correct way to do this.

This fixes http://b/1930989.
2009-07-14 17:05:24 -07:00
Karl Rosaen
ce63850ff0 am 53d24af7: Respect onSearchRequested in Dialog and actually launch search. Also dismiss self.
Merge commit '53d24af774ad943ff26ef529c949f9c433806421'

* commit '53d24af774ad943ff26ef529c949f9c433806421':
  Respect onSearchRequested in Dialog and actually launch search.  Also dismiss self.
2009-07-14 16:03:39 -07:00
Karl Rosaen
53d24af774 Respect onSearchRequested in Dialog and actually launch search. Also dismiss self. 2009-07-14 15:52:58 -07:00
Android (Google) Code Review
c66c0abbb8 am 83a066c6: Merge change 7135 into donut
Merge commit '83a066c6d8ed953c3f5a1a44316509c9a9b0c6c2'

* commit '83a066c6d8ed953c3f5a1a44316509c9a9b0c6c2':
  Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog
2009-07-14 14:53:00 -07:00
Android (Google) Code Review
83a066c6d8 Merge change 7135 into donut
* changes:
  Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog shows.
2009-07-14 14:51:06 -07:00
Romain Guy
045163ac16 Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog
shows.
2009-07-14 14:50:31 -07:00
Dianne Hackborn
dace230043 resolved conflicts for merge of b06ea706 to master 2009-07-14 12:51:00 -07:00
Dianne Hackborn
b06ea70653 Add reporting of activity movement for search manager.
This adds a new API with the activity manager to find out about movement between
activities.  For my sanity, the old IActivityWatcher is now renamed to
IActivityController, and the new activity movement interface is named
IActivityWatcher.

This changes the search manager itself to use the new API to manage its state.
Note that there are still problems when going back to the search dialog after
it was hidden -- the suggestions window no longer appears until you explicitly
dismiss and re-show it.
2009-07-14 11:37:11 -07:00
Bjorn Bringert
cc916aa691 am c1d82e68: Use activity icon when search suggestion icon is missing
Merge commit 'c1d82e68eb4aae1b575e82b08e71a87670cc1532'

* commit 'c1d82e68eb4aae1b575e82b08e71a87670cc1532':
  Use activity icon when search suggestion icon is missing
2009-07-14 10:21:47 -07:00
Bjorn Bringert
c1d82e68eb Use activity icon when search suggestion icon is missing
New left-hand side icon fallback logic in search dialog:

1. If the search dialog gets no icon column, it shows no
   icon (like before). This would handle the case of in-app
   search where the provider does not include icons.
2. If the icon column is empty, or there is an error converting
   the icon id or URI to a drawable, the search dialog identifies
   the suggestion source by looking at the
   SUGGEST_COLUMN_INTENT_COMPONENT_NAME.
3. If SUGGEST_COLUMN_INTENT_COMPONENT_NAME is empty or not set,
   the current searchable activity is considered the suggestion source.
4. Try to get the activity icon of the suggestion source.
5. Fall back to the application icon of the suggestion source
   if there is no activity icon.
6. Fall back to some generic icon if there is no application icon.

Fixes http://b/issue?id=1905757
2009-07-14 13:52:01 +01:00
Mitsuru Oshima
a62e3e4d0f am ba3ba579: * Use cached resources for widgets
Merge commit 'ba3ba57921dedaaef669719c0359c0caf60e008b'

* commit 'ba3ba57921dedaaef669719c0359c0caf60e008b':
  * Use cached resources for widgets
2009-07-12 21:56:30 -07:00
Satish Sampath
17596e3adc am b1665f2e: Fix regression in handling the \'Go\' button
Merge commit 'b1665f2e15439f693b1ef75cb1c07593f99edde7'

* commit 'b1665f2e15439f693b1ef75cb1c07593f99edde7':
  Fix regression in handling the 'Go' button
2009-07-12 06:06:21 -07:00
Mitsuru Oshima
ba3ba57921 * Use cached resources for widgets 2009-07-11 21:50:16 -07:00
Satish Sampath
b1665f2e15 Fix regression in handling the 'Go' button
This was introduced in CL https://android-git.corp.google.com/g/6460.
Bug: http://b/issue?id=1970776
2009-07-10 22:35:48 +01:00
Bjorn Bringert
88588d137b am 0e01ea41: Deprecate DialogInterface methods in SearchManager
Merge commit '0e01ea41b215941128a4ea8dee454e6b35a4e798'

* commit '0e01ea41b215941128a4ea8dee454e6b35a4e798':
  Deprecate DialogInterface methods in SearchManager
2009-07-10 00:50:45 -07:00
Bjorn Bringert
0e01ea41b2 Deprecate DialogInterface methods in SearchManager
android.app.SearchManager implements
DialogInterface.OnDismissListener and DialogInterface.OnCancelListener
and thus exposes the methods onCancel(DialogInterface dialog) and
onDismiss(DialogInterface dialog). This was used by the SearchManager
to register itself as a listener on the search dialog, but is no
longer used.

This was an implementation detail that leaked into the public
API. Removing them would change the API, so they are deprecated instead.

Fixes http://b/issue?id=1962203
2009-07-10 07:16:47 +01:00
Android (Google) Code Review
13725324a7 am dded214e: Merge change 6689 into donut
Merge commit 'dded214eb92cebdd7fb2e6405173ffc1932e795a'

* commit 'dded214eb92cebdd7fb2e6405173ffc1932e795a':
  Don't crash the app when restore agent bringup throws
2009-07-09 16:00:24 -07:00
Christopher Tate
d1475e0375 Don't crash the app when restore agent bringup throws
Restore runs during the SetupWizard, before the phone is usable per se, so we
want to avoid presenting the usual "Application whatever has crashed..." dialog
to the user in the middle of that process.  This change modifies the exception
handling around agent bringup so that agent-originated exceptions are caught and
a null agent binder reported to the backup manager.

There are three points during this code sequence at which an exception can be
thrown due to application-code error:

+ the app's manifest can name a nonexistent or malformed BackupAgent class,
incurring a VM-level exception like ClassNotFound or BadCast.
- the agent's onCreate() method could crash/throw.
- the agent's onBind() method could crash/throw.

The new code arrangement here puts a try/catch around all of these possible
failure points.  When the code is invoked for backup, any caught exception is
merely rethrown.  During restore, however, execution is allowed to proceed
through reporting the app's agent binder back to the activity manager.  If any
exception was thrown, this reported binder will be null, i.e. a clean failure
notification to the backup manager.

What this code does *not* do at present is tear down the app when an exception
has been thrown.  This is happens if the exception is allowed to propagate.
Doing so cleanly is problematic, however, in circumstances where mutiple apps
and agents share a process.  Leaving the background process around until it is
torn down by the usual policies is probably the safer course at present.
2009-07-09 15:36:17 -07:00
Satish Sampath
97b3ed69db am 313ea433: Make suggestion text color change based on the item state.
Merge commit '313ea433d18e7fd5438b94c0606c496fcc7a2f88'

* commit '313ea433d18e7fd5438b94c0606c496fcc7a2f88':
  Make suggestion text color change based on the item state.
2009-07-09 12:49:53 -07:00
Android (Google) Code Review
bda4584bf6 am f9b7faee: Merge change 6503 into donut
Merge commit 'f9b7faee88313c4daf3e3fb34203978de20b7ce0'

* commit 'f9b7faee88313c4daf3e3fb34203978de20b7ce0':
  Hide soft keyboard in SearchDialog.dismiss()
2009-07-09 12:49:26 -07:00
Satish Sampath
313ea433d1 Make suggestion text color change based on the item state.
We support a ColorStateList reference now as a valid font color value
in the given html and manage html strings for all supported states
which we dynamically set while drawing the items.

This will get checked in along with changes to GlobalSearch,
EnhancedGoogleSearchProvider and Browser to make them use the new
model.

Bug: http://b/issue?id=1865037
2009-07-09 16:48:16 +01:00
Android (Google) Code Review
f9b7faee88 Merge change 6503 into donut
* changes:
  Hide soft keyboard in SearchDialog.dismiss()
2009-07-09 00:29:38 -07:00
Romain Guy
125cfce09d am 6de4aed1: Fixes #1933428. Call onPrepareDialog() on managed dialogs after their onCreate() is finished.
Merge commit '6de4aed1c67263269f83f579ec5b06263d173ef3'

* commit '6de4aed1c67263269f83f579ec5b06263d173ef3':
  Fixes #1933428. Call onPrepareDialog() on managed dialogs after their onCreate() is finished.
2009-07-08 14:45:11 -07:00
Romain Guy
6de4aed1c6 Fixes #1933428. Call onPrepareDialog() on managed dialogs after their onCreate() is finished. 2009-07-08 13:56:28 -07:00
Android (Google) Code Review
cd964761dc am 91b0a701: Merge change 6284 into donut
Merge commit '91b0a7013e4b6d170087cb4c9a3c35b787f92a6b'

* commit '91b0a7013e4b6d170087cb4c9a3c35b787f92a6b':
  Run search UI on its own thread.
2009-07-08 13:52:26 -07:00
Bjorn Bringert
ec8ee34e06 Hide soft keyboard in SearchDialog.dismiss()
Before it was hidden in cancel(), which does not get
called when the search dialog is dismissed by clicking
on a suggestion.

Fixes http://b/issue?id=1967633
2009-07-08 21:49:42 +01:00
Bjorn Bringert
444c727e0e Run search UI on its own thread.
Details:

- Add a new SearchDialogWrapper class that makes sure
  all access to the SearchDialog is run one a single thread
  other than the main ServerThread.
- Don't save/restore seach dialog state in Activity.
  This resulted in lots of calls to the SearchManager
  throughout the life cycle of all activities, for
  the questionable benefit of restoring the search dialog
  in a few cases.
- Remove search UI state save/restore, and the isVisible()
  method from SearchManagerService. They are no longer used,
  and were tricky to implement since they return values from
  the search UI thread to the service.
- Handle configuration changes in searchDialogWrapper instead
  of calling through from Activity.

Fixes http://b/issue?id=1938101

TODO:
- Activity.performPause() calls stopSearch(). This call may not happen
  until the new activity has been started. If the new activity starts a
  search immediately, this search could be cancelled by the old activity's
  call top stopSearch().
2009-07-08 17:43:49 +01:00
Satish Sampath
f1d0b7cd10 am d21572cd: NEW_API: Expose autoUrlDetect searchable attribute.
Merge commit 'd21572cd446e56efe94689324107927ac2bffd2a'

* commit 'd21572cd446e56efe94689324107927ac2bffd2a':
  NEW_API: Expose autoUrlDetect searchable attribute.
2009-07-08 09:17:21 -07:00
Satish Sampath
d21572cd44 NEW_API: Expose autoUrlDetect searchable attribute.
If provided and true, URLs entered in the search dialog while searching within this activity would be detected and treated as URLs (show a 'go' button in the keyboard and invoke the browser directly when user launches the URL instead of passing the URL to the activity). If set to false any URLs entered are treated as normal query text.
The default value is false. This is an optional attribute.
2009-07-08 15:09:08 +01:00
Simon Schoar
8cf97d9982 Removed usage of tabs for indention 2009-07-07 12:45:46 -07:00