Fix API change of findInPage API

This commit is contained in:
Cheng Zhao 2016-09-08 14:27:10 +09:00
parent 937ae7ef8f
commit 5708e86a05
2 changed files with 17 additions and 27 deletions

View file

@ -532,18 +532,12 @@ void WebContents::FindReply(content::WebContents* web_contents,
v8::HandleScope handle_scope(isolate());
mate::Dictionary result = mate::Dictionary::CreateEmpty(isolate());
if (number_of_matches == -1) {
result.Set("requestId", request_id);
result.Set("selectionArea", selection_rect);
result.Set("finalUpdate", final_update);
result.Set("activeMatchOrdinal", active_match_ordinal);
Emit("found-in-page", result);
} else if (final_update) {
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);
Emit("found-in-page", result);
}
}
bool WebContents::CheckMediaAccessPermission(

View file

@ -780,25 +780,21 @@ describe('<webview> tag', function () {
describe('found-in-page event', function () {
it('emits when a request is made', function (done) {
var requestId = null
var totalMatches = null
var activeMatchOrdinal = []
var listener = function (e) {
let requestId = null
let activeMatchOrdinal = []
const listener = function (e) {
assert.equal(e.result.requestId, requestId)
if (e.result.finalUpdate) {
assert.equal(e.result.matches, 3)
totalMatches = e.result.matches
listener2()
} else {
activeMatchOrdinal.push(e.result.activeMatchOrdinal)
if (e.result.activeMatchOrdinal === totalMatches) {
if (e.result.activeMatchOrdinal === e.result.matches) {
assert.deepEqual(activeMatchOrdinal, [1, 2, 3])
webview.stopFindInPage('clearSelection')
done()
} else {
listener2()
}
}
}
var listener2 = function () {
const listener2 = function () {
requestId = webview.findInPage('virtual')
}
webview.addEventListener('found-in-page', listener)