|
1 /* vim: se cin sw=2 ts=2 et : */ |
|
2 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- |
|
3 * |
|
4 * This Source Code Form is subject to the terms of the Mozilla Public |
|
5 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
7 |
|
8 #include "nsITaskbarPreview.idl" |
|
9 interface imgIContainer; |
|
10 |
|
11 /* |
|
12 * nsITaskbarTabPreview |
|
13 * |
|
14 * This interface controls tab preview-specific behavior. Creating an |
|
15 * nsITaskbarTabPreview for a window will hide that window's |
|
16 * nsITaskbarWindowPreview in the taskbar - the native API performs this |
|
17 * unconditionally. When there are no more tab previews for a window, the |
|
18 * nsITaskbarWindowPreview will automatically become visible again. |
|
19 * |
|
20 * An application may have as many tab previews per window as memory allows. |
|
21 * |
|
22 */ |
|
23 [scriptable, uuid(11E4C8BD-5C2D-4E1A-A9A1-79DD5B0FE544)] |
|
24 interface nsITaskbarTabPreview : nsITaskbarPreview |
|
25 { |
|
26 /** |
|
27 * The title displayed above the thumbnail |
|
28 * |
|
29 * Default: an empty string |
|
30 */ |
|
31 attribute DOMString title; |
|
32 |
|
33 /** |
|
34 * The icon displayed next to the title in the preview |
|
35 * |
|
36 * Default: null |
|
37 */ |
|
38 attribute imgIContainer icon; |
|
39 |
|
40 /** |
|
41 * Rearranges the preview relative to another tab preview from the same window |
|
42 * @param aNext The preview to the right of this one. A value of null |
|
43 * indicates that the preview is the rightmost one. |
|
44 */ |
|
45 void move(in nsITaskbarTabPreview aNext); |
|
46 |
|
47 /** |
|
48 * Used internally to grab the handle to the proxy window. |
|
49 */ |
|
50 [notxpcom] |
|
51 nativeWindow GetHWND(); |
|
52 |
|
53 /** |
|
54 * Used internally to ensure that the taskbar knows about this preview. If a |
|
55 * preview is not registered, then the API call to set its sibling (via move) |
|
56 * will silently fail. |
|
57 * |
|
58 * This method is only invoked when it is safe to make taskbar API calls. |
|
59 */ |
|
60 [notxpcom] |
|
61 void EnsureRegistration(); |
|
62 }; |
|
63 |