History log of /frameworks/base/core/java/android/webkit/FindActionModeCallback.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
777ef95ebf18c61ff09e7567a06058d351c530ca 26-Nov-2015 Yohei Yukawa <yukawa@google.com> Use Context.getSystemService(Class<T>) for InputMethodManager.

This is a mechanical replacement of Context.getSystemService(String)
with Context.getSystemService(Class<T>) when retrieving
InputMethodManager. Note those are bundled code. Hence we don't need
to make sure Build.VERSION.SDK_INT >= 23.

Change-Id: Icc64942ad8f11e44bf84f8d4fe476b2fdd1257f3
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
5f05965f546fa42750f1a8314f8a2da01fd6bfb4 15-May-2015 Yohei Yukawa <yukawa@google.com> Keep IMM#mCurRootView synchronized with the actual window focus.

Currently IMM#mCurRootView is always cleared every time when
IMM#finishInputLocked() is called. We have been doing this since
Iad09cf5dbb7f6f156fd39ed243431432e00f8945 so as not to hold the
strong reference to a DecorView so long time (Bug 6413553).

Strictly speaking, the attached window may continue holding
input focus even after IMM#finishInputLocked() is called.
In this state IMM#focusIn() might have unexpectedly rejected
focus-in event but presumably this might not be obvious, or might
not occur at all because in some situations IMM#finishInputLocked()
has never been called even when the attached view loses input
focus.

In order to fix Issue 20820914, however, we need to call
IMM#finishInputLocked() exactly when the attached view loses
input focus. To make it easier to diagnose any unexpected
regressions, this CL only changes the handling of
IMM#mCurRootView, while the next CL Id6afc8fc64512225578c62557b96
plumbs IMM#focusOut() to IMM#finishInputLocked().

Manually tested following scenarios.
- Repro steps in Bug 6413553. Made sure that IMM#mCurRootView
is cleared after switching back from the current application to
the previous application with back key.
- Test application that calls WebView#showFindDialog(). Made sure
that LatinIME works fine when switching text fields. This is
non-trivial because android.webkit.FindActionModeCallback is
changed in this CL.
- Repro steps in Bug 21144633. Made sure that we can enter
recipient's name in the messaging app.

Bug: 20820914
Change-Id: I219394178e4172bc47864297f1418e677dba25e5
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
159c3d8a8b99c9a7c9d7cb3013a622fdf2c6c04a 14-May-2015 Wale Ogunwale <ogunwale@google.com> Revert "Update IME focus when the active view is losing the focus."

This reverts commit 97c381304207013fd95c7806df4dcca0c69006c0.

This causes issue with the right IME window getting focus.

Bug: 21144633
Change-Id: I4c75b6e7dd87c10f008444d2059164b52a8f4335
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
97c381304207013fd95c7806df4dcca0c69006c0 12-May-2015 Yohei Yukawa <yukawa@google.com> Update IME focus when the active view is losing the focus.

Despite the fact that IMM#focusOut() are called from many focus
mangement logics, the reality is that IMM#focusOut() has done
nothing more than 6 years. This would not a big problem as long
as IMM#focusIn() is called immediately after IMM#focusOut().

However, situations where only IMM#focusOut() is called,
following fields continue keeping object references.
- IMM#mServedView
- IMM#mNextServedView
- IMM#mServedInputConnection
- IMM#mServedInputConnectionWrapper

Even worse, if the IME is showing software keyboard, it will not
be dismissed.

With this CL, IMM#focusOut() starts cleaning up the active IME
session when the associated view loses focus.

This CL also removes IMM#mCurRootView because it is indeed
necessary for above change. The problem when only introducing
above change can be understood as follows.

1. IMM#mCurRootView is correctly set from ViewRootImpl.
2. IMM#focusIn() is called. InputConnection is established.
3. IMM#focusOut() is called, which triggers
IMM#finishInputLocked() because of above change, which
internally clears IMM#mCurRootView.
4. IMM#focusIn() is called but IMM#mCurRootView is still null.
Because of this the focus-in event is ignored and the
software keyboard does not show up anymore.

In this CL, we simply check view.hasWindowFocus() instead.
As far as I've tested, this change looks to be working well.

Bug: 20820914
Change-Id: Ib4bd70ce0305a6bde6a929bcc6ad20a2b8402a97
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
451e338c51e8c45efc0d21536dfae6f78f6d5e06 10-Nov-2014 Ignacio Solla <igsolla@google.com> [WebView] Allow the WebView to be compiled against the system SDK.

BUG:18152150
Change-Id: Ifd6dcac17663631058d895c61bb6e8018c5aeecc
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
f35a55769ad81fb138e23f829b40feabc2ec7fc0 22-Jan-2013 John Reck <jreck@android.com> am 58fb0002: am ecd3c76f: am 6458d9b1: Merge "Fix for truncated sentence in "Find on Page" field"

* commit '58fb00025daa78360a3d033b223d15364d49086f':
Fix for truncated sentence in "Find on Page" field
52c9f7f95083a9d041b9261522e929073cb52fd5 18-Jan-2013 Ben Murdoch <benm@google.com> Refactor FindActionModeCallback.

Refactor FindActionModeCallback to make it more suitable
for sharing between WebViewClassic and WebViewChromium.

Bug=5006564

Change-Id: Ic3156eb50f99033a17ba3f83d0b4f39ba992afa8
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
1c15b8d896229b11e13134c52579a5c9fac4d5f6 18-Sep-2012 Stefan Wysocki <stefan.wysocki@sonymobile.com> Fix for truncated sentence in "Find on Page" field

When typing a text in find on page, then deleting it again the
default text in the field "Find on Page" is truncated by
an invisible view.

This commit fixes the problem by setting the visibility of
mMatches view changes to View.GONE instead of View.INVISIBLE.

Change-Id: I9889f22a254cdabb0cbaba72bff4b14158e5c9ff
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
7e9f62ef486af98ce6fbb3e2918a45c68c0b551f 24-May-2012 George Mount <mount@google.com> Use setCustomSelectActionModeCallback to disallow action bar.

Bug 5993716
Use setCustomSelectActionModeCallback rather than
setLongClickListener to disallow custom action block so
that long press can bring up the paste window.

Change-Id: I916e77dcea7914c02191f0ecda37cd126318807d
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
0b8413bbeb528c854e28c5ba1550239867da5c2e 26-Mar-2012 Victoria Lease <violets@google.com> Make WebView.findAllAsync() and WebView.setFindListener() public.

Deprecate WebView.findAll() while we're at it.

Bug: 6052412
Change-Id: I2f7116786109b4d6a01d24ac892c13b5d1f498f4
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
abeb6a791501151308d06db6aebb438e16c1a784 06-Mar-2012 Victoria Lease <violets@google.com> proposed public API for asynchronous find-on-page

Bug: 6052412

Change-Id: I63bff3bfda50eede958cb885f5068ae94bdcfe7d
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
3c90952036a5ff7ddb2946c643f1a0bf1c31d53a 28-Feb-2012 Jonathan Dixon <joth@google.com> Refactor WebView to be a thin proxy class

Splits interface and implementation; all client calls are forwarded
to an abstract WebViewProvider interface, and the existing implementation
moved into the WebViewClassic implementor of this interface.

Originally taken from a snapshot from the development branch, by:
git diff HEAD 9a4c328a54cc05e5 | git apply
- but then rebased to keep up to date with master

Interdepends on webkit and Browser changes:
https://android-git.corp.google.com/g/158979
https://android-git.corp.google.com/g/167911

Change-Id: I91403f32654ff308934e95c832d17b292a7d9b2e
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
47d0ee9766fb972f49d5116d2d7d3a23b5321211 14-Feb-2012 Victoria Lease <violets@google.com> async find-on-page implementation via WebKit

Change-Id: I63c6f8fc97bf452ea4456c77a89c5d2540c3d1ea
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
d6ac727234b9be45c3df4021dc83584e9849c00a 09-Nov-2011 John Reck <jreck@google.com> Fix determining find on page overlap

Bug: 5572138

Change-Id: Ie528e1cf9df363307018e01a898e8d9dfff1cd45
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
fffce6fe99f7ae80f448790371b8c0fa90277d1a 07-Oct-2011 John Reck <jreck@google.com> Fix calc visible to account for action bar

Bug: 5425892

Change-Id: I15bc1779013dbb33511d9c5bff9b678115dec102
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
f8419a0299680ed580975b0fcb758990b4367db8 03-Oct-2011 Adam Powell <adamp@google.com> Fix bugs around overlay action modes.

Multiple focusable windows cause undesired behavior around selection
modes. TextView isn't sure how to behave when it loses window focus
with regard to selection handles and action modes need to be focusable
for WebView find on page since it uses an EditText as a custom view.

For now:

* Use a layered window decor for overlay action mode when there is no
action bar requested. This eliminates an extra window and avoids the
issue described for full-screen UIs.

* Disable WebView's find-on-page mode when the action mode's UI will
not be focusable. This only affects WebViews in floating windows.

Also remove the "Text Selection" title for WebView's selection mode at
UX's request, as it is inconsistent with TextView's selection mode and
the string does not fit on phones in portrait even on wide
devices. This now uses the same mechanism used in TextView to decide
whether to use title text.

Change-Id: I80caeecea9b47728cf26bb0a388153ca0bdeafe1
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
7014b12873068f109f58b9d0ad4116fd8d4bf22f 11-Jan-2011 Leon Scroggins <scroggo@google.com> Find when pressing enter. Call onClickListener in TextView.

Bug:3313519

In Find ActionMode, Enter should call find on page (rather than
advancing focus to the WebView).

In TextView, pass and Enter key down to super, so that the
pressed state can get called properly, and the
onClickListener will fire.

Change-Id: Ia875fa6b5cf02565a0d066a009e68ce97718b032
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
73254be0ddfc075521a63a069c6c30d200dca557 07-Jan-2011 Leon Scroggins <scroggo@google.com> Do not update matches string when there are no matches.

Bug:2927451
Change-Id: I6374ffcc9d0710d69206d2f1f31a908b010a75bf
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
18cf9a7828f0b50daf967e22f0c5308b68d2919a 05-Jan-2011 Leon Scroggins <scroggo@google.com> Show the keyboard when opening Find from the menu.

Bug:3324846
Change-Id: Ia8b1eea096660b3c01bc0ee3906ecc86ec1c20f3
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
571354fd29db3e4855e2f179c2c6ad47f4eefd77 04-Jan-2011 Leon Scroggins <scroggo@google.com> Do not open the keyboard when opening Find from CAB.

Bug:3312049

Do not start Find on page if the action mode fails to
start. Clean up showFindDialog.

Requires a change to packages/apps/Browser

Change-Id: I204315665d3bf9f3ac78e78c4059c5a6f24695db
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
261f42d64dbd6d59af8ffecb315169b747167cc1 09-Dec-2010 Leon Scroggins <scroggo@google.com> Dismiss IME when pressing Next or Previous.

Bug:3267230

Change-Id: If4ea2f589c42f7346685a7ce754298dd8e5a00b5
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
2ac445cbb736f405695abaed1232969a4e2c7728 01-Dec-2010 Leon Scroggins <scroggo@google.com> Do not remove the embedded title bar when starting Find.

Bug:2927138
Change-Id: I97adb4431aedca172a5951d727ad559de5101924
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
05919f2133f8af89ab69c3a39aa34c6a32e78f05 14-Sep-2010 Leon Scroggins <scroggo@google.com> Exit action mode when destroying the WebView or loading.

Bug: 3000317

Change-Id: I7f131d5c159058c33c3249ee4e0fee3a667ec6d8
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java
fe026bdd3c0fd7543ceaf0732aeb824cfddb5b23 24-Aug-2010 Leon Scroggins <scroggo@google.com> Move Find on page and Select ActionModes to framework.

Bug: 2938052

Requires a change to packages/apps/Browser

Change-Id: I1bb1a47610b06c4bb02ef08647c02cc1dcaddb15
/frameworks/base/core/java/android/webkit/FindActionModeCallback.java