Skip to content

Commit 2c0a685

Browse files
committed
fix: create the DOMStylesReader in CanvasDrawer
That is where most of its methods are used
1 parent 2029c6a commit 2c0a685

File tree

3 files changed

+15
-14
lines changed

3 files changed

+15
-14
lines changed

lib/minimap-element.js

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import { EventsDelegation, AncestorsMethods } from 'atom-utils-plus'
55
import elementResizeDetectorImport from 'element-resize-detector'
66

77
import * as Main from './main'
8-
import DOMStylesReader from './dom-styles-reader'
98
import CanvasDrawer from './mixins/canvas-drawer'
109
import include from './decorators/include'
1110
import element from './decorators/element'
@@ -178,11 +177,6 @@ class MinimapElement {
178177
*/
179178
this.quickSettingsElement = undefined
180179

181-
/**
182-
* This MinimapElement's DOMStylesReader
183-
*/
184-
this.DOMStylesReader = new DOMStylesReader()
185-
186180
/**
187181
* This MinimapElement's CanvasDrawer
188182
*/
@@ -396,7 +390,7 @@ class MinimapElement {
396390
and the `change` event has not be triggered in the process.
397391
*/
398392
atom.styles.onDidAddStyleElement(() => {
399-
this.DOMStylesReader.invalidateDOMStylesCache()
393+
this.CanvasDrawer.DOMStylesReader.invalidateDOMStylesCache()
400394
this.requestForcedUpdate()
401395
}),
402396

lib/mixins/canvas-drawer.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { escapeRegExp } from 'underscore-plus'
44

55
import * as Main from '../main'
66
import CanvasLayer from '../canvas-layer'
7+
import DOMStylesReader from '../dom-styles-reader'
78

89
/**
910
* The `CanvasDrawer` mixin is responsible for the rendering of a `Minimap`
@@ -13,10 +14,16 @@ import CanvasLayer from '../canvas-layer'
1314
* methods are available on any `MinimapElement` instance.
1415
*/
1516
export default class CanvasDrawer {
16-
constructor() {
17+
constructor () {
1718
// set in setModel of minimapElement
1819
this.minimap = undefined
20+
21+
/**
22+
* This MinimapElement's DOMStylesReader
23+
*/
24+
this.DOMStylesReader = new DOMStylesReader()
1925
}
26+
2027
/**
2128
* Initializes the canvas elements needed to perform the `Minimap` rendering.
2229
*/

spec/minimap-element-spec.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ describe('MinimapElement', () => {
213213
describe('when a hue-rotate filter is applied to a rgb color', () => {
214214
let [additionnalStyleNode] = []
215215
beforeEach(() => {
216-
minimapElement.DOMStylesReader.invalidateDOMStylesCache()
216+
minimapElement.CanvasDrawer.DOMStylesReader.invalidateDOMStylesCache()
217217

218218
additionnalStyleNode = document.createElement('style')
219219
additionnalStyleNode.textContent = `
@@ -232,7 +232,7 @@ describe('MinimapElement', () => {
232232
})
233233
runs(() => {
234234
nextAnimationFrame()
235-
expect(minimapElement.DOMStylesReader.retrieveStyleFromDom(['.editor'], 'color'), minimapElement.minimap.getTextEditorElement()).toEqual(`rgb(0, ${0x6d}, ${0x6d})`)
235+
expect(minimapElement.CanvasDrawer.DOMStylesReader.retrieveStyleFromDom(['.editor'], 'color'), minimapElement.minimap.getTextEditorElement()).toEqual(`rgb(0, ${0x6d}, ${0x6d})`)
236236
})
237237
})
238238
})
@@ -241,7 +241,7 @@ describe('MinimapElement', () => {
241241
let [additionnalStyleNode] = []
242242

243243
beforeEach(() => {
244-
minimapElement.DOMStylesReader.invalidateDOMStylesCache()
244+
minimapElement.CanvasDrawer.DOMStylesReader.invalidateDOMStylesCache()
245245

246246
additionnalStyleNode = document.createElement('style')
247247
additionnalStyleNode.textContent = `
@@ -260,7 +260,7 @@ describe('MinimapElement', () => {
260260
})
261261
runs(() => {
262262
nextAnimationFrame()
263-
expect(minimapElement.DOMStylesReader.retrieveStyleFromDom(['.editor'], 'color'), minimapElement.minimap.getTextEditorElement()).toEqual(`rgba(0, ${0x6d}, ${0x6d}, 0)`)
263+
expect(minimapElement.CanvasDrawer.DOMStylesReader.retrieveStyleFromDom(['.editor'], 'color'), minimapElement.minimap.getTextEditorElement()).toEqual(`rgba(0, ${0x6d}, ${0x6d}, 0)`)
264264
})
265265
})
266266
})
@@ -1195,7 +1195,7 @@ describe('MinimapElement', () => {
11951195
runs(() => {
11961196
nextAnimationFrame()
11971197
spyOn(minimapElement, 'requestForcedUpdate').andCallThrough()
1198-
spyOn(minimapElement.DOMStylesReader, 'invalidateDOMStylesCache').andCallThrough()
1198+
spyOn(minimapElement.CanvasDrawer.DOMStylesReader, 'invalidateDOMStylesCache').andCallThrough()
11991199

12001200
const styleNode = document.createElement('style')
12011201
styleNode.textContent = 'body{ color: #233 }'
@@ -1209,7 +1209,7 @@ describe('MinimapElement', () => {
12091209

12101210
it('forces a refresh with cache invalidation', () => {
12111211
expect(minimapElement.requestForcedUpdate).toHaveBeenCalled()
1212-
expect(minimapElement.DOMStylesReader.invalidateDOMStylesCache).toHaveBeenCalled()
1212+
expect(minimapElement.CanvasDrawer.DOMStylesReader.invalidateDOMStylesCache).toHaveBeenCalled()
12131213
})
12141214
})
12151215

0 commit comments

Comments
 (0)