From 6a5b55a42c7b0fea2e607dbd2b94dc9ab130ef1e Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Wed, 24 Jan 2018 15:13:44 +0100 Subject: [PATCH] Clear the canvas offset on resize. Fixes #699 --- src/canvas/view/CanvasView.js | 3 ++- test/specs/parser/model/ParserCss.js | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/canvas/view/CanvasView.js b/src/canvas/view/CanvasView.js index a42b89d4d..68fda7a75 100644 --- a/src/canvas/view/CanvasView.js +++ b/src/canvas/view/CanvasView.js @@ -1,10 +1,11 @@ +import { on, off } from 'utils/mixins'; const FrameView = require('./FrameView'); const $ = Backbone.$; module.exports = Backbone.View.extend({ initialize(o) { _.bindAll(this, 'renderBody', 'onFrameScroll', 'clearOff'); - window.onscroll = this.clearOff; + on(window, 'scroll resize', this.clearOff); this.config = o.config || {}; this.em = this.config.em || {}; this.ppfx = this.config.pStylePrefix || ''; diff --git a/test/specs/parser/model/ParserCss.js b/test/specs/parser/model/ParserCss.js index 262f945fb..0d0583bf5 100644 --- a/test/specs/parser/model/ParserCss.js +++ b/test/specs/parser/model/ParserCss.js @@ -2,7 +2,7 @@ const ParserCss = require('parser/model/ParserCss'); module.exports = { run() { - describe.only('ParserCss', () => { + describe('ParserCss', () => { var obj; beforeEach(() => { @@ -133,6 +133,7 @@ module.exports = { var str = '@media only screen and (max-width: 992px){ .test1.test2:hover{ color:red }}'; var result = { + atRuleType: 'media', selectors: ['test1', 'test2'], style: { color: 'red' }, state: 'hover', @@ -145,6 +146,7 @@ module.exports = { it('Parse rule inside media query', () => { var str = '@media (max-width: 992px){ .test1.test2:hover{ color:red }}'; var result = { + atRuleType: 'media', selectors: ['test1', 'test2'], style: { color: 'red' }, state: 'hover', @@ -167,11 +169,13 @@ module.exports = { selectors: ['test1', 'test2'], style: { color: 'red' }, state: 'hover', + atRuleType: 'media', mediaText: '(max-width: 992px)' }, { selectors: ['test2'], style: { color: 'blue' }, + atRuleType: 'media', mediaText: '(max-width: 992px)' } ];