summaryrefslogtreecommitdiffstats
path: root/embedding/browser/nsIWebBrowserSetup.idl
blob: d30645126bc5c509b5b6357776b020c1f23e7f03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

/**
 * The nsIWebBrowserSetup interface lets you set properties on a browser
 * object; you can do so at any time during the life cycle of the browser.
 *
 * @note Unless stated otherwise, settings are presumed to be enabled by
 *       default.
 */
[scriptable, uuid(F15398A0-8018-11d3-AF70-00A024FFC08C)]
interface nsIWebBrowserSetup : nsISupports
{
    /**
     * Boolean. Enables/disables plugin support for this browser.
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_PLUGINS         = 1;

    /**
     * Boolean. Enables/disables Javascript support for this browser.
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_JAVASCRIPT      = 2;

    /**
     * Boolean. Enables/disables meta redirect support for this browser.
     * Meta redirect timers will be ignored if this option is disabled.
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_META_REDIRECTS  = 3;

    /**
     * Boolean. Enables/disables subframes within the browser
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_SUBFRAMES       = 4;

    /**
     * Boolean. Enables/disables image loading for this browser
     * window. If you disable the images, load a page, then enable the images,
     * the page will *not* automatically load the images for the previously
     * loaded page. This flag controls the state of a webBrowser at load time 
     * and does not automatically re-load a page when the state is toggled. 
     * Reloading must be done by hand, or by walking through the DOM tree and 
     * re-setting the src attributes.
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_IMAGES          = 5;

    /**
     * Boolean. Enables/disables whether the document as a whole gets focus before
     * traversing the document's content, or after traversing its content.
     *
     * NOTE: this property is obsolete and now has no effect
     *
     * @see setProperty
     */
    const unsigned long SETUP_FOCUS_DOC_BEFORE_CONTENT = 6;

    /**
     * Boolean. Enables/disables the use of global history in the browser. Visited
     * URLs will not be recorded in the global history when it is disabled.
     *
     * @see setProperty
     */
    const unsigned long SETUP_USE_GLOBAL_HISTORY    = 256;

    /**
     * Boolean. A value of PR_TRUE makes the browser a chrome wrapper.
     * Default is PR_FALSE.
     *
     * @since mozilla1.0
     *
     * @see setProperty
     */
    const unsigned long SETUP_IS_CHROME_WRAPPER     = 7;


    /**
     * Boolean. Enables/disables DNS prefetch for HTML anchors in this browser.
     * This takes effect starting with the next pageload after the property is
     * set.  The default is to not allow DNS prefetch, for backwards
     * compatibility.
     *
     * @see setProperty
     */
    const unsigned long SETUP_ALLOW_DNS_PREFETCH    = 8;

    /**
     * Sets an integer or boolean property on the new web browser object.
     * Only PR_TRUE and PR_FALSE are legal boolean values.
     *
     * @param aId The identifier of the property to be set.
     * @param aValue The value of the property.
     */
    void setProperty(in unsigned long aId, in unsigned long aValue);
};