Skip to content

Commit cbf6207

Browse files
committed
Implements a toggle in dev mode keymap
1 parent f266109 commit cbf6207

File tree

5 files changed

+19
-6
lines changed

5 files changed

+19
-6
lines changed

keymaps/minimap.cson

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@
99
# https://atom.io/docs/latest/advanced/keymaps
1010
'.workspace':
1111
'ctrl-k ctrl-m': 'minimap:toggle'
12+
'ctrl-k ctrl-d': 'minimap:toggle-debug'

lib/minimap-view.coffee

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class MinimapView extends View
2424

2525
# VIEW CREATION/DESTRUCTION
2626

27-
constructor: (@paneView) ->
27+
constructor: (@paneView, @allowDebug) ->
2828
super
2929

3030
@scaleX = 0.2
@@ -35,6 +35,7 @@ class MinimapView extends View
3535
@transform @miniWrapper[0], @minimapScale
3636
# dragging's status
3737
@isPressed = false
38+
@miniEditorView.allowDebug = @allowDebug
3839

3940
initialize: ->
4041
@on 'mousewheel', @onMouseWheel
@@ -52,6 +53,7 @@ class MinimapView extends View
5253
@configs.theme = atom.config.get(themeProp) ? CONFIGS.theme
5354
@updateTheme()
5455

56+
5557
destroy: ->
5658
@off()
5759
@unsubscribe()

lib/minimap.coffee

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,21 @@ class Minimap
1111
# minimapViews object will never be set to null.
1212
active: false
1313

14+
# Does the minimap debug features are activated on toggle
15+
allowDebug: false
16+
1417
activate: ->
1518
atom.workspaceView.command 'minimap:toggle', => @toggle()
19+
atom.workspaceView.command 'minimap:toggle-debug', => @toggleDebug()
1620

1721
deactivate: ->
1822
view.destroy() for id, view of @minimapViews
1923
@eachPaneViewSubscription.off()
2024
@minimapViews = {}
2125
@emit('deactivated')
2226

23-
toggle: ->
27+
toggle: (debugMode=false) ->
28+
@allowDebug = debugMode
2429
if @active
2530
@deactivate()
2631
else
@@ -29,14 +34,16 @@ class Minimap
2934

3035
@active = not @active
3136

37+
toggleDebug: ->
38+
@toggle(true)
39+
3240
updateAllViews: ->
3341
view.onScrollViewResized() for id,view of @minimapViews
3442

3543
minimapForEditorView: (editorView) ->
3644
@minimapForPaneView(editorView.getPane())
3745

3846
minimapForPaneView: (paneView) -> @minimapForPane(paneView.model)
39-
4047
minimapForPane: (pane) -> @minimapViews[pane.id]
4148

4249
open: ->
@@ -46,7 +53,7 @@ class Minimap
4653
# the callback.
4754
@eachPaneViewSubscription = atom.workspaceView.eachPaneView (paneView) =>
4855
paneId = paneView.model.id
49-
view = new MinimapView(paneView)
56+
view = new MinimapView(paneView, @allowDebug)
5057
view.onActiveItemChanged(paneView.getActiveItem())
5158
@updateAllViews()
5259

lib/mixins/debug.coffee

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ Mixin = require 'mixto'
22

33
module.exports =
44
class Debug extends Mixin
5+
allowDebug: false
6+
57
log: (args...) ->
68
console.log.apply(console, args) if @inDevMode()
79

@@ -35,4 +37,4 @@ class Debug extends Mixin
3537
time = @logIntermediateTime(label)
3638
@benchmarkTimes.push(time)
3739

38-
inDevMode: -> atom.inDevMode()
40+
inDevMode: -> @allowDebug and atom.inDevMode()

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616
}
1717
],
1818
"activationEvents": [
19-
"minimap:toggle"
19+
"minimap:toggle",
20+
"minimap:toggle-debug"
2021
],
2122
"repository": "https://github.com/fundon/atom-minimap",
2223
"license": "MIT",

0 commit comments

Comments
 (0)