Return a reference in BrowserContext::active_document()

This commit is contained in:
Anthony Ramine 2015-10-17 02:03:55 +02:00
parent 6c7f37061b
commit 1f31d5b856
3 changed files with 5 additions and 6 deletions

View file

@ -44,13 +44,12 @@ impl BrowsingContext {
} }
} }
pub fn active_document(&self) -> Root<Document> { pub fn active_document(&self) -> &Document {
self.history[self.active_index].document.root() &*self.history[self.active_index].document
} }
pub fn active_window(&self) -> Root<Window> { pub fn active_window(&self) -> Root<Window> {
let doc = self.active_document(); self.active_document().window()
doc.r().window()
} }
pub fn frame_element(&self) -> Option<Root<Element>> { pub fn frame_element(&self) -> Option<Root<Element>> {

View file

@ -254,7 +254,7 @@ impl Document {
let browsing_context = browsing_context.as_ref().unwrap(); let browsing_context = browsing_context.as_ref().unwrap();
let active_document = browsing_context.active_document(); let active_document = browsing_context.active_document();
if self != active_document.r() { if self != active_document {
return false; return false;
} }
// FIXME: It should also check whether the browser context is top-level or not // FIXME: It should also check whether the browser context is top-level or not

View file

@ -381,7 +381,7 @@ impl WindowMethods for Window {
// https://html.spec.whatwg.org/multipage/#dom-document-0 // https://html.spec.whatwg.org/multipage/#dom-document-0
fn Document(&self) -> Root<Document> { fn Document(&self) -> Root<Document> {
self.browsing_context().as_ref().unwrap().active_document() Root::from_ref(self.browsing_context().as_ref().unwrap().active_document())
} }
// https://html.spec.whatwg.org/multipage/#dom-location // https://html.spec.whatwg.org/multipage/#dom-location