diff options
| author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2019-12-23 17:39:00 -0500 | 
|---|---|---|
| committer | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-01-22 20:38:21 -0500 | 
| commit | 351598a1829930a25a27a007fb3bc69bde251787 (patch) | |
| tree | 9828fb174777f1f31a491942a29decf6a7b4bf81 | |
| parent | e740965d4f39a34eecf8a211f22eddf56d185fed (diff) | |
Add settings to control popup content scale
| -rw-r--r-- | ext/bg/js/options.js | 2 | ||||
| -rw-r--r-- | ext/bg/js/settings/main.js | 4 | ||||
| -rw-r--r-- | ext/bg/settings.html | 16 | ||||
| -rw-r--r-- | ext/fg/js/frontend.js | 4 | 
4 files changed, 25 insertions, 1 deletions
| diff --git a/ext/bg/js/options.js b/ext/bg/js/options.js index 8021672b..cf9af240 100644 --- a/ext/bg/js/options.js +++ b/ext/bg/js/options.js @@ -279,6 +279,8 @@ function profileOptionsCreateDefaults() {              popupVerticalOffset2: 0,              popupHorizontalTextPosition: 'below',              popupVerticalTextPosition: 'before', +            popupScalingFactor: 1, +            popupScaleRelativeToPageZoom: false,              showGuide: true,              compactTags: false,              compactGlossaries: false, diff --git a/ext/bg/js/settings/main.js b/ext/bg/js/settings/main.js index 56828a15..a5407b75 100644 --- a/ext/bg/js/settings/main.js +++ b/ext/bg/js/settings/main.js @@ -44,6 +44,8 @@ async function formRead(options) {      options.general.popupVerticalOffset = parseInt($('#popup-vertical-offset').val(), 10);      options.general.popupHorizontalOffset2 = parseInt($('#popup-horizontal-offset2').val(), 0);      options.general.popupVerticalOffset2 = parseInt($('#popup-vertical-offset2').val(), 10); +    options.general.popupScalingFactor = parseInt($('#popup-scaling-factor').val(), 10); +    options.general.popupScaleRelativeToPageZoom = $('#popup-scale-relative-to-page-zoom').val() === 'true';      options.general.popupTheme = $('#popup-theme').val();      options.general.popupOuterTheme = $('#popup-outer-theme').val();      options.general.customPopupCss = $('#custom-popup-css').val(); @@ -109,6 +111,8 @@ async function formWrite(options) {      $('#popup-vertical-offset').val(options.general.popupVerticalOffset);      $('#popup-horizontal-offset2').val(options.general.popupHorizontalOffset2);      $('#popup-vertical-offset2').val(options.general.popupVerticalOffset2); +    $('#popup-scaling-factor').val(options.general.popupScalingFactor); +    $('#popup-scale-relative-to-page-zoom').val(options.general.popupScaleRelativeToPageZoom ? 'true' : 'false');      $('#popup-theme').val(options.general.popupTheme);      $('#popup-outer-theme').val(options.general.popupOuterTheme);      $('#custom-popup-css').val(options.general.customPopupCss); diff --git a/ext/bg/settings.html b/ext/bg/settings.html index 4c973674..37ee20aa 100644 --- a/ext/bg/settings.html +++ b/ext/bg/settings.html @@ -237,6 +237,22 @@                      </div>                  </div> +                <div class="form-group options-advanced"> +                    <div class="row"> +                        <div class="col-xs-6"> +                            <label for="popup-scaling-factor">Popup size multiplier</label> +                            <input type="number" min="0" id="popup-scaling-factor" class="form-control"> +                        </div> +                        <div class="col-xs-6"> +                            <label for="popup-scale-relative-to-page-zoom">Popup size mode</label> +                            <select class="form-control" id="popup-scale-relative-to-page-zoom"> +                                <option value="false">Absolute</option> +                                <option value="true">Relative to zoom level</option> +                            </select> +                        </div> +                    </div> +                </div> +                  <div class="form-group">                      <div class="row">                          <div class="col-xs-6"> diff --git a/ext/fg/js/frontend.js b/ext/fg/js/frontend.js index 52e3a5bc..d2fe9e76 100644 --- a/ext/fg/js/frontend.js +++ b/ext/fg/js/frontend.js @@ -196,7 +196,9 @@ class Frontend extends TextScanner {      }      _updateContentScale() { -        const contentScale = 1.0 / this._pageZoomFactor; // TODO : Use options +        const {popupScalingFactor, popupScaleRelativeToPageZoom} = this.options.general; +        let contentScale = popupScalingFactor; +        if (popupScaleRelativeToPageZoom) { contentScale /= this._pageZoomFactor; }          if (contentScale === this._contentScale) { return; }          this._contentScale = contentScale; |