OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/accelerated_widget_mac/window_resize_helper_mac.h" | 5 #include "ui/accelerated_widget_mac/window_resize_helper_mac.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <list> | 9 #include <list> |
10 | 10 |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
294 return g_window_resize_helper.Pointer(); | 294 return g_window_resize_helper.Pointer(); |
295 } | 295 } |
296 | 296 |
297 void WindowResizeHelperMac::Init( | 297 void WindowResizeHelperMac::Init( |
298 const scoped_refptr<base::SingleThreadTaskRunner>& target_task_runner) { | 298 const scoped_refptr<base::SingleThreadTaskRunner>& target_task_runner) { |
299 DCHECK(!task_runner_); | 299 DCHECK(!task_runner_); |
300 task_runner_ = new PumpableTaskRunner( | 300 task_runner_ = new PumpableTaskRunner( |
301 base::Bind(&WindowResizeHelperMac::EventTimedWait), target_task_runner); | 301 base::Bind(&WindowResizeHelperMac::EventTimedWait), target_task_runner); |
302 } | 302 } |
303 | 303 |
304 void WindowResizeHelperMac::ShutdownForTests() { | |
305 task_runner_ = nullptr; | |
306 } | |
307 | |
308 bool WindowResizeHelperMac::WaitForSingleTaskToRun( | 304 bool WindowResizeHelperMac::WaitForSingleTaskToRun( |
309 const base::TimeDelta& max_delay) { | 305 const base::TimeDelta& max_delay) { |
310 PumpableTaskRunner* pumpable_task_runner = | 306 PumpableTaskRunner* pumpable_task_runner = |
311 static_cast<PumpableTaskRunner*>(task_runner_.get()); | 307 static_cast<PumpableTaskRunner*>(task_runner_.get()); |
312 if (!pumpable_task_runner) | 308 if (!pumpable_task_runner) |
313 return false; | 309 return false; |
314 return pumpable_task_runner->WaitForSingleWrappedTaskToRun(max_delay); | 310 return pumpable_task_runner->WaitForSingleWrappedTaskToRun(max_delay); |
315 } | 311 } |
316 | 312 |
317 WindowResizeHelperMac::WindowResizeHelperMac() {} | 313 WindowResizeHelperMac::WindowResizeHelperMac() {} |
318 WindowResizeHelperMac::~WindowResizeHelperMac() {} | 314 WindowResizeHelperMac::~WindowResizeHelperMac() {} |
319 | 315 |
320 void WindowResizeHelperMac::EventTimedWait(base::WaitableEvent* event, | 316 void WindowResizeHelperMac::EventTimedWait(base::WaitableEvent* event, |
321 base::TimeDelta delay) { | 317 base::TimeDelta delay) { |
322 base::ThreadRestrictions::ScopedAllowWait allow_wait; | 318 base::ThreadRestrictions::ScopedAllowWait allow_wait; |
323 event->TimedWait(delay); | 319 event->TimedWait(delay); |
324 } | 320 } |
325 | 321 |
326 } // namespace ui | 322 } // namespace ui |
OLD | NEW |