OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 13 matching lines...) Expand all Loading... |
24 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 24 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 */ | 27 */ |
28 | 28 |
29 // https://html.spec.whatwg.org/#the-location-interface | 29 // https://html.spec.whatwg.org/#the-location-interface |
30 | 30 |
31 [ | 31 [ |
32 CheckSecurity=Receiver, | 32 CheckSecurity=Receiver, |
33 Unforgeable, | 33 Unforgeable, |
34 GarbageCollected, | |
35 ] interface Location { | 34 ] interface Location { |
36 // |assign|, |replace|, and *writing* |href| do not require a security | 35 // |assign|, |replace|, and *writing* |href| do not require a security |
37 // check, as they *change* the page, and thus these do not change any | 36 // check, as they *change* the page, and thus these do not change any |
38 // property of an *existing* document at a different origin. | 37 // property of an *existing* document at a different origin. |
39 // However, *reading* |href|, or accessing any component, is a security | 38 // However, *reading* |href|, or accessing any component, is a security |
40 // problem, since that allows tracking navigation. | 39 // problem, since that allows tracking navigation. |
41 [CallWith=(CurrentWindow,EnteredWindow), DoNotCheckSecurity, RaisesException
] void assign(DOMString url); | 40 [CallWith=(CurrentWindow,EnteredWindow), DoNotCheckSecurity, RaisesException
] void assign(DOMString url); |
42 [CallWith=(CurrentWindow,EnteredWindow), DoNotCheckSecurity, RaisesException
] void replace(DOMString url); | 41 [CallWith=(CurrentWindow,EnteredWindow), DoNotCheckSecurity, RaisesException
] void replace(DOMString url); |
43 [CallWith=CurrentWindow] void reload(); | 42 [CallWith=CurrentWindow] void reload(); |
44 | 43 |
(...skipping 13 matching lines...) Expand all Loading... |
58 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString hostname; | 57 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString hostname; |
59 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString port; | 58 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString port; |
60 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString pathname; | 59 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString pathname; |
61 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString search; | 60 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString search; |
62 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString hash; | 61 [SetterCallWith=(CurrentWindow,EnteredWindow)] attribute DOMString hash; |
63 | 62 |
64 // TODO(philipj): Location does not have a valueOf() override in the spec. | 63 // TODO(philipj): Location does not have a valueOf() override in the spec. |
65 // See the comment in Location.h for the purpose of this. | 64 // See the comment in Location.h for the purpose of this. |
66 [NotEnumerable, CallWith=ThisValue] any valueOf(); | 65 [NotEnumerable, CallWith=ThisValue] any valueOf(); |
67 }; | 66 }; |
OLD | NEW |