Commit Graph

60 Commits

Author SHA1 Message Date
wussup
fc4ec899ca Add constrainResolution option
Sometimes we may have the functionality to set scale/resolution provided by a user and it can be any number (so constrainResolution in View class is not useful), but we would like to have constrainResolution in mouse wheel zoom event.
2020-04-20 15:36:19 +02:00
Tim Schaub
054af09032 Make code prettier
This updates ESLint and our shared eslint-config-openlayers to use Prettier.  Most formatting changes were automatically applied with this:

    npm run lint -- --fix

A few manual changes were required:

 * In `examples/offscreen-canvas.js`, the `//eslint-disable-line` comment needed to be moved to the appropriate line to disable the error about the `'worker-loader!./offscreen-canvas.worker.js'` import.
 * In `examples/webpack/exapmle-builder.js`, spaces could not be added after a couple `function`s for some reason.  While editing this, I reworked `ExampleBuilder` to be a class.
 * In `src/ol/format/WMSGetFeatureInfo.js`, the `// @ts-ignore` comment needed to be moved down one line so it applied to the `parsersNS` argument.
2020-04-06 12:54:09 -06:00
Frederic Junod
da8ef43db7 Remove all inheritDoc tags from src/ol/interaction 2020-04-03 07:52:51 +02:00
Andreas Hocevar
df1d0ac4a0 Merge pull request #10739 from ahocevar/timeout-typo
Fix typo in trackpad timeout
2020-02-27 07:49:09 +01:00
Matthias
10a624db3c Update MouseWheelZoom.js 2020-02-26 20:36:07 -05:00
Andreas Hocevar
e9227a9bc1 Fix typo in trackpad timeout 2020-02-26 19:27:20 +01:00
Andreas Hocevar
d93073f8d0 No trackpad mode for constrained resolutions 2020-02-16 10:05:32 +01:00
Andreas Hocevar
5150378983 Improve trackpad rebound behavior 2020-02-16 09:08:27 +01:00
Andreas Hocevar
f3ce8e23b4 Fractional zoom changes in WHEEL mode 2020-02-15 13:53:14 +01:00
Andreas Hocevar
ea5c91e19e Revert "Merge pull request #9565 from dbrnz/v6.0.0-beta.7-branch"
This reverts commit 35569a8427, reversing
changes made to 29a434314b.
2020-02-14 11:46:57 +01:00
Andreas Hocevar
c8e340a623 Rename variables now that trackpads are not special any more 2020-02-05 12:58:21 +01:00
David Brooks
77658e5750 Ensure changes to zoom wheel handling pass tests. 2020-02-05 11:24:48 +01:00
David Brooks
54bae0168f Handle mouse wheel zoom events as if they've come from a trackpad. 2020-02-05 11:21:44 +01:00
Andreas Hocevar
3cca945002 Do not use Math.sign() to support very old browsers 2019-11-18 07:54:20 +01:00
Andreas Hocevar
643a3ad86b tabindex without focux condition 2019-11-13 23:24:53 +01:00
ahocevar
d416866108 Use pointer events everywhere 2019-08-31 23:40:11 +02:00
Frederic Junod
238fbca650 Add new maxDelta property to MouseWheelZoom constructor 2019-04-08 15:02:21 +02:00
Olivier Guyot
f67baa0dc0 Interactions / fix zoom level when a zoom interaction ends 2019-02-22 15:04:54 +01:00
Olivier Guyot
433bccd207 Linting and fixes for unit tests 2019-02-22 15:01:30 +01:00
Olivier Guyot
ef6d17d817 View / add a 'smoothResolutionConstraint' options
When enabled (true by default), the resolution min/max values will be applied with
a smoothing effect for a better user experience.
2019-02-22 15:01:30 +01:00
Olivier Guyot
e023c144bb View / add adjust* methods to manipulate the view more easily
API changes:
* (breaking) the `rotate` method is gone
* the `adjustRotation`, `adjustResolution` and `adjustZoom` methods are now
  available and allow using an anchor.

This means interactions do not have to do the anchor computation themselves
and this also fix anchor computation when constraints must be applied.
2019-02-22 15:01:30 +01:00
Olivier Guyot
49662b019c View / add a constrainResolution option
This introduces a breaking change.

This options replaces the various `constrainResolution` options on interactions
and the `fit` method.

Since constraints are now the responsibility of the View, the fact that intermediary
zoom levels are allowed or not is now set in the view options.

By default, the view resolution is unconstrained.
2019-02-22 15:01:30 +01:00
jahow
d991dfa54a View / remove constrainCenter method 2019-02-22 15:01:30 +01:00
Olivier Guyot
3c1e3779e2 View / add a method to compute a valid zoom level
The `getValidZoomLevel` apply the current resolution constraint to return
a value that is guaranteed valid.

This is used for interactions & controls which need a target value to work:
the +/- buttons, the zoom clider, the dragbox zoom and the mouse wheel zoom.
2019-02-22 15:01:30 +01:00
Olivier Guyot
4e1ece16ed View / implemented begin- and endInteraction methods 2019-02-22 15:01:30 +01:00
Frederic Junod
6d608c361a Simplify import path in ol/interaction/ 2018-11-05 16:26:45 +01:00
ahocevar
9163558511 Replace instanceof checks with other logic 2018-10-12 20:35:59 +02:00
Kevin Schmidt
942a0976be Move interaction event handlers to class methods 2018-10-03 06:30:09 -06:00
ahocevar
3f79edba67 Use setTimeout with any return type 2018-10-03 10:50:44 +02:00
Kevin Schmidt
b6846d6b3d Use window.setTimeout to avoid TS conflict with Node's setTimeout 2018-10-01 15:41:03 -06:00
Frederic Junod
ea616e7751 Don't import ourselves 2018-09-06 09:05:32 +02:00
Tim Schaub
ccfacc5ee6 Transformed types
Using the [ts.js codemod](https://gist.github.com/tschaub/1ea498c9d1e5268cf36d212b3949be4e):

    jscodeshift --transform ts.js src
2018-09-05 08:05:29 -06:00
ahocevar
bbe0a66d07 Set api annotation on classdesc, not constructor 2018-07-21 17:25:22 +02:00
ahocevar
e79add2e77 Use extends, super and proper constructor jsdoc for ol/interaction 2018-07-17 21:09:06 +02:00
Tim Schaub
7b4a73f3b9 Automated class transform
npx lebab --replace src --transform class
2018-07-16 16:18:16 -06:00
ahocevar
28409486a5 Make classes in ol/ available as named exports from ol 2018-06-21 18:08:17 +02:00
ahocevar
440d1ad3e1 Shorter module paths for default exports 2018-04-25 17:25:39 +02:00
ahocevar
c496b4edca Fix type typos 2018-03-16 17:22:45 +01:00
ahocevar
54beb17b55 No olx and ol types for ol/interaction/MouseWheelZoom 2018-03-16 16:35:39 +01:00
ahocevar
12581b6a77 No olx and ol types for ol/interaction/DragBox 2018-03-15 16:49:50 +01:00
Tim Schaub
8907339963 Module type for ol/MapBrowserEvent 2018-03-12 08:32:09 -06:00
Andreas Hocevar
95d6251dbb Get rid of olx.js and typedef.js typedefs for ol 2018-03-08 18:57:24 +01:00
Tim Schaub
1404e9d61d Remove remaining static members from Interaction 2018-02-25 12:46:57 -07:00
Tim Schaub
1be61fdb09 Only export handleEvent where it is used by other interactions 2018-02-19 14:00:59 -07:00
Tim Schaub
e8aae60066 Remove private static members from MouseWheelZoom interaction 2018-02-12 07:11:56 -07:00
Andreas Hocevar
2c718db797 Fix type annotations 2018-02-08 19:51:26 +01:00
Marc Jansen
6e764a20b3 Import events conditions explicitly 2018-02-05 20:36:42 +01:00
Tim Schaub
9cfee0f40b Named exports from ol/has 2018-02-05 10:42:47 -07:00
Tim Schaub
ad62739a6e Use blocked scoped variables
In addition to using const and let, this also upgrades our linter config and removes lint (mostly whitespace).
2018-01-12 00:50:30 -07:00
Tim Schaub
853cecd406 Rename _ol_ViewHint_ to ViewHint 2018-01-10 09:35:42 -07:00