Only emit finalUpdate found-in-page events
Since Chrome 53 all meaningful results of found-in-page are finalUpdate.
This commit is contained in:
parent
5ccd0a24e9
commit
fbac635687
4 changed files with 11 additions and 12 deletions
|
@ -528,15 +528,17 @@ void WebContents::FindReply(content::WebContents* web_contents,
|
|||
const gfx::Rect& selection_rect,
|
||||
int active_match_ordinal,
|
||||
bool final_update) {
|
||||
if (!final_update)
|
||||
return;
|
||||
|
||||
v8::Locker locker(isolate());
|
||||
v8::HandleScope handle_scope(isolate());
|
||||
|
||||
mate::Dictionary result = mate::Dictionary::CreateEmpty(isolate());
|
||||
result.Set("requestId", request_id);
|
||||
result.Set("matches", number_of_matches);
|
||||
result.Set("finalUpdate", final_update);
|
||||
result.Set("selectionArea", selection_rect);
|
||||
result.Set("activeMatchOrdinal", active_match_ordinal);
|
||||
result.Set("finalUpdate", final_update); // Deprecate after 2.0
|
||||
Emit("found-in-page", result);
|
||||
}
|
||||
|
||||
|
|
|
@ -302,10 +302,9 @@ Returns:
|
|||
* `event` Event
|
||||
* `result` Object
|
||||
* `requestId` Integer
|
||||
* `finalUpdate` Boolean - Indicates if more responses are to follow.
|
||||
* `activeMatchOrdinal` Integer (optional) - Position of the active match.
|
||||
* `matches` Integer (optional) - Number of Matches.
|
||||
* `selectionArea` Object (optional) - Coordinates of first match region.
|
||||
* `activeMatchOrdinal` Integer - Position of the active match.
|
||||
* `matches` Integer - Number of Matches.
|
||||
* `selectionArea` Object - Coordinates of first match region.
|
||||
|
||||
Emitted when a result is available for
|
||||
[`webContents.findInPage`](web-contents.md#webcontentsfindinpage) request.
|
||||
|
|
|
@ -646,10 +646,9 @@ Returns:
|
|||
|
||||
* `result` Object
|
||||
* `requestId` Integer
|
||||
* `finalUpdate` Boolean - Indicates if more responses are to follow.
|
||||
* `activeMatchOrdinal` Integer (optional) - Position of the active match.
|
||||
* `matches` Integer (optional) - Number of Matches.
|
||||
* `selectionArea` Object (optional) - Coordinates of first match region.
|
||||
* `activeMatchOrdinal` Integer - Position of the active match.
|
||||
* `matches` Integer - Number of Matches.
|
||||
* `selectionArea` Object - Coordinates of first match region.
|
||||
|
||||
Fired when a result is available for
|
||||
[`webview.findInPage`](web-view-tag.md#webviewtagfindinpage) request.
|
||||
|
@ -657,7 +656,7 @@ Fired when a result is available for
|
|||
```javascript
|
||||
const webview = document.getElementById('foo')
|
||||
webview.addEventListener('found-in-page', (e) => {
|
||||
if (e.result.finalUpdate) webview.stopFindInPage('keepSelection')
|
||||
webview.stopFindInPage('keepSelection')
|
||||
})
|
||||
|
||||
const requestId = webview.findInPage('test')
|
||||
|
|
|
@ -783,7 +783,6 @@ describe('<webview> tag', function () {
|
|||
let requestId = null
|
||||
let activeMatchOrdinal = []
|
||||
const listener = function (e) {
|
||||
if (!e.result.finalUpdate) return
|
||||
assert.equal(e.result.requestId, requestId)
|
||||
assert.equal(e.result.matches, 3)
|
||||
activeMatchOrdinal.push(e.result.activeMatchOrdinal)
|
||||
|
|
Loading…
Add table
Reference in a new issue