diff --git a/spec/context-menu-manager-spec.coffee b/spec/context-menu-manager-spec.coffee index 4cf33acc6..ddced8452 100644 --- a/spec/context-menu-manager-spec.coffee +++ b/spec/context-menu-manager-spec.coffee @@ -5,7 +5,7 @@ describe "ContextMenuManager", -> beforeEach -> {resourcePath} = atom.getLoadSettings() - contextMenu = new ContextMenuManager({resourcePath}) + contextMenu = new ContextMenuManager({resourcePath, keymapManager: atom.keymaps}) parent = document.createElement("div") child = document.createElement("div") diff --git a/src/atom.coffee b/src/atom.coffee index ee0efda62..2b6fcbc99 100644 --- a/src/atom.coffee +++ b/src/atom.coffee @@ -192,6 +192,9 @@ class Atom extends Model styleManager: @styles, notificationManager: @notifications, viewRegistry: @views }) + ContextMenuManager = require './context-menu-manager' + @contextMenu = new ContextMenuManager({resourcePath, devMode, keymapManager: @keymaps}) + reset: -> @config.reset() @@ -230,7 +233,6 @@ class Atom extends Model Clipboard = require './clipboard' GrammarRegistry = require './grammar-registry' - ContextMenuManager = require './context-menu-manager' MenuManager = require './menu-manager' {devMode, safeMode, resourcePath} = @getLoadSettings() configDirPath = @getConfigDirPath() @@ -248,7 +250,6 @@ class Atom extends Model @registerViewProviders() document.head.appendChild(new StylesElement) - @contextMenu = new ContextMenuManager({resourcePath, devMode}) @menu = new MenuManager({resourcePath}) @clipboard = new Clipboard() @grammars = @deserializers.deserialize(@state.grammars ? @state.syntax) ? new GrammarRegistry() diff --git a/src/context-menu-manager.coffee b/src/context-menu-manager.coffee index 0ca005d8a..869076beb 100644 --- a/src/context-menu-manager.coffee +++ b/src/context-menu-manager.coffee @@ -4,6 +4,7 @@ CSON = require 'season' fs = require 'fs-plus' {calculateSpecificity, validateSelector} = require 'clear-cut' {Disposable} = require 'event-kit' +remote = require 'remote' MenuHelpers = require './menu-helpers' platformContextMenu = require('../package.json')?._atomMenu?['context-menu'] @@ -40,11 +41,11 @@ platformContextMenu = require('../package.json')?._atomMenu?['context-menu'] # {::add} for more information. module.exports = class ContextMenuManager - constructor: ({@resourcePath, @devMode}) -> + constructor: ({@resourcePath, @devMode, @keymapManager}) -> @definitions = {'.overlayer': []} # TODO: Remove once color picker package stops touching private data @clear() - atom.keymaps.onDidLoadBundledKeymaps => @loadPlatformItems() + @keymapManager.onDidLoadBundledKeymaps => @loadPlatformItems() loadPlatformItems: -> if platformContextMenu? @@ -175,7 +176,7 @@ class ContextMenuManager menuTemplate = @templateForEvent(event) return unless menuTemplate?.length > 0 - atom.getCurrentWindow().emit('context-menu', menuTemplate) + remote.getCurrentWindow().emit('context-menu', menuTemplate) return clear: ->