Files
atom/packages/git-diff/lib/main.js
2018-09-06 14:31:10 -07:00

29 lines
732 B
JavaScript

const GitDiffView = require('./git-diff-view')
const DiffListView = require('./diff-list-view')
let diffListView = null
module.exports = {
activate () {
const watchedEditors = new WeakSet()
atom.workspace.observeTextEditors(editor => {
if (watchedEditors.has(editor)) return
new GitDiffView(editor).start()
atom.commands.add(atom.views.getView(editor), 'git-diff:toggle-diff-list', () => {
if (diffListView == null) diffListView = new DiffListView()
diffListView.toggle()
})
watchedEditors.add(editor)
editor.onDidDestroy(() => watchedEditors.delete(editor))
})
},
deactivate () {
if (diffListView) diffListView.destroy()
diffListView = null
}
}