blob: 18d90af6bcbe721a6f208a3785cb75bd3a7c5ae6 [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef UI_ACCESSIBILITY_AX_TREE_UPDATE_UTIL_H_
#define UI_ACCESSIBILITY_AX_TREE_UPDATE_UTIL_H_
#include <vector>
#include "ui/accessibility/ax_export.h"
#include "ui/accessibility/ax_tree_update_forward.h"
namespace ui {
AX_EXPORT bool AXTreeUpdatesCanBeMerged(const AXTreeUpdate& u1,
const AXTreeUpdate& u2);
// If 2 or more tree updates can all be merged into others,
// process the whole set of tree updates, copying them to |dst|,
// and returning true. Otherwise, return false and |dst|
// is left unchanged.
//
// Merging tree updates helps minimize the overhead of calling
// Unserialize multiple times.
AX_EXPORT bool MergeAXTreeUpdates(std::vector<AXTreeUpdate>& src,
std::vector<AXTreeUpdate>* dst);
} // namespace ui
#endif // UI_ACCESSIBILITY_AX_TREE_UPDATE_UTIL_H_