Merge pull request #10071 from Snuffleupagus/matchesCount-FirefoxCom-forward

Enable forwarding, in `FirefoxCom`, of the matchesCount to the browser findbar (bug 1062025)
This commit is contained in:
Tim van der Meij 2018-09-16 14:10:47 +02:00 committed by GitHub
commit a85ee3616e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 28 additions and 11 deletions

View File

@ -212,7 +212,7 @@ PDFViewerApplication.externalServices = {
},
updateFindMatchesCount(data) {
// FirefoxCom.request('updateFindMatchesCount', data);
FirefoxCom.request('updateFindMatchesCount', data);
},
initPassiveLoading(callbacks) {

View File

@ -161,16 +161,33 @@ class PDFFindBar {
if (total) {
if (total > limit) {
matchesCountMsg = this.l10n.get('find_matches_count_limit', {
n: limit,
limit: limit.toLocaleString(),
}, 'More than {{limit}} match' + (limit !== 1 ? 'es' : ''));
if (typeof PDFJSDev !== 'undefined' && PDFJSDev.test('MOZCENTRAL')) {
// TODO: Remove this hard-coded `[other]` form once plural support has
// been implemented in the mozilla-central specific `l10n.js` file.
matchesCountMsg = this.l10n.get('find_matches_count_limit[other]', {
limit: limit.toLocaleString(),
}, 'More than {{limit}} matches');
} else {
matchesCountMsg = this.l10n.get('find_matches_count_limit', {
n: limit,
limit: limit.toLocaleString(),
}, 'More than {{limit}} match' + (limit !== 1 ? 'es' : ''));
}
} else {
matchesCountMsg = this.l10n.get('find_matches_count', {
n: total,
current: current.toLocaleString(),
total: total.toLocaleString(),
}, '{{current}} of {{total}} match' + (total !== 1 ? 'es' : ''));
if (typeof PDFJSDev !== 'undefined' && PDFJSDev.test('MOZCENTRAL')) {
// TODO: Remove this hard-coded `[other]` form once plural support has
// been implemented in the mozilla-central specific `l10n.js` file.
matchesCountMsg = this.l10n.get('find_matches_count[other]', {
current: current.toLocaleString(),
total: total.toLocaleString(),
}, '{{current}} of {{total}} matches');
} else {
matchesCountMsg = this.l10n.get('find_matches_count', {
n: total,
current: current.toLocaleString(),
total: total.toLocaleString(),
}, '{{current}} of {{total}} match' + (total !== 1 ? 'es' : ''));
}
}
}
Promise.resolve(matchesCountMsg).then((msg) => {

View File

@ -510,7 +510,7 @@ class PDFFindController {
// When searching starts, this method may be called before the `pageMatches`
// have been counted (in `_calculateMatch`). Ensure that the UI won't show
// temporarily broken state when the active find result doesn't make sense.
if (current > total) {
if (current < 1 || current > total) {
current = total = 0;
}
return { current, total, };