blob: c77518d4a34e8273ea366af99287d219c1d98775 [file] [log] [blame]
// Copyright (c) 2012 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.
#include "chrome/browser/ui/panels/display_settings_provider.h"
#include "ui/base/work_area_watcher_observer.h"
#include "ui/base/x/work_area_watcher_x.h"
namespace {
class DisplaySettingsProviderGtk : public DisplaySettingsProvider,
public ui::WorkAreaWatcherObserver {
public:
DisplaySettingsProviderGtk();
virtual ~DisplaySettingsProviderGtk();
protected:
// Overridden from ui::WorkAreaWatcherObserver:
virtual void WorkAreaChanged() OVERRIDE;
private:
DISALLOW_COPY_AND_ASSIGN(DisplaySettingsProviderGtk);
};
DisplaySettingsProviderGtk::DisplaySettingsProviderGtk() {
ui::WorkAreaWatcherX::AddObserver(this);
}
DisplaySettingsProviderGtk::~DisplaySettingsProviderGtk() {
ui::WorkAreaWatcherX::RemoveObserver(this);
}
void DisplaySettingsProviderGtk::WorkAreaChanged() {
OnDisplaySettingsChanged();
}
} // namespace
// static
DisplaySettingsProvider* DisplaySettingsProvider::Create() {
return new DisplaySettingsProviderGtk();
}