# Copyright 2014 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("//tools/grit/grit_rule.gni")

group("test_support") {
  deps = [
    "//sky/engine/web:test_support",
  ]
}

source_set("platform_headers") {
  public = [
    "platform/Platform.h",
    "platform/ServiceProvider.h",
    "platform/WebArrayBuffer.h",
    "platform/WebBlendMode.h",
    "platform/WebCString.h",
    "platform/WebCallbacks.h",
    "platform/WebCanvas.h",
    "platform/WebClipboard.h",
    "platform/WebColor.h",
    "platform/WebCommon.h",
    "platform/WebCompositeAndReadbackAsyncCallback.h",
    "platform/WebCompositorAnimation.h",
    "platform/WebCompositorAnimationCurve.h",
    "platform/WebCompositorAnimationDelegate.h",
    "platform/WebCompositorOutputSurface.h",
    "platform/WebCompositorSupport.h",
    "platform/WebContentLayer.h",
    "platform/WebContentLayerClient.h",
    "platform/WebConvertableToTraceFormat.h",
    "platform/WebCursorInfo.h",
    "platform/WebData.h",
    "platform/WebDiscardableMemory.h",
    "platform/WebExternalBitmap.h",
    "platform/WebExternalTextureLayer.h",
    "platform/WebExternalTextureLayerClient.h",
    "platform/WebExternalTextureMailbox.h",
    "platform/WebFallbackThemeEngine.h",
    "platform/WebFilterAnimationCurve.h",
    "platform/WebFilterKeyframe.h",
    "platform/WebFilterOperations.h",
    "platform/WebFlingAnimator.h",
    "platform/WebFloatAnimationCurve.h",
    "platform/WebFloatKeyframe.h",
    "platform/WebFloatPoint.h",
    "platform/WebFloatPoint3D.h",
    "platform/WebFloatRect.h",
    "platform/WebFloatSize.h",
    "platform/WebGestureCurve.h",
    "platform/WebGestureCurveTarget.h",
    "platform/WebGestureDevice.h",
    "platform/WebGraphicsContext3D.h",
    "platform/WebGraphicsContext3DProvider.h",
    "platform/WebHTTPBody.h",
    "platform/WebHTTPHeaderVisitor.h",
    "platform/WebHTTPLoadInfo.h",
    "platform/WebImage.h",
    "platform/WebImageLayer.h",
    "platform/WebLayer.h",
    "platform/WebLayerScrollClient.h",
    "platform/WebLayerTreeView.h",
    "platform/WebLocalizedString.h",
    "platform/WebNonCopyable.h",
    "platform/WebPoint.h",
    "platform/WebPrivateOwnPtr.h",
    "platform/WebPrivatePtr.h",
    "platform/WebRect.h",
    "platform/WebReferrerPolicy.h",
    "platform/WebRenderingStats.h",
    "platform/WebScreenInfo.h",
    "platform/WebScreenOrientationType.h",
    "platform/WebSelectionBound.h",
    "platform/WebSize.h",
    "platform/WebString.h",
    "platform/WebThread.h",
    "platform/WebTransformAnimationCurve.h",
    "platform/WebTransformKeyframe.h",
    "platform/WebTransformOperations.h",
    "platform/WebURL.h",
    "platform/WebURLError.h",
    "platform/WebURLLoadTiming.h",
    "platform/WebURLLoader.h",
    "platform/WebURLLoaderClient.h",
    "platform/WebURLRequest.h",
    "platform/WebURLResponse.h",
    "platform/WebUnitTestSupport.h",
    "platform/WebVector.h",
    "platform/android/WebSandboxSupport.h",
    "platform/linux/WebFallbackFont.h",
    "platform/linux/WebFontInfo.h",
    "platform/linux/WebFontRenderStyle.h",
    "platform/linux/WebSandboxSupport.h",
  ]
}

source_set("web_headers") {
  public = [
    "web/Sky.h",
    "web/WebActiveWheelFlingParameters.h",
    "web/WebArrayBufferConverter.h",
    "web/WebArrayBufferView.h",
    "web/WebBeginFrameArgs.h",
    "web/WebCache.h",
    "web/WebCachedURLRequest.h",
    "web/WebCompositionUnderline.h",
    "web/WebConsoleMessage.h",
    "web/WebContentDetectionResult.h",
    "web/WebCustomElement.h",
    "web/WebDocument.h",
    "web/WebElement.h",
    "web/WebExceptionCode.h",
    "web/WebFont.h",
    "web/WebFontDescription.h",
    "web/WebFrame.h",
    "web/WebFrameClient.h",
    "web/WebGlyphCache.h",
    "web/WebHitTestResult.h",
    "web/WebImageCache.h",
    "web/WebImageDecoder.h",
    "web/WebInputEvent.h",
    "web/WebLeakDetector.h",
    "web/WebLocalFrame.h",
    "web/WebMemoryUsageInfo.h",
    "web/WebNavigationPolicy.h",
    "web/WebNavigationType.h",
    "web/WebNavigatorContentUtilsClient.h",
    "web/WebNode.h",
    "web/WebPageVisibilityState.h",
    "web/WebRange.h",
    "web/WebRuntimeFeatures.h",
    "web/WebScopedUserGesture.h",
    "web/WebScriptBindings.h",
    "web/WebScriptController.h",
    "web/WebScriptSource.h",
    "web/WebSettings.h",
    "web/WebSpellCheckClient.h",
    "web/WebTestingSupport.h",
    "web/WebTextAffinity.h",
    "web/WebTextCheckingCompletion.h",
    "web/WebTextCheckingResult.h",
    "web/WebTextCheckingType.h",
    "web/WebTextDecorationType.h",
    "web/WebTextDirection.h",
    "web/WebTextInputInfo.h",
    "web/WebTextInputType.h",
    "web/WebTextRun.h",
    "web/WebTouchAction.h",
    "web/WebTouchPoint.h",
    "web/WebURLLoaderOptions.h",
    "web/WebUserGestureIndicator.h",
    "web/WebUserGestureToken.h",
    "web/WebView.h",
    "web/WebViewClient.h",
    "web/WebWidget.h",
    "web/WebWidgetClient.h",
    "web/linux/WebFontRendering.h",
  ]
}
