| Index: chrome/browser/ui_thread_helpers.h
|
| diff --git a/chrome/browser/ui_thread_helpers.h b/chrome/browser/ui_thread_helpers.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..90e2c4e32156028c746da88d9a081929d6e2ee51
|
| --- /dev/null
|
| +++ b/chrome/browser/ui_thread_helpers.h
|
| @@ -0,0 +1,32 @@
|
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef CHROME_BROWSER_UI_THREAD_HELPERS_H_
|
| +#define CHROME_BROWSER_UI_THREAD_HELPERS_H_
|
| +#pragma once
|
| +
|
| +class Task;
|
| +
|
| +namespace tracked_objects {
|
| +class Location;
|
| +} // namespace tracked_objects
|
| +
|
| +namespace ui_thread_helpers {
|
| +
|
| +// This can be used in place of ChromeThread::PostTask(ChromeThread::UI, ...).
|
| +// The purpose of this function is to be able to execute Chrome work alongside
|
| +// native work when a message loop is running nested or, in the case of Mac,
|
| +// in a different mode. Currently this is used for updating the HostZoomMap
|
| +// while the Wrench menu is open, allowing for the zoom display to update. See
|
| +// http://crbug.com/48679 for the full rationale.
|
| +//
|
| +// CAVEAT EMPTOR: This function's implementation is different across platforms
|
| +// and may run the Task in a way that differs from the stock MessageLoop. You
|
| +// should check the behavior on all platforms if you use this.
|
| +bool PostTaskWhileRunningMenu(const tracked_objects::Location& from_here,
|
| + Task* task);
|
| +
|
| +} // namespace ui_thread_helpers
|
| +
|
| +#endif // CHROME_BROWSER_UI_THREAD_HELPERS_H_
|
|
|