mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 23:31:56 +00:00
e46f0d7370
Implemnt notification backend by Windows Toast API that is from Windows 8+. Original patch is me and add some features by eoger. Differential Revision: https://phabricator.services.mozilla.com/D3003 --HG-- extra : rebase_source : 0368f269e9adb2347621500b7c9d62c172a71e39
184 lines
4.3 KiB
Python
184 lines
4.3 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: Win32")
|
|
|
|
with Files("*CompositorWidget*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
TEST_DIRS += ['tests']
|
|
|
|
EXPORTS += [
|
|
'nsdefs.h',
|
|
'WindowHook.h',
|
|
'WinUtils.h',
|
|
]
|
|
|
|
EXPORTS.mozilla += [
|
|
'WinHeaderOnlyUtils.h',
|
|
]
|
|
|
|
EXPORTS.mozilla.widget += [
|
|
'AudioSession.h',
|
|
'CompositorWidgetChild.h',
|
|
'CompositorWidgetParent.h',
|
|
'InProcessWinCompositorWidget.h',
|
|
'PDFiumChild.h',
|
|
'PDFiumEngineShim.h',
|
|
'PDFiumParent.h',
|
|
'PDFiumProcessChild.h',
|
|
'PDFiumProcessParent.h',
|
|
'PDFViaEMFPrintHelper.h',
|
|
'WinCompositorWidget.h',
|
|
'WinCompositorWindowThread.h',
|
|
'WindowsEMF.h',
|
|
'WinMessages.h',
|
|
'WinModifierKeyState.h',
|
|
'WinNativeEventData.h',
|
|
]
|
|
|
|
UNIFIED_SOURCES += [
|
|
'AudioSession.cpp',
|
|
'CompositorWidgetChild.cpp',
|
|
'CompositorWidgetParent.cpp',
|
|
'GfxInfo.cpp',
|
|
'IEnumFE.cpp',
|
|
'IMMHandler.cpp',
|
|
'InkCollector.cpp',
|
|
'InProcessWinCompositorWidget.cpp',
|
|
'JumpListItem.cpp',
|
|
'KeyboardLayout.cpp',
|
|
'LSPAnnotator.cpp',
|
|
'nsAppShell.cpp',
|
|
'nsClipboard.cpp',
|
|
'nsColorPicker.cpp',
|
|
'nsDataObj.cpp',
|
|
'nsDataObjCollection.cpp',
|
|
'nsDragService.cpp',
|
|
'nsIdleServiceWin.cpp',
|
|
'nsImageClipboard.cpp',
|
|
'nsLookAndFeel.cpp',
|
|
'nsNativeDragSource.cpp',
|
|
'nsNativeDragTarget.cpp',
|
|
'nsNativeThemeWin.cpp',
|
|
'nsSound.cpp',
|
|
'nsToolkit.cpp',
|
|
'nsUXThemeData.cpp',
|
|
'nsWindow.cpp',
|
|
'nsWindowBase.cpp',
|
|
'nsWindowDbg.cpp',
|
|
'nsWindowGfx.cpp',
|
|
'nsWinGesture.cpp',
|
|
'ScreenHelperWin.cpp',
|
|
'TaskbarPreview.cpp',
|
|
'TaskbarPreviewButton.cpp',
|
|
'TaskbarTabPreview.cpp',
|
|
'TaskbarWindowPreview.cpp',
|
|
'WidgetTraceEvent.cpp',
|
|
'WinCompositorWindowThread.cpp',
|
|
'WindowHook.cpp',
|
|
'WinIMEHandler.cpp',
|
|
'WinPointerEvents.cpp',
|
|
'WinTaskbar.cpp',
|
|
'WinTextEventDispatcherListener.cpp',
|
|
'WinUtils.cpp',
|
|
]
|
|
|
|
# The following files cannot be built in unified mode because of name clashes.
|
|
SOURCES += [
|
|
'JumpListBuilder.cpp',
|
|
'nsBidiKeyboard.cpp',
|
|
'nsFilePicker.cpp',
|
|
'nsWidgetFactory.cpp',
|
|
'WinCompositorWidget.cpp',
|
|
'WindowsUIUtils.cpp',
|
|
'WinMouseScrollHandler.cpp',
|
|
]
|
|
|
|
# Needs INITGUID and we don't allow INITGUID in unified sources since bug 970429.
|
|
SOURCES += [
|
|
'InputDeviceUtils.cpp',
|
|
]
|
|
|
|
if CONFIG['NS_PRINTING']:
|
|
UNIFIED_SOURCES += [
|
|
'nsDeviceContextSpecWin.cpp',
|
|
'nsPrintDialogUtil.cpp',
|
|
'nsPrintDialogWin.cpp',
|
|
'nsPrintSettingsServiceWin.cpp',
|
|
'nsPrintSettingsWin.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_ENABLE_SKIA_PDF']:
|
|
DIRS += ['/modules/pdfium']
|
|
IPDL_SOURCES += [
|
|
'PPDFium.ipdl',
|
|
]
|
|
UNIFIED_SOURCES += [
|
|
'PDFiumChild.cpp',
|
|
'PDFiumEngineShim.cpp',
|
|
'PDFiumParent.cpp',
|
|
'PDFiumProcessChild.cpp',
|
|
'PDFiumProcessParent.cpp',
|
|
'PDFViaEMFPrintHelper.cpp',
|
|
'WindowsEMF.cpp',
|
|
]
|
|
|
|
if CONFIG['NS_ENABLE_TSF']:
|
|
SOURCES += [
|
|
'TSFTextStore.cpp',
|
|
]
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
if CONFIG['MOZ_ENABLE_SKIA_PDF']:
|
|
LOCAL_INCLUDES += [
|
|
'/gfx/skia/skia/include/config',
|
|
'/gfx/skia/skia/include/core',
|
|
'/modules/pdfium/pdfium/public',
|
|
]
|
|
TEST_DIRS += ['gtest']
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/layout/forms',
|
|
'/layout/generic',
|
|
'/layout/xul',
|
|
'/toolkit/xre',
|
|
'/widget',
|
|
'/widget/headless',
|
|
'/xpcom/base',
|
|
]
|
|
|
|
DEFINES['MOZ_UNICODE'] = True
|
|
|
|
for var in ('MOZ_ENABLE_D3D10_LAYER'):
|
|
if CONFIG[var]:
|
|
DEFINES[var] = True
|
|
|
|
RESFILE = 'widget.res'
|
|
|
|
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
|
|
|
OS_LIBS += [
|
|
'rpcrt4',
|
|
]
|
|
|
|
if CONFIG['CC_TYPE'] in ('msvc', 'clang-cl'):
|
|
SOURCES += [
|
|
'ToastNotification.cpp',
|
|
'ToastNotificationHandler.cpp',
|
|
]
|
|
# C5038: Suppress initializer list order warnings from wrl.h
|
|
SOURCES['ToastNotification.cpp'].flags += ['-wd5038']
|
|
SOURCES['ToastNotificationHandler.cpp'].flags += ['-wd5038']
|
|
SOURCES['WindowsUIUtils.cpp'].flags += ['-wd5038']
|
|
|
|
if CONFIG['CC_TYPE'] == 'clang-cl':
|
|
AllowCompilerWarnings() # workaround for bug 1090497
|