1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 BUG_COMPONENT = ("Core", "Widget: Win32")
9 SCHEDULES.exclusive = ["windows"]
11 with Files("*CompositorWidget*"):
12 BUG_COMPONENT = ("Core", "Graphics")
14 with Files("*IMEHandler*"):
15 BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
17 with Files("*IMMHandler*"):
18 BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
20 with Files("*KeyboardLayout*"):
21 BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
24 BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
26 with Files("*TSFTextStore*"):
27 BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
33 TEST_DIRS += ["tests"]
43 "ShellHeaderOnlyUtils.h",
44 "ToastNotificationHeaderOnlyUtils.h",
45 "UrlmonHeaderOnlyUtils.h",
48 "WinHeaderOnlyUtils.h",
51 EXPORTS.mozilla.widget += [
53 "CompositorWidgetChild.h",
54 "CompositorWidgetParent.h",
55 "InProcessWinCompositorWidget.h",
57 "nsWindowLoggedMessages.h",
58 "WinCompositorWidget.h",
59 "WinCompositorWindowThread.h",
61 "WindowsSMTCProvider.h",
64 "WinModifierKeyState.h",
67 "WinWindowOcclusionTracker.h",
72 "CompositorWidgetChild.cpp",
73 "DirectManipulationOwner.cpp",
77 "JumpListBuilder.cpp",
79 "LegacyJumpListItem.cpp",
85 "nsDataObjCollection.cpp",
88 "nsNativeDragSource.cpp",
89 "nsNativeDragTarget.cpp",
90 "nsNativeThemeWin.cpp",
93 "nsUserIdleServiceWin.cpp",
98 "nsWindowLoggedMessages.cpp",
99 "nsWindowTaskbarConcealer.cpp",
101 "OSKTabTipManager.cpp",
103 "RemoteBackbuffer.cpp",
104 "ScreenHelperWin.cpp",
105 "SystemStatusBar.cpp",
106 "TaskbarPreview.cpp",
107 "TaskbarPreviewButton.cpp",
108 "TaskbarTabPreview.cpp",
109 "TaskbarWindowPreview.cpp",
110 "WidgetTraceEvent.cpp",
111 "WinCompositorWindowThread.cpp",
113 "WindowsConsole.cpp",
114 "WinEventObserver.cpp",
116 "WinPointerEvents.cpp",
119 "WinTextEventDispatcherListener.cpp",
121 "WinWindowOcclusionTracker.cpp",
124 # The following files cannot be built in unified mode because of name clashes.
126 "CompositorWidgetParent.cpp",
127 "InProcessWinCompositorWidget.cpp",
128 "LegacyJumpListBuilder.cpp",
129 "MediaKeysEventSourceFactory.cpp",
130 "nsBidiKeyboard.cpp",
133 "nsWidgetFactory.cpp",
134 "OSKInputPaneManager.cpp",
135 "WinCompositorWidget.cpp",
136 "WindowsSMTCProvider.cpp",
137 "WindowsUIUtils.cpp",
138 "WinMouseScrollHandler.cpp",
141 # Needs INITGUID and we don't allow INITGUID in unified sources since bug 970429.
143 "InputDeviceUtils.cpp",
147 if CONFIG["NS_PRINTING"]:
149 "nsDeviceContextSpecWin.cpp",
150 "nsPrintDialogWin.cpp",
152 "nsPrintSettingsServiceWin.cpp",
153 "nsPrintSettingsWin.cpp",
156 "nsPrintDialogUtil.cpp",
159 if CONFIG["MOZ_ENABLE_SKIA_PDF"]:
168 include("/ipc/chromium/chromium-config.mozbuild")
170 FINAL_LIBRARY = "xul"
172 if CONFIG["MOZ_ENABLE_SKIA_PDF"]:
173 LOCAL_INCLUDES += CONFIG["SKIA_INCLUDES"]
176 "/gfx/cairo/cairo/src",
181 "/toolkit/components/jsoncpp/include",
188 DEFINES["MOZ_UNICODE"] = True
189 DEFINES["MOZ_APP_NAME"] = '"%s"' % CONFIG["MOZ_APP_NAME"]
190 # Turn `firefox` into `Firefox`.
191 DEFINES["MOZ_TOAST_APP_NAME"] = '"%s"' % CONFIG["MOZ_APP_NAME"].title()
193 for var in ("MOZ_ENABLE_D3D10_LAYER",):
207 # mingw is missing Windows toast notification definitions.
208 if CONFIG["CC_TYPE"] == "clang-cl":
210 "ToastNotification.cpp",
211 "ToastNotificationHandler.cpp",
214 SPHINX_TREES["/widget/windows"] = "docs"