#include "ui/ozone/platform/wayland/host/surface_augmenter.h"
#include <surface-augmenter-client-protocol.h>
#include <wayland-util.h>
#include <cstdint>
#include "base/logging.h"
#include "ui/ozone/platform/wayland/common/wayland_util.h"
#include "ui/ozone/platform/wayland/host/wayland_connection.h"
namespace ui {
namespace {
constexpr uint32_t kMinVersion = …;
constexpr uint32_t kMaxVersion = …;
constexpr uint32_t kRoundedClipBoundsInLocalSurfaceCoordinatesSinceVersion = …;
constexpr uint32_t kAugmentedSurfaceIsCompositingOnly = …;
}
constexpr char SurfaceAugmenter::kInterfaceName[];
void SurfaceAugmenter::Instantiate(WaylandConnection* connection,
wl_registry* registry,
uint32_t name,
const std::string& interface,
uint32_t version) { … }
SurfaceAugmenter::SurfaceAugmenter(surface_augmenter* surface_augmenter,
WaylandConnection* connection)
: … { … }
SurfaceAugmenter::~SurfaceAugmenter() = default;
bool SurfaceAugmenter::SupportsSubpixelAccuratePosition() const { … }
bool SurfaceAugmenter::SupportsClipRectOnAugmentedSurface() const { … }
bool SurfaceAugmenter::SupportsTransform() const { … }
bool SurfaceAugmenter::NeedsRoundedClipBoundsInLocalSurfaceCoordinates() const { … }
bool SurfaceAugmenter::SupportsCompositingOnlySurface() const { … }
uint32_t SurfaceAugmenter::GetSurfaceAugmentorVersion() const { … }
wl::Object<augmented_surface> SurfaceAugmenter::CreateAugmentedSurface(
wl_surface* surface) { … }
wl::Object<augmented_sub_surface> SurfaceAugmenter::CreateAugmentedSubSurface(
wl_subsurface* subsurface) { … }
wl::Object<wl_buffer> SurfaceAugmenter::CreateSolidColorBuffer(
const SkColor4f& color,
const gfx::Size& size) { … }
}