| Index: chrome/browser/chrome_browser_main_extra_parts_x11.cc
|
| diff --git a/chrome/browser/chrome_browser_main_extra_parts_x11.cc b/chrome/browser/chrome_browser_main_extra_parts_x11.cc
|
| index 76e8fb9fc4900d814705b855885ce873a6a9d2c8..4a7101c0ac81c7611a0c54b2c385b97ea2c92d21 100644
|
| --- a/chrome/browser/chrome_browser_main_extra_parts_x11.cc
|
| +++ b/chrome/browser/chrome_browser_main_extra_parts_x11.cc
|
| @@ -12,12 +12,14 @@
|
| #include "base/strings/string_number_conversions.h"
|
| #include "base/threading/sequenced_task_runner_handle.h"
|
| #include "chrome/browser/lifetime/application_lifetime.h"
|
| +#include "chrome/browser/ui/browser_list.h"
|
| #include "chrome/common/chrome_result_codes.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "ui/base/x/x11_util.h"
|
| #include "ui/base/x/x11_util_internal.h"
|
| #include "ui/events/platform/x11/x11_event_source.h"
|
| +#include "ui/views/widget/desktop_aura/x11_desktop_handler.h"
|
|
|
| using content::BrowserThread;
|
|
|
| @@ -111,6 +113,10 @@ void ChromeBrowserMainExtraPartsX11::PostMainMessageLoopStart() {
|
| base::Uint64ToString(
|
| ui::X11EventSource::GetInstance()->UpdateLastSeenServerTime()));
|
| }
|
| +
|
| + display::Desktop* desktop = views::X11DesktopHandler::get();
|
| + display::Desktop::SetDesktopInstance(desktop);
|
| + desktop->AddObserver(this);
|
| #endif
|
| }
|
|
|
| @@ -120,3 +126,8 @@ void ChromeBrowserMainExtraPartsX11::PostMainMessageLoopRun() {
|
| // process of terminating, this can cause errors.
|
| ui::SetX11ErrorHandlers(X11EmptyErrorHandler, X11EmptyIOErrorHandler);
|
| }
|
| +
|
| +void ChromeBrowserMainExtraPartsX11::OnWorkspaceChanged(
|
| + const std::string& new_workspace) {
|
| + BrowserList::ReorderAfterWorkspaceChange(new_workspace);
|
| +}
|
|
|