OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 namespace systemInfo.display { | 5 namespace systemInfo.display { |
6 | 6 |
7 dictionary Bounds { | 7 dictionary Bounds { |
8 // The x-coordinate of the upper-left corner. | 8 // The x-coordinate of the upper-left corner. |
9 long left; | 9 long left; |
10 // The y-coordinate of the upper-left corner. | 10 // The y-coordinate of the upper-left corner. |
11 long top; | 11 long top; |
12 // The width of the display in pixels. | 12 // The width of the display in pixels. |
13 long width; | 13 long width; |
14 // The height of the display in pixels. | 14 // The height of the display in pixels. |
15 long height; | 15 long height; |
16 }; | 16 }; |
17 | 17 |
18 dictionary DisplayUnitInfo { | 18 dictionary DisplayUnitInfo { |
19 // The unique identifier of the display. | 19 // The unique identifier of the display. |
20 DOMString id; | 20 DOMString id; |
21 // The user-friendly name (e.g. "HP LCD monitor"). | 21 // The user-friendly name (e.g. "HP LCD monitor"). |
22 DOMString name; | 22 DOMString name; |
| 23 // Identifier of the display that is being mirrored on the display unit. |
| 24 // If mirroring is not in progress, set to an empty string. |
| 25 // Currently exposed only on ChromeOS. Will be set to an empty string on |
| 26 // other platforms. |
| 27 DOMString mirroringSourceId; |
23 // True if this is the primary display. | 28 // True if this is the primary display. |
24 boolean isPrimary; | 29 boolean isPrimary; |
25 // True if this is an internal display. | 30 // True if this is an internal display. |
26 boolean isInternal; | 31 boolean isInternal; |
27 // True if this display is enabled. | 32 // True if this display is enabled. |
28 boolean isEnabled; | 33 boolean isEnabled; |
29 // The number of pixels per inch along the x-axis. | 34 // The number of pixels per inch along the x-axis. |
30 double dpiX; | 35 double dpiX; |
31 // The number of pixels per inch along the y-axis. | 36 // The number of pixels per inch along the y-axis. |
32 double dpiY; | 37 double dpiY; |
33 // The bounds of the display. | 38 // The display's clockwise rotation in degrees relative to the vertical |
| 39 // position. |
| 40 // Currently exposed only on ChromeOS. Will be set to 0 on other platforms. |
| 41 long rotation; |
| 42 // The display's logical bounds. The logical coordinates are given relative |
| 43 // to the primary display. |
34 Bounds bounds; | 44 Bounds bounds; |
35 // The usable work area of the display. | 45 // The display's bounds in the screen's coordinate system. |
| 46 // Currently exposed only on ChromeOS. Will be set to empty bounds on |
| 47 // other platforms. |
| 48 Bounds visibleArea; |
| 49 // The usable work area of the display within the display bounds. The work |
| 50 // area excludes areas of the display reserved for OS, for example taskbar |
| 51 // and launcher. |
36 Bounds workArea; | 52 Bounds workArea; |
37 }; | 53 }; |
38 | 54 |
39 callback DisplayInfoCallback = void (DisplayUnitInfo[] displayInfo); | 55 callback DisplayInfoCallback = void (DisplayUnitInfo[] displayInfo); |
40 | 56 |
41 interface Functions { | 57 interface Functions { |
42 // Get the information of all attached display devices. | 58 // Get the information of all attached display devices. |
43 static void getDisplayInfo(DisplayInfoCallback callback); | 59 static void getDisplayInfo(DisplayInfoCallback callback); |
44 }; | 60 }; |
45 | 61 |
46 interface Events { | 62 interface Events { |
47 // Fired when anything changes to the display configuration. | 63 // Fired when anything changes to the display configuration. |
48 static void onDisplayChanged(); | 64 static void onDisplayChanged(); |
49 }; | 65 }; |
50 }; | 66 }; |
OLD | NEW |