mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-01 17:23:59 +00:00
bcd8f8c970
In order to move print native dialog code to windows widget, this patch will create skeleton of PrintDialogService to windows widget. Toolkit code(i.e. nsIPrintingPrompotService) will call this PrintDialogService. Note that this PrintingDialogService suppose running on main process, so we should call this interface from main process(i.e. nsPrintingPromptService, not nsPrintingProxy). MozReview-Commit-ID: 3P6kac9I9W4 --HG-- extra : rebase_source : 5b5ecd104cf4cecd1b68a3d6d4b33aca9fea9548
327 lines
7.7 KiB
Python
327 lines
7.7 KiB
Python
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
|
|
# vim: set filetype=python:
|
|
# 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/.
|
|
|
|
with Files("**"):
|
|
BUG_COMPONENT = ("Core", "Widget")
|
|
|
|
with Files("crashtests/*1128214*"):
|
|
BUG_COMPONENT = ("Core", "Layout")
|
|
|
|
with Files("crashtests/*303901*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
with Files("crashtests/*380359*"):
|
|
BUG_COMPONENT = ("Core", "Widget")
|
|
|
|
with Files("reftests/**"):
|
|
BUG_COMPONENT = ("Core", "Widget: Cocoa")
|
|
|
|
with Files("reftests/*fallback*"):
|
|
BUG_COMPONENT = ("Core", "Layout: Form Controls")
|
|
|
|
with Files("*CompositorWidget*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
with Files("*Gfx*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
with Files("*WindowSurface*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
with Files("*FontRange*"):
|
|
BUG_COMPONENT = ("Core", "Widget: Cocoa")
|
|
|
|
toolkit = CONFIG['MOZ_WIDGET_TOOLKIT']
|
|
|
|
if toolkit in ('cocoa', 'android', 'uikit'):
|
|
DIRS += [toolkit]
|
|
|
|
if toolkit == 'windows':
|
|
DIRS += ['windows']
|
|
|
|
XPIDL_SOURCES += [
|
|
'nsIJumpListBuilder.idl',
|
|
'nsIJumpListItem.idl',
|
|
'nsIPrintSettingsWin.idl',
|
|
'nsITaskbarOverlayIconController.idl',
|
|
'nsITaskbarPreview.idl',
|
|
'nsITaskbarPreviewButton.idl',
|
|
'nsITaskbarPreviewController.idl',
|
|
'nsITaskbarProgress.idl',
|
|
'nsITaskbarTabPreview.idl',
|
|
'nsITaskbarWindowPreview.idl',
|
|
'nsIWindowsUIUtils.idl',
|
|
'nsIWinTaskbar.idl',
|
|
]
|
|
elif toolkit == 'cocoa':
|
|
XPIDL_SOURCES += [
|
|
'nsIMacDockSupport.idl',
|
|
'nsIMacWebAppUtils.idl',
|
|
'nsIStandaloneNativeMenu.idl',
|
|
'nsISystemStatusBar.idl',
|
|
'nsITaskbarProgress.idl',
|
|
]
|
|
EXPORTS += [
|
|
'nsINativeMenuService.h',
|
|
]
|
|
|
|
TEST_DIRS += ['tests']
|
|
|
|
DIRS += ['headless']
|
|
|
|
# Don't build the DSO under the 'build' directory as windows does.
|
|
#
|
|
# The DSOs get built in the toolkit dir itself. Do this so that
|
|
# multiple implementations of widget can be built on the same
|
|
# source tree.
|
|
#
|
|
if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
|
|
DIRS += ['gtk']
|
|
|
|
if CONFIG['MOZ_X11']:
|
|
DIRS += ['gtkxtbin']
|
|
|
|
XPIDL_SOURCES += [
|
|
'nsIAppShell.idl',
|
|
'nsIBaseWindow.idl',
|
|
'nsIBidiKeyboard.idl',
|
|
'nsIClipboard.idl',
|
|
'nsIClipboardDragDropHookList.idl',
|
|
'nsIClipboardDragDropHooks.idl',
|
|
'nsIClipboardHelper.idl',
|
|
'nsIClipboardOwner.idl',
|
|
'nsIColorPicker.idl',
|
|
'nsIDisplayInfo.idl',
|
|
'nsIDragService.idl',
|
|
'nsIDragSession.idl',
|
|
'nsIFilePicker.idl',
|
|
'nsIFormatConverter.idl',
|
|
'nsIGfxInfo.idl',
|
|
'nsIGfxInfoDebug.idl',
|
|
'nsIIdleService.idl',
|
|
'nsIIdleServiceInternal.idl',
|
|
'nsIPrinterEnumerator.idl',
|
|
'nsIPrintSession.idl',
|
|
'nsIPrintSettings.idl',
|
|
'nsIPrintSettingsService.idl',
|
|
'nsIScreen.idl',
|
|
'nsIScreenManager.idl',
|
|
'nsISound.idl',
|
|
'nsITransferable.idl',
|
|
]
|
|
|
|
XPIDL_MODULE = 'widget'
|
|
|
|
EXPORTS += [
|
|
'GfxDriverInfo.h',
|
|
'GfxInfoBase.h',
|
|
'GfxInfoCollector.h',
|
|
'InputData.h',
|
|
'nsBaseScreen.h',
|
|
'nsBaseWidget.h',
|
|
'nsIDeviceContextSpec.h',
|
|
'nsIKeyEventInPluginCallback.h',
|
|
'nsIPluginWidget.h',
|
|
'nsIPrintDialogService.h',
|
|
'nsIRollupListener.h',
|
|
'nsIWidget.h',
|
|
'nsIWidgetListener.h',
|
|
'nsWidgetInitData.h',
|
|
'nsWidgetsCID.h',
|
|
'PuppetWidget.h',
|
|
]
|
|
|
|
EXPORTS.mozilla += [
|
|
'BasicEvents.h',
|
|
'CommandList.h',
|
|
'ContentCache.h',
|
|
'ContentEvents.h',
|
|
'EventClassList.h',
|
|
'EventForwards.h',
|
|
'EventMessageList.h',
|
|
'FontRange.h',
|
|
'LookAndFeel.h',
|
|
'MiscEvents.h',
|
|
'MouseEvents.h',
|
|
'TextEventDispatcher.h',
|
|
'TextEventDispatcherListener.h',
|
|
'TextEvents.h',
|
|
'TextRange.h',
|
|
'TouchEvents.h',
|
|
'VsyncDispatcher.h',
|
|
'WidgetUtils.h',
|
|
]
|
|
|
|
EXPORTS.mozilla.widget += [
|
|
'CompositorWidget.h',
|
|
'IMEData.h',
|
|
'InProcessCompositorWidget.h',
|
|
'nsAutoRollup.h',
|
|
'PuppetBidiKeyboard.h',
|
|
'Screen.h',
|
|
'ScreenManager.h',
|
|
'WidgetMessageUtils.h',
|
|
'WindowSurface.h'
|
|
]
|
|
|
|
UNIFIED_SOURCES += [
|
|
'CompositorWidget.cpp',
|
|
'ContentCache.cpp',
|
|
'GfxDriverInfo.cpp',
|
|
'GfxInfoBase.cpp',
|
|
'GfxInfoCollector.cpp',
|
|
'GfxInfoWebGL.cpp',
|
|
'InProcessCompositorWidget.cpp',
|
|
'InputData.cpp',
|
|
'nsAutoRollup.cpp',
|
|
'nsBaseAppShell.cpp',
|
|
'nsBaseScreen.cpp',
|
|
'nsClipboardHelper.cpp',
|
|
'nsClipboardProxy.cpp',
|
|
'nsColorPickerProxy.cpp',
|
|
'nsContentProcessWidgetFactory.cpp',
|
|
'nsDragServiceProxy.cpp',
|
|
'nsFilePickerProxy.cpp',
|
|
'nsHTMLFormatConverter.cpp',
|
|
'nsIdleService.cpp',
|
|
'nsIWidgetListener.cpp',
|
|
'nsPrimitiveHelpers.cpp',
|
|
'nsPrintSettingsImpl.cpp',
|
|
'nsTransferable.cpp',
|
|
'nsXPLookAndFeel.cpp',
|
|
'PuppetBidiKeyboard.cpp',
|
|
'PuppetWidget.cpp',
|
|
'Screen.cpp',
|
|
'ScreenManager.cpp',
|
|
'SharedWidgetUtils.cpp',
|
|
'TextEventDispatcher.cpp',
|
|
'VsyncDispatcher.cpp',
|
|
'WidgetEventImpl.cpp',
|
|
'WidgetUtils.cpp',
|
|
]
|
|
|
|
if CONFIG['OS_ARCH'] == 'Linux':
|
|
EXPORTS.mozilla.widget += [
|
|
'LSBUtils.h'
|
|
]
|
|
SOURCES += [
|
|
'LSBUtils.cpp'
|
|
]
|
|
|
|
if CONFIG['MOZ_XUL'] and CONFIG['NS_PRINTING']:
|
|
EXPORTS += [
|
|
'nsDeviceContextSpecProxy.h',
|
|
'nsPrintOptionsImpl.h',
|
|
]
|
|
UNIFIED_SOURCES += [
|
|
'nsDeviceContextSpecProxy.cpp',
|
|
'nsPrintOptionsImpl.cpp',
|
|
'nsPrintSession.cpp',
|
|
]
|
|
|
|
# nsBaseWidget.cpp needs to be built separately because of name clashes in the OS X headers
|
|
# nsBaseDragService.cpp moved out of UNIFIED to fix xgill crash (bug 1259850) after moving widget/ContentHelper -> apz/util/TouchActionHelper
|
|
SOURCES += [
|
|
'nsBaseDragService.cpp',
|
|
'nsBaseWidget.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']:
|
|
EXPORTS.mozilla += [
|
|
'WidgetTraceEvent.h',
|
|
]
|
|
|
|
EXPORTS.ipc = ['nsGUIEventIPC.h']
|
|
|
|
if CONFIG['MOZ_X11']:
|
|
DIRS += ['x11']
|
|
UNIFIED_SOURCES += [
|
|
'GfxInfoX11.cpp'
|
|
]
|
|
SOURCES += [
|
|
'nsShmImage.cpp',
|
|
'WindowSurfaceX11SHM.cpp',
|
|
]
|
|
|
|
if toolkit == 'windows':
|
|
EXPORTS += [
|
|
'PluginWidgetProxy.h',
|
|
]
|
|
SOURCES += [
|
|
'PluginWidgetProxy.cpp',
|
|
]
|
|
|
|
if toolkit in ('cocoa', 'windows'):
|
|
UNIFIED_SOURCES += [
|
|
'nsBaseClipboard.cpp',
|
|
]
|
|
|
|
if toolkit in {'gtk2', 'gtk3', 'cocoa', 'windows',
|
|
'android', 'uikit'}:
|
|
UNIFIED_SOURCES += [
|
|
'nsBaseFilePicker.cpp',
|
|
]
|
|
|
|
if toolkit in ('gtk2', 'gtk3', 'windows', 'cocoa', 'android'):
|
|
UNIFIED_SOURCES += [
|
|
'nsNativeTheme.cpp',
|
|
]
|
|
if toolkit == 'gtk3':
|
|
XPIDL_SOURCES += [
|
|
'nsIApplicationChooser.idl',
|
|
]
|
|
|
|
DEFINES['MOZ_CROSS_PROCESS_IME'] = True
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/dom/base',
|
|
'/dom/ipc',
|
|
'/layout/base',
|
|
'/layout/forms',
|
|
'/layout/generic',
|
|
'/layout/painting',
|
|
'/layout/xul',
|
|
'/view',
|
|
'/widget',
|
|
'/widget/headless',
|
|
]
|
|
|
|
if toolkit == 'windows':
|
|
IPDL_SOURCES = [
|
|
'headless/HeadlessWidgetTypes.ipdlh',
|
|
'windows/PCompositorWidget.ipdl',
|
|
'windows/PlatformWidgetTypes.ipdlh',
|
|
]
|
|
elif 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT'] and CONFIG['MOZ_X11']:
|
|
IPDL_SOURCES = [
|
|
'gtk/PCompositorWidget.ipdl',
|
|
'gtk/PlatformWidgetTypes.ipdlh',
|
|
'headless/HeadlessWidgetTypes.ipdlh',
|
|
]
|
|
else:
|
|
IPDL_SOURCES = [
|
|
'headless/HeadlessWidgetTypes.ipdlh',
|
|
'PCompositorWidget.ipdl',
|
|
'PlatformWidgetTypes.ipdlh',
|
|
]
|
|
|
|
widget_dir = toolkit
|
|
if widget_dir in ('gtk3', 'gtk2'):
|
|
# gtk3 shares includes with gtk2
|
|
widget_dir = 'gtk'
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/widget/%s' % widget_dir,
|
|
]
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
if CONFIG['MOZ_ENABLE_D3D10_LAYER']:
|
|
DEFINES['MOZ_ENABLE_D3D10_LAYER'] = True
|
|
|
|
CXXFLAGS += CONFIG['TK_CFLAGS']
|