# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/WebKit/Source/core/core.gni")

blink_core_sources("frame") {
  sources = [
    "BarProp.cpp",
    "BarProp.h",
    "BrowserControls.cpp",
    "BrowserControls.h",
    "ContentSettingsClient.cpp",
    "ContentSettingsClient.h",
    "DOMTimer.cpp",
    "DOMTimer.h",
    "DOMTimerCoordinator.cpp",
    "DOMTimerCoordinator.h",
    "DOMVisualViewport.cpp",
    "DOMVisualViewport.h",
    "DOMWindow.cpp",
    "DOMWindow.h",
    "DOMWindowBase64.cpp",
    "DOMWindowBase64.h",
    "DOMWindowEventHandlers.h",
    "DOMWindowTimers.cpp",
    "DOMWindowTimers.h",
    "DeprecatedScheduleStyleRecalcDuringLayout.cpp",
    "DeprecatedScheduleStyleRecalcDuringLayout.h",
    "Deprecation.cpp",
    "Deprecation.h",
    "DeprecationReport.h",
    "DeviceSingleWindowEventController.cpp",
    "DeviceSingleWindowEventController.h",
    "EmbeddedContentView.h",
    "EventHandlerRegistry.cpp",
    "EventHandlerRegistry.h",
    "External.h",
    "Frame.cpp",
    "Frame.h",
    "FrameClient.h",
    "FrameConsole.cpp",
    "FrameConsole.h",
    "FrameLifecycle.cpp",
    "FrameLifecycle.h",
    "FrameOwner.h",
    "FrameSerializer.cpp",
    "FrameSerializer.h",
    "FrameTypes.h",
    "FrameView.h",
    "FrameViewAutoSizeInfo.cpp",
    "FrameViewAutoSizeInfo.h",
    "FullscreenController.cpp",
    "FullscreenController.h",
    "History.cpp",
    "History.h",
    "HostsUsingFeatures.cpp",
    "HostsUsingFeatures.h",
    "Intervention.cpp",
    "Intervention.h",
    "InterventionReport.h",
    "LayoutSubtreeRootList.cpp",
    "LayoutSubtreeRootList.h",
    "LocalDOMWindow.cpp",
    "LocalDOMWindow.h",
    "LocalFrame.cpp",
    "LocalFrame.h",
    "LocalFrameClient.h",
    "LocalFrameView.cpp",
    "LocalFrameView.h",
    "Location.cpp",
    "Location.h",
    "MessageReport.h",
    "Navigator.cpp",
    "Navigator.h",
    "NavigatorConcurrentHardware.cpp",
    "NavigatorConcurrentHardware.h",
    "NavigatorID.cpp",
    "NavigatorID.h",
    "NavigatorLanguage.cpp",
    "NavigatorLanguage.h",
    "NavigatorOnLine.h",
    "OpenedFrameTracker.cpp",
    "OpenedFrameTracker.h",
    "PageScaleConstraints.cpp",
    "PageScaleConstraints.h",
    "PageScaleConstraintsSet.cpp",
    "PageScaleConstraintsSet.h",
    "PausableScriptExecutor.cpp",
    "PausableScriptExecutor.h",
    "PausableTimer.cpp",
    "PausableTimer.h",
    "PerformanceMonitor.cpp",
    "PerformanceMonitor.h",
    "PlatformEventController.cpp",
    "PlatformEventController.h",
    "PlatformEventDispatcher.cpp",
    "PlatformEventDispatcher.h",
    "RemoteDOMWindow.cpp",
    "RemoteDOMWindow.h",
    "RemoteFrame.cpp",
    "RemoteFrame.h",
    "RemoteFrameClient.h",
    "RemoteFrameClientImpl.cpp",
    "RemoteFrameClientImpl.h",
    "RemoteFrameOwner.cpp",
    "RemoteFrameOwner.h",
    "RemoteFrameView.cpp",
    "RemoteFrameView.h",
    "Report.h",
    "ReportBody.h",
    "ReportingContext.cpp",
    "ReportingContext.h",
    "ReportingObserver.cpp",
    "ReportingObserver.h",
    "ResizeViewportAnchor.cpp",
    "ResizeViewportAnchor.h",
    "RootFrameViewport.cpp",
    "RootFrameViewport.h",
    "RotationViewportAnchor.cpp",
    "RotationViewportAnchor.h",
    "Screen.cpp",
    "Screen.h",
    "ScreenOrientationController.cpp",
    "ScreenOrientationController.h",
    "Settings.cpp",
    "Settings.h",
    "SettingsDelegate.cpp",
    "SettingsDelegate.h",
    "SmartClip.cpp",
    "SmartClip.h",
    "UseCounter.cpp",
    "UseCounter.h",
    "UserActivationState.cpp",
    "UserActivationState.h",
    "VisualViewport.cpp",
    "VisualViewport.h",
    "WebFeature.h",
    "WebFeatureForward.h",
    "WebFrameSerializerImpl.cpp",
    "WebFrameSerializerImpl.h",
    "WebFrameWidgetBase.cpp",
    "WebFrameWidgetBase.h",
    "WebFrameWidgetImpl.cpp",
    "WebFrameWidgetImpl.h",
    "WebLocalFrameImpl.cpp",
    "WebLocalFrameImpl.h",
    "WebViewFrameWidget.cpp",
    "WebViewFrameWidget.h",
    "csp/CSPDirective.h",
    "csp/CSPDirectiveList.cpp",
    "csp/CSPDirectiveList.h",
    "csp/CSPSource.cpp",
    "csp/CSPSource.h",
    "csp/ContentSecurityPolicy.cpp",
    "csp/ContentSecurityPolicy.h",
    "csp/MediaListDirective.cpp",
    "csp/MediaListDirective.h",
    "csp/SourceListDirective.cpp",
    "csp/SourceListDirective.h",
  ]

  configs += [
    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    "//build/config/compiler:no_size_t_to_int_warning",
  ]
}
