#include "ui/ozone/platform/wayland/host/xdg_activation.h"
#include <xdg-activation-v1-client-protocol.h>
#include <memory>
#include "base/check_op.h"
#include "base/functional/bind.h"
#include "base/logging.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/nix/xdg_util.h"
#include "base/task/sequenced_task_runner.h"
#include "base/time/time.h"
#include "base/timer/timer.h"
#include "ui/ozone/platform/wayland/common/wayland_object.h"
#include "ui/ozone/platform/wayland/host/wayland_connection.h"
#include "ui/ozone/platform/wayland/host/wayland_seat.h"
#include "ui/ozone/platform/wayland/host/wayland_serial_tracker.h"
#include "ui/ozone/platform/wayland/host/wayland_window.h"
namespace ui {
namespace {
constexpr uint32_t kMaxVersion = …;
}
class XdgActivation::TokenRequest { … };
constexpr char XdgActivation::kInterfaceName[];
void XdgActivation::Instantiate(WaylandConnection* connection,
wl_registry* registry,
uint32_t name,
const std::string& interface,
uint32_t version) { … }
XdgActivation::XdgActivation(wl::Object<xdg_activation_v1> xdg_activation_v1,
WaylandConnection* connection)
: … { … }
XdgActivation::~XdgActivation() { … }
void XdgActivation::Activate(wl_surface* surface,
const std::string& token) const { … }
void XdgActivation::RequestNewToken(
base::nix::XdgActivationTokenCallback callback) const { … }
void XdgActivation::OnTokenRequestCompleted(
base::nix::XdgActivationTokenCallback callback,
std::string token) { … }
XdgActivation::TokenRequest::TokenRequest(
xdg_activation_v1* xdg_activation,
WaylandConnection* connection,
base::nix::XdgActivationTokenCallback callback)
: … { … }
void XdgActivation::TokenRequest::InitiateRequest() { … }
void XdgActivation::TokenRequest::OnTimeout() { … }
void XdgActivation::TokenRequest::OnDone(std::string token) { … }
XdgActivation::TokenRequest::~TokenRequest() = default;
void XdgActivation::TokenRequest::OnTokenReceived(
void* data,
xdg_activation_token_v1* activation_token,
const char* token) { … }
}