diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/platform/PlatformScreen.h | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WebCore/platform/PlatformScreen.h')
-rw-r--r-- | Source/WebCore/platform/PlatformScreen.h | 65 |
1 files changed, 39 insertions, 26 deletions
diff --git a/Source/WebCore/platform/PlatformScreen.h b/Source/WebCore/platform/PlatformScreen.h index a24edd791..e28ff1995 100644 --- a/Source/WebCore/platform/PlatformScreen.h +++ b/Source/WebCore/platform/PlatformScreen.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. + * Copyright (C) 2006 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -10,10 +10,10 @@ * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR @@ -23,12 +23,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef PlatformScreen_h -#define PlatformScreen_h +#pragma once -#include <wtf/Vector.h> - -#if PLATFORM(MAC) && !PLATFORM(IOS) +#if PLATFORM(MAC) OBJC_CLASS NSScreen; OBJC_CLASS NSWindow; #ifdef NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES @@ -40,32 +37,48 @@ typedef struct _NSPoint NSPoint; #endif #endif -typedef uint32_t PlatformDisplayID; - -typedef WTF::Vector<char> ColorProfile; +#if PLATFORM(IOS) +OBJC_CLASS UIScreen; +#endif namespace WebCore { - class FloatRect; - class Widget; +class FloatRect; +class FloatSize; +class Widget; + +using PlatformDisplayID = uint32_t; + +int screenDepth(Widget*); +int screenDepthPerComponent(Widget*); +bool screenIsMonochrome(Widget*); + +bool screenHasInvertedColors(); + +FloatRect screenRect(Widget*); +FloatRect screenAvailableRect(Widget*); - int screenDepth(Widget*); - int screenDepthPerComponent(Widget*); - bool screenIsMonochrome(Widget*); +WEBCORE_EXPORT bool screenSupportsExtendedColor(Widget* = nullptr); - FloatRect screenRect(Widget*); - FloatRect screenAvailableRect(Widget*); - void screenColorProfile(ColorProfile&); +#if PLATFORM(MAC) -#if PLATFORM(MAC) && !PLATFORM(IOS) - NSScreen *screenForWindow(NSWindow *); +NSScreen *screen(NSWindow *); +NSScreen *screen(PlatformDisplayID); - FloatRect toUserSpace(const NSRect&, NSWindow *destination); - NSRect toDeviceSpace(const FloatRect&, NSWindow *source); +WEBCORE_EXPORT FloatRect toUserSpace(const NSRect&, NSWindow *destination); +WEBCORE_EXPORT NSRect toDeviceSpace(const FloatRect&, NSWindow *source); + +NSPoint flipScreenPoint(const NSPoint&, NSScreen *); - NSPoint flipScreenPoint(const NSPoint&, NSScreen *); #endif -} // namespace WebCore +#if PLATFORM(IOS) + +float screenPPIFactor(); +WEBCORE_EXPORT FloatSize screenSize(); +WEBCORE_EXPORT FloatSize availableScreenSize(); +WEBCORE_EXPORT float screenScaleFactor(UIScreen * = nullptr); -#endif // PlatformScreen_h +#endif + +} // namespace WebCore |