mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Auto merge of #8618 - paulrouget:reload, r=jdm
Browser API: implement iframe.reload() fixes #8575 The implementation is naive, and doesn't support the `hardreload` parameter. And for the test, I'm not sure how else I can test the reload. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8618) <!-- Reviewable:end -->
This commit is contained in:
commit
9570b51565
6 changed files with 67 additions and 13 deletions
|
@ -90,7 +90,7 @@ impl HTMLIFrameElement {
|
|||
(subpage_id, old_subpage_id)
|
||||
}
|
||||
|
||||
pub fn navigate_child_browsing_context(&self, url: Url) {
|
||||
pub fn navigate_or_reload_child_browsing_context(&self, url: Option<Url>) {
|
||||
let sandboxed = if self.is_sandboxed() {
|
||||
IFrameSandboxed
|
||||
} else {
|
||||
|
@ -127,7 +127,7 @@ impl HTMLIFrameElement {
|
|||
None => url!("about:blank"),
|
||||
};
|
||||
|
||||
self.navigate_child_browsing_context(url);
|
||||
self.navigate_or_reload_child_browsing_context(Some(url));
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
|
@ -399,7 +399,12 @@ impl HTMLIFrameElementMethods for HTMLIFrameElement {
|
|||
|
||||
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/reload
|
||||
fn Reload(&self, _hardReload: bool) -> Fallible<()> {
|
||||
Err(Error::NotSupported)
|
||||
if mozbrowser_enabled() {
|
||||
if self.upcast::<Node>().is_in_doc() {
|
||||
self.navigate_or_reload_child_browsing_context(None);
|
||||
}
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/stop
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue