Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- |
michael@0 | 2 | * vim: set ts=2 sw=2 et tw=78: |
michael@0 | 3 | * |
michael@0 | 4 | * This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 5 | * License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 6 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
michael@0 | 7 | |
michael@0 | 8 | #include "nsISupports.idl" |
michael@0 | 9 | |
michael@0 | 10 | /** |
michael@0 | 11 | * The nsIScrollable is an interface that can be implemented by a control that |
michael@0 | 12 | * supports scrolling. This is a generic interface without concern for the |
michael@0 | 13 | * type of content that may be inside. |
michael@0 | 14 | */ |
michael@0 | 15 | [scriptable, uuid(3507fc93-313e-4a4c-8ca8-4d0ea0f97315)] |
michael@0 | 16 | interface nsIScrollable : nsISupports |
michael@0 | 17 | { |
michael@0 | 18 | /** |
michael@0 | 19 | * Constants declaring the two scroll orientations a scrollbar can be in. |
michael@0 | 20 | * ScrollOrientation_X - Horizontal scrolling. When passing this |
michael@0 | 21 | * in to a method you are requesting or setting data for the |
michael@0 | 22 | * horizontal scrollbar. |
michael@0 | 23 | * ScrollOrientation_Y - Vertical scrolling. When passing this |
michael@0 | 24 | * in to a method you are requesting or setting data for the |
michael@0 | 25 | * vertical scrollbar. |
michael@0 | 26 | */ |
michael@0 | 27 | const long ScrollOrientation_X = 1; |
michael@0 | 28 | const long ScrollOrientation_Y = 2; |
michael@0 | 29 | |
michael@0 | 30 | /** |
michael@0 | 31 | * Constants declaring the states of the scrollbars. |
michael@0 | 32 | * ScrollPref_Auto - bars visible only when needed. |
michael@0 | 33 | * ScrollPref_Never - bars never visible, even when scrolling still possible. |
michael@0 | 34 | * ScrollPref_Always - bars always visible, even when scrolling is not possible |
michael@0 | 35 | */ |
michael@0 | 36 | const long Scrollbar_Auto = 1; |
michael@0 | 37 | const long Scrollbar_Never = 2; |
michael@0 | 38 | const long Scrollbar_Always = 3; |
michael@0 | 39 | |
michael@0 | 40 | /** |
michael@0 | 41 | * Get or set the default scrollbar state for all documents in |
michael@0 | 42 | * this shell. |
michael@0 | 43 | */ |
michael@0 | 44 | long getDefaultScrollbarPreferences(in long scrollOrientation); |
michael@0 | 45 | void setDefaultScrollbarPreferences(in long scrollOrientation, |
michael@0 | 46 | in long scrollbarPref); |
michael@0 | 47 | |
michael@0 | 48 | /** |
michael@0 | 49 | * Get information about whether the vertical and horizontal scrollbars are |
michael@0 | 50 | * currently visible. If you are only interested in one of the visibility |
michael@0 | 51 | * settings pass nullptr in for the one you aren't interested in. |
michael@0 | 52 | */ |
michael@0 | 53 | void getScrollbarVisibility(out boolean verticalVisible, |
michael@0 | 54 | out boolean horizontalVisible); |
michael@0 | 55 | }; |