Added View#getInteracting() to the api, similar to View#getAnimating() to access the hints

This commit is contained in:
Michel Beaudouin-Lafon
2017-05-01 14:09:44 +02:00
parent 4507fb9368
commit 97b3ff0499
2 changed files with 13 additions and 0 deletions

View File

@@ -317,6 +317,16 @@ ol.View.prototype.getAnimating = function() {
};
/**
* Determine if the user is interacting with the view, such as panning or zooming.
* @return {boolean} The view is being interacted with.
* @api
*/
ol.View.prototype.getInteracting = function() {
return this.getHints()[ol.ViewHint.INTERACTING] > 0;
};
/**
* Cancel any ongoing animations.
* @api

View File

@@ -310,9 +310,11 @@ describe('ol.View', function() {
});
expect(view.getHints()).to.eql([0, 0]);
expect(view.getInteracting()).to.eql(0);
view.setHint(ol.ViewHint.INTERACTING, 1);
expect(view.getHints()).to.eql([0, 1]);
expect(view.getInteracting()).to.eql(1);
});
it('triggers the change event', function(done) {
@@ -323,6 +325,7 @@ describe('ol.View', function() {
view.on('change', function() {
expect(view.getHints()).to.eql([0, 1]);
expect(view.getInteracting()).to.eql(1);
done();
});
view.setHint(ol.ViewHint.INTERACTING, 1);