From 8e6cef458c8267d7f1ed0f5b8a0557ff76b0af3e Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Tue, 6 Dec 2016 17:29:49 +0100 Subject: [PATCH] Revert "Flush DOM before displaying context menu" --- src/context-menu-manager.coffee | 4 +--- src/main-process/atom-window.coffee | 10 +++++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/context-menu-manager.coffee b/src/context-menu-manager.coffee index 5f993eaa1..4dc54cede 100644 --- a/src/context-menu-manager.coffee +++ b/src/context-menu-manager.coffee @@ -4,7 +4,6 @@ fs = require 'fs-plus' {calculateSpecificity, validateSelector} = require 'clear-cut' {Disposable} = require 'event-kit' {remote} = require 'electron' -ipcHelpers = require './ipc-helpers' MenuHelpers = require './menu-helpers' platformContextMenu = require('../package.json')?._atomMenu?['context-menu'] @@ -201,8 +200,7 @@ class ContextMenuManager menuTemplate = @templateForEvent(event) return unless menuTemplate?.length > 0 - - ipcHelpers.call('window-method', 'openContextMenu', menuTemplate) + remote.getCurrentWindow().emit('context-menu', menuTemplate) return clear: -> diff --git a/src/main-process/atom-window.coffee b/src/main-process/atom-window.coffee index 09b6bff9c..3c163ba25 100644 --- a/src/main-process/atom-window.coffee +++ b/src/main-process/atom-window.coffee @@ -3,7 +3,6 @@ path = require 'path' fs = require 'fs' url = require 'url' {EventEmitter} = require 'events' -ContextMenu = require './context-menu' module.exports = class AtomWindow @@ -101,8 +100,11 @@ class AtomWindow hasProjectPath: -> @getLoadSettings().initialPaths?.length > 0 - openContextMenu: (menuTemplate) -> - new ContextMenu(menuTemplate, this) + setupContextMenu: -> + ContextMenu = require './context-menu' + + @browserWindow.on 'context-menu', (menuTemplate) => + new ContextMenu(menuTemplate, this) containsPaths: (paths) -> for pathToCheck in paths @@ -164,6 +166,8 @@ class AtomWindow unless url is @browserWindow.webContents.getURL() event.preventDefault() + @setupContextMenu() + if @isSpec # Spec window's web view should always have focus @browserWindow.on 'blur', =>