diff --git a/atom.gyp b/atom.gyp index 38468016722..c2b1bebb709 100644 --- a/atom.gyp +++ b/atom.gyp @@ -105,8 +105,6 @@ 'browser/native_window_win.cc', 'browser/native_window_win.h', 'browser/native_window_observer.h', - 'browser/node_bindings_browser_win.cc', - 'browser/node_bindings_browser_win.h', 'browser/nsalert_synchronous_sheet.h', 'browser/nsalert_synchronous_sheet.mm', 'browser/window_list.cc', @@ -132,6 +130,8 @@ 'common/node_bindings.h', 'common/node_bindings_mac.cc', 'common/node_bindings_mac.h', + 'common/node_bindings_win.cc', + 'common/node_bindings_win.h', 'common/options_switches.cc', 'common/options_switches.h', 'common/platform_util.h', @@ -147,8 +147,6 @@ 'renderer/atom_render_view_observer.h', 'renderer/atom_renderer_client.cc', 'renderer/atom_renderer_client.h', - 'renderer/node_bindings_renderer_win.cc', - 'renderer/node_bindings_renderer_win.h', ], 'framework_sources': [ 'app/atom_library_main.cc', @@ -179,6 +177,10 @@ 'mac_framework_dirs': [ '<(atom_source_root)/frameworks', ], + 'includes': [ + # Rules for excluding e.g. foo_win.cc from the build on non-Windows. + 'filename_rules.gypi', + ], }, 'targets': [ { diff --git a/browser/atom_browser_main_parts.cc b/browser/atom_browser_main_parts.cc index a23cf36e65c..31fe68f34d5 100644 --- a/browser/atom_browser_main_parts.cc +++ b/browser/atom_browser_main_parts.cc @@ -20,7 +20,7 @@ AtomBrowserMainParts* AtomBrowserMainParts::self_ = NULL; AtomBrowserMainParts::AtomBrowserMainParts() : atom_bindings_(new AtomBrowserBindings), browser_(new Browser), - node_bindings_(NodeBindings::CreateInBrowser()) { + node_bindings_(NodeBindings::Create(true)) { DCHECK(!self_) << "Cannot have two AtomBrowserMainParts"; self_ = this; } diff --git a/browser/node_bindings_browser_win.cc b/browser/node_bindings_browser_win.cc deleted file mode 100644 index 17446c29b79..00000000000 --- a/browser/node_bindings_browser_win.cc +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2013 GitHub, Inc. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "browser/node_bindings_browser_win.h" - -namespace atom { - -NodeBindingsBrowserWin::NodeBindingsBrowserWin() - : NodeBindings(true) { -} - -NodeBindingsBrowserWin::~NodeBindingsBrowserWin() { -} - -void NodeBindingsBrowserWin::PrepareMessageLoop() { -} - -void NodeBindingsBrowserWin::RunMessageLoop() { -} - -// static -NodeBindings* NodeBindings::CreateInBrowser() { - return new NodeBindingsBrowserWin(); -} - -} // namespace atom diff --git a/browser/node_bindings_browser_win.h b/browser/node_bindings_browser_win.h deleted file mode 100644 index a20cc7230a7..00000000000 --- a/browser/node_bindings_browser_win.h +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2013 GitHub, Inc. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef ATOM_BROWSER_NODE_BINDINGS_BROWSER_WIN_H_ -#define ATOM_BROWSER_NODE_BINDINGS_BROWSER_WIN_H_ - -#include "base/compiler_specific.h" -#include "common/node_bindings.h" - -namespace atom { - -class NodeBindingsBrowserWin : public NodeBindings { - public: - NodeBindingsBrowserWin(); - virtual ~NodeBindingsBrowserWin(); - - virtual void PrepareMessageLoop() OVERRIDE; - virtual void RunMessageLoop() OVERRIDE; - - private: - DISALLOW_COPY_AND_ASSIGN(NodeBindingsBrowserWin); -}; - -} // namespace atom - -#endif // ATOM_BROWSER_NODE_BINDINGS_BROWSER_WIN_H_ diff --git a/common/node_bindings.h b/common/node_bindings.h index 3c2d20ae215..62d058658de 100644 --- a/common/node_bindings.h +++ b/common/node_bindings.h @@ -20,8 +20,7 @@ namespace atom { class NodeBindings { public: - static NodeBindings* CreateInBrowser(); - static NodeBindings* CreateInRenderer(); + static NodeBindings* Create(bool is_browser); virtual ~NodeBindings(); diff --git a/common/node_bindings_mac.cc b/common/node_bindings_mac.cc index 8aeb2518b8a..c092daeb3fb 100644 --- a/common/node_bindings_mac.cc +++ b/common/node_bindings_mac.cc @@ -45,13 +45,8 @@ void NodeBindingsMac::PollEvents() { } // static -NodeBindings* NodeBindings::CreateInBrowser() { - return new NodeBindingsMac(true); -} - -// static -NodeBindings* NodeBindings::CreateInRenderer() { - return new NodeBindingsMac(false); +NodeBindings* NodeBindings::Create(bool is_browser) { + return new NodeBindingsMac(is_browser); } } // namespace atom diff --git a/common/node_bindings_win.cc b/common/node_bindings_win.cc new file mode 100644 index 00000000000..b0eec1be2e2 --- /dev/null +++ b/common/node_bindings_win.cc @@ -0,0 +1,27 @@ +// Copyright (c) 2013 GitHub, Inc. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "common/node_bindings_win.h" + +#include "vendor/node/src/node.h" +#include "vendor/node/src/node_internals.h" + +namespace atom { + +NodeBindingsWin::NodeBindingsWin(bool is_browser) + : NodeBindings(is_browser) { +} + +NodeBindingsWin::~NodeBindingsWin() { +} + +void NodeBindingsWin::PollEvents() { +} + +// static +NodeBindings* NodeBindings::Create(bool is_browser) { + return new NodeBindingsWin(is_browser); +} + +} // namespace atom diff --git a/common/node_bindings_win.h b/common/node_bindings_win.h new file mode 100644 index 00000000000..7a512313da8 --- /dev/null +++ b/common/node_bindings_win.h @@ -0,0 +1,26 @@ +// Copyright (c) 2013 GitHub, Inc. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef ATOM_COMMON_NODE_BINDINGS_WIN_ +#define ATOM_COMMON_NODE_BINDINGS_WIN_ + +#include "base/compiler_specific.h" +#include "common/node_bindings.h" + +namespace atom { + +class NodeBindingsWin : public NodeBindings { + public: + explicit NodeBindingsWin(bool is_browser); + virtual ~NodeBindingsWin(); + + private: + virtual void PollEvents() OVERRIDE; + + DISALLOW_COPY_AND_ASSIGN(NodeBindingsWin); +}; + +} // namespace atom + +#endif // ATOM_COMMON_NODE_BINDINGS_WIN_ diff --git a/renderer/atom_renderer_client.cc b/renderer/atom_renderer_client.cc index a22f8a8f3db..36cb4052532 100644 --- a/renderer/atom_renderer_client.cc +++ b/renderer/atom_renderer_client.cc @@ -23,7 +23,7 @@ v8::Handle GetNodeContext() { } // namespace AtomRendererClient::AtomRendererClient() - : node_bindings_(NodeBindings::CreateInRenderer()) { + : node_bindings_(NodeBindings::Create(false)) { } AtomRendererClient::~AtomRendererClient() { diff --git a/renderer/node_bindings_renderer_win.cc b/renderer/node_bindings_renderer_win.cc deleted file mode 100644 index 9466732d255..00000000000 --- a/renderer/node_bindings_renderer_win.cc +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2013 GitHub, Inc. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "renderer/node_bindings_renderer_win.h" - -namespace atom { - -NodeBindingsRendererWin::NodeBindingsRendererWin() - : NodeBindings(false) { -} - -NodeBindingsRendererWin::~NodeBindingsRendererWin() { -} - -void NodeBindingsRendererWin::PrepareMessageLoop() { -} - -void NodeBindingsRendererWin::RunMessageLoop() { -} - -// static -NodeBindings* NodeBindings::CreateInRenderer() { - return new NodeBindingsRendererWin(); -} - -} // namespace atom diff --git a/renderer/node_bindings_renderer_win.h b/renderer/node_bindings_renderer_win.h deleted file mode 100644 index 884766fc61d..00000000000 --- a/renderer/node_bindings_renderer_win.h +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2013 GitHub, Inc. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef ATOM_RENDERER_NODE_BINDINGS_RENDERER_WIN_H_ -#define ATOM_RENDERER_NODE_BINDINGS_RENDERER_WIN_H_ - -#include "base/compiler_specific.h" -#include "common/node_bindings.h" - -namespace atom { - -class NodeBindingsRendererWin : public NodeBindings { - public: - NodeBindingsRendererWin(); - virtual ~NodeBindingsRendererWin(); - - virtual void PrepareMessageLoop() OVERRIDE; - virtual void RunMessageLoop() OVERRIDE; - - private: - DISALLOW_COPY_AND_ASSIGN(NodeBindingsRendererWin); -}; - -} // namespace atom - -#endif // ATOM_RENDERER_NODE_BINDINGS_RENDERER_WIN_H_