diff -r 000000000000 -r 6474c204b198 widget/xpwidgets/nsContentProcessWidgetFactory.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/widget/xpwidgets/nsContentProcessWidgetFactory.cpp Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* vim:expandtab:shiftwidth=4:tabstop=4: + */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "mozilla/ModuleUtils.h" +#include "nsWidgetsCID.h" +#include "nsClipboardProxy.h" +#include "nsColorPickerProxy.h" +#include "nsFilePickerProxy.h" + +using namespace mozilla; + +#ifndef MOZ_B2G + +NS_GENERIC_FACTORY_CONSTRUCTOR(nsClipboardProxy) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsColorPickerProxy) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsFilePickerProxy) + +NS_DEFINE_NAMED_CID(NS_CLIPBOARD_CID); +NS_DEFINE_NAMED_CID(NS_COLORPICKER_CID); +NS_DEFINE_NAMED_CID(NS_FILEPICKER_CID); + +static const mozilla::Module::CIDEntry kWidgetCIDs[] = { + { &kNS_CLIPBOARD_CID, false, nullptr, nsClipboardProxyConstructor, + Module::CONTENT_PROCESS_ONLY }, + { &kNS_COLORPICKER_CID, false, nullptr, nsColorPickerProxyConstructor, + Module::CONTENT_PROCESS_ONLY }, + { &kNS_FILEPICKER_CID, false, nullptr, nsFilePickerProxyConstructor, + Module::CONTENT_PROCESS_ONLY }, + { nullptr } +}; + +static const mozilla::Module::ContractIDEntry kWidgetContracts[] = { + { "@mozilla.org/widget/clipboard;1", &kNS_CLIPBOARD_CID, Module::CONTENT_PROCESS_ONLY }, + { "@mozilla.org/colorpicker;1", &kNS_COLORPICKER_CID, Module::CONTENT_PROCESS_ONLY }, + { "@mozilla.org/filepicker;1", &kNS_FILEPICKER_CID, Module::CONTENT_PROCESS_ONLY }, + { nullptr } +}; + +static const mozilla::Module kWidgetModule = { + mozilla::Module::kVersion, + kWidgetCIDs, + kWidgetContracts +}; + +NSMODULE_DEFN(nsContentProcessWidgetModule) = &kWidgetModule; + +#endif /* MOZ_B2G */