diff options
Diffstat (limited to 'src/components/script/dom/navigator.rs')
-rw-r--r-- | src/components/script/dom/navigator.rs | 57 |
1 files changed, 39 insertions, 18 deletions
diff --git a/src/components/script/dom/navigator.rs b/src/components/script/dom/navigator.rs index 39788fa7013..ec72aef0ff2 100644 --- a/src/components/script/dom/navigator.rs +++ b/src/components/script/dom/navigator.rs @@ -3,7 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use dom::bindings::codegen::BindingDeclarations::NavigatorBinding; -use dom::bindings::js::JS; +use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::bindings::error::Fallible; use dom::window::Window; @@ -21,73 +21,94 @@ impl Navigator { } } - pub fn new(window: &JS<Window>) -> JS<Navigator> { + pub fn new(window: &JSRef<Window>) -> Temporary<Navigator> { reflect_dom_object(~Navigator::new_inherited(), window, NavigatorBinding::Wrap) } +} + +pub trait NavigatorMethods { + fn DoNotTrack(&self) -> DOMString; + fn Vendor(&self) -> DOMString; + fn VendorSub(&self) -> DOMString; + fn Product(&self) -> DOMString; + fn ProductSub(&self) -> DOMString; + fn CookieEnabled(&self) -> bool; + fn GetBuildID(&self) -> Fallible<DOMString>; + fn JavaEnabled(&self) -> Fallible<bool>; + fn TaintEnabled(&self) -> bool; + fn AppName(&self) -> DOMString; + fn GetAppCodeName(&self) -> Fallible<DOMString>; + fn GetAppVersion(&self) -> Fallible<DOMString>; + fn GetPlatform(&self) -> Fallible<DOMString>; + fn GetUserAgent(&self) -> Fallible<DOMString>; + fn GetLanguage(&self) -> Option<DOMString>; + fn OnLine(&self) -> bool; +} - pub fn DoNotTrack(&self) -> DOMString { +impl<'a> NavigatorMethods for JSRef<'a, Navigator> { + fn DoNotTrack(&self) -> DOMString { ~"unspecified" } - pub fn Vendor(&self) -> DOMString { + fn Vendor(&self) -> DOMString { ~"" // Like Gecko } - pub fn VendorSub(&self) -> DOMString { + fn VendorSub(&self) -> DOMString { ~"" // Like Gecko } - pub fn Product(&self) -> DOMString { + fn Product(&self) -> DOMString { ~"Gecko" } - pub fn ProductSub(&self) -> DOMString { + fn ProductSub(&self) -> DOMString { ~"" } - pub fn CookieEnabled(&self) -> bool { + fn CookieEnabled(&self) -> bool { false } - pub fn GetBuildID(&self) -> Fallible<DOMString> { + fn GetBuildID(&self) -> Fallible<DOMString> { Ok(~"") } - pub fn JavaEnabled(&self) -> Fallible<bool> { + fn JavaEnabled(&self) -> Fallible<bool> { Ok(false) } - pub fn TaintEnabled(&self) -> bool { + fn TaintEnabled(&self) -> bool { false } - pub fn AppName(&self) -> DOMString { + fn AppName(&self) -> DOMString { ~"Netscape" // Like Gecko/Webkit } - pub fn GetAppCodeName(&self) -> Fallible<DOMString> { + fn GetAppCodeName(&self) -> Fallible<DOMString> { Ok(~"Mozilla") // Like Gecko/Webkit } - pub fn GetAppVersion(&self) -> Fallible<DOMString> { + fn GetAppVersion(&self) -> Fallible<DOMString> { Ok(~"") } - pub fn GetPlatform(&self) -> Fallible<DOMString> { + fn GetPlatform(&self) -> Fallible<DOMString> { Ok(~"") } - pub fn GetUserAgent(&self) -> Fallible<DOMString> { + fn GetUserAgent(&self) -> Fallible<DOMString> { Ok(~"") } - pub fn GetLanguage(&self) -> Option<DOMString> { + fn GetLanguage(&self) -> Option<DOMString> { None } - pub fn OnLine(&self) -> bool { + fn OnLine(&self) -> bool { true } } |