diff options
author | Patrick Walton <pcwalton@mimiga.net> | 2015-05-15 15:07:26 -0700 |
---|---|---|
committer | Patrick Walton <pcwalton@mimiga.net> | 2015-05-20 10:53:48 -0700 |
commit | 0098d9e9e8de666b40113b023255915388ecef22 (patch) | |
tree | fa7bdb57482006fd659ffa2e05daa9728b362a61 /components/servo/main.rs | |
parent | e52197d1261055527a838f74b353a1124d6b077a (diff) | |
download | servo-0098d9e9e8de666b40113b023255915388ecef22.tar.gz servo-0098d9e9e8de666b40113b023255915388ecef22.zip |
compositing: Support multiple events per frame.
Improves scrolling performance on Mac.
Diffstat (limited to 'components/servo/main.rs')
-rw-r--r-- | components/servo/main.rs | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/components/servo/main.rs b/components/servo/main.rs index bee05978b42..ef12ef2171a 100644 --- a/components/servo/main.rs +++ b/components/servo/main.rs @@ -64,17 +64,14 @@ fn main() { maybe_register_glutin_resize_handler(&window, &mut browser); - browser.browser.handle_event(WindowEvent::InitializeCompositing); + browser.browser.handle_events(vec![WindowEvent::InitializeCompositing]); // Feed events from the window to the browser until the browser // says to stop. loop { let should_continue = match window { - None => browser.browser.handle_event(WindowEvent::Idle), - Some(ref window) => { - let event = window.wait_events(); - browser.browser.handle_event(event) - } + None => browser.browser.handle_events(Vec::new()), + Some(ref window) => browser.browser.handle_events(window.wait_events()), }; if !should_continue { break @@ -123,7 +120,7 @@ impl app::NestedEventLoopListener for BrowserWrapper { WindowEvent::Resize(..) => true, _ => false, }; - if !self.browser.handle_event(event) { + if !self.browser.handle_events(vec![event]) { return false } if is_resize { |