Reflow and redisplay after script timers fire

We don't know what the script changed.  This will be less painful with
incremental layout.

Fixes a crash from calling reflow() with self.damage = None.
This commit is contained in:
Keegan McAllister 2013-07-24 14:57:59 -07:00
parent de65ac7127
commit dc9f7560b0

View file

@ -16,7 +16,7 @@ use dom::window::Window;
use layout_interface::{AddStylesheetMsg, DocumentDamage}; use layout_interface::{AddStylesheetMsg, DocumentDamage};
use layout_interface::{DocumentDamageLevel, HitTestQuery, HitTestResponse, LayoutQuery}; use layout_interface::{DocumentDamageLevel, HitTestQuery, HitTestResponse, LayoutQuery};
use layout_interface::{LayoutChan, MatchSelectorsDocumentDamage, QueryMsg, Reflow}; use layout_interface::{LayoutChan, MatchSelectorsDocumentDamage, QueryMsg, Reflow};
use layout_interface::{ReflowDocumentDamage, ReflowForDisplay, ReflowForScriptQuery, ReflowGoal}; use layout_interface::{ReflowDocumentDamage, ReflowForDisplay, ReflowGoal};
use layout_interface::ReflowMsg; use layout_interface::ReflowMsg;
use layout_interface; use layout_interface;
use servo_msg::constellation_msg::{ConstellationChan, LoadUrlMsg, NavigationDirection}; use servo_msg::constellation_msg::{ConstellationChan, LoadUrlMsg, NavigationDirection};
@ -321,7 +321,8 @@ impl ScriptTask {
null(), null(),
&rval); &rval);
self.reflow(ReflowForScriptQuery) // We don't know what the script changed, so for now we will do a total redisplay.
self.reflow_all(ReflowForDisplay)
} }
} }