#ifndef UI_LINUX_LINUX_UI_H_
#define UI_LINUX_LINUX_UI_H_
#include <memory>
#include <optional>
#include <string>
#include <vector>
#include "base/command_line.h"
#include "base/component_export.h"
#include "base/containers/flat_map.h"
#include "base/observer_list.h"
#include "base/scoped_observation_traits.h"
#include "build/buildflag.h"
#include "build/chromecast_buildflags.h"
#include "printing/buildflags/buildflags.h"
#include "ui/display/types/display_config.h"
SkColor;
class Profile;
namespace aura {
class Window;
}
namespace base {
class TimeDelta;
}
namespace gfx {
struct FontRenderParams;
class Image;
class Size;
}
namespace printing {
class PrintingContextLinux;
class PrintDialogLinuxInterface;
}
namespace ui {
class CursorThemeManagerObserver;
class DeviceScaleFactorObserver;
class Event;
class LinuxInputMethodContext;
class LinuxInputMethodContextDelegate;
class LinuxUiTheme;
class NativeTheme;
class NavButtonProvider;
class SelectFileDialog;
class SelectFilePolicy;
class TextEditCommandAuraLinux;
class WindowButtonOrderObserver;
class WindowFrameProvider;
class COMPONENT_EXPORT(LINUX_UI) LinuxUi { … };
class COMPONENT_EXPORT(LINUX_UI) LinuxUiTheme { … };
class LinuxUiAndTheme : public LinuxUi, public LinuxUiTheme { … };
}
namespace base {
template <>
struct ScopedObservationTraits<ui::LinuxUi, ui::CursorThemeManagerObserver> { … };
template <>
struct ScopedObservationTraits<ui::LinuxUi, ui::DeviceScaleFactorObserver> { … };
template <>
struct ScopedObservationTraits<ui::LinuxUi, ui::WindowButtonOrderObserver> { … };
}
#endif