chromium/ui/accessibility/platform/atk_util_auralinux.cc

// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifdef UNSAFE_BUFFERS_BUILD
// TODO(crbug.com/40285824): Remove this and convert code to safer constructs.
#pragma allow_unsafe_buffers
#endif

#include <atk/atk.h>
#include <map>
#include <memory>
#include <set>
#include <string>
#include <utility>

#if defined(USE_GIO)
#include <gio/gio.h>
#endif

#include "base/environment.h"
#include "base/memory/singleton.h"
#include "base/no_destructor.h"
#include "ui/accessibility/platform/atk_util_auralinux.h"
#include "ui/accessibility/platform/ax_platform.h"
#include "ui/accessibility/platform/ax_platform_node.h"
#include "ui/accessibility/platform/ax_platform_node_auralinux.h"

namespace {

const char* kAccessibilityEnabledVariables[] =;

//
// AtkUtilAuraLinux definition and implementation.
//
struct AtkUtilAuraLinux {};

struct AtkUtilAuraLinuxClass {};

G_DEFINE_TYPE()

static void atk_util_auralinux_init(AtkUtilAuraLinux *ax_util) {}

static AtkObject* AtkUtilAuraLinuxGetRoot() {}

KeySnoopFuncMap;
static KeySnoopFuncMap& GetActiveKeySnoopFunctions() {}

AXPlatformNodeSet;
static AXPlatformNodeSet& GetNodesWithPostponedEvents() {}

static void RunPostponedEvents() {}

static guint AtkUtilAuraLinuxAddKeyEventListener(
    AtkKeySnoopFunc key_snoop_function,
    gpointer data) {}

static void AtkUtilAuraLinuxRemoveKeyEventListener(guint listener_id) {}

static void atk_util_auralinux_class_init(AtkUtilAuraLinuxClass *klass) {}

}  // namespace

namespace ui {

// static
AtkUtilAuraLinux* AtkUtilAuraLinux::GetInstance() {}

bool AtkUtilAuraLinux::ShouldEnableAccessibility() {}

void AtkUtilAuraLinux::InitializeAsync() {}

void AtkUtilAuraLinux::InitializeForTesting() {}

// static
// Disable CFI-icall since the key snooping function could be in another DSO.
__attribute__((no_sanitize("cfi-icall")))
DiscardAtkKeyEvent AtkUtilAuraLinux::HandleAtkKeyEvent(
    AtkKeyEventStruct* key_event) {}

bool AtkUtilAuraLinux::IsAtSpiReady() {}

void AtkUtilAuraLinux::SetAtSpiReady(bool ready) {}

void AtkUtilAuraLinux::PostponeEventsFor(AXPlatformNodeAuraLinux* node) {}

void AtkUtilAuraLinux::CancelPostponedEventsFor(AXPlatformNodeAuraLinux* node) {}

}  // namespace ui