chromium/ui/views/focus/focus_manager.cc

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

#include "ui/views/focus/focus_manager.h"

#include <utility>
#include <vector>

#include "base/auto_reset.h"
#include "base/check_op.h"
#include "base/i18n/rtl.h"
#include "base/observer_list.h"
#include "base/ranges/algorithm.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "ui/base/accelerators/accelerator.h"
#include "ui/base/ime/input_method.h"
#include "ui/base/ime/text_input_client.h"
#include "ui/events/event.h"
#include "ui/events/keycodes/keyboard_codes.h"
#include "ui/views/bubble/bubble_dialog_delegate_view.h"
#include "ui/views/focus/focus_manager_delegate.h"
#include "ui/views/focus/focus_search.h"
#include "ui/views/focus/widget_focus_manager.h"
#include "ui/views/view.h"
#include "ui/views/view_class_properties.h"
#include "ui/views/view_tracker.h"
#include "ui/views/widget/root_view.h"
#include "ui/views/widget/widget.h"
#include "ui/views/widget/widget_delegate.h"

namespace views {

bool FocusManager::arrow_key_traversal_enabled_ =;

FocusManager::FocusManager(Widget* widget,
                           std::unique_ptr<FocusManagerDelegate> delegate)
    :{}

FocusManager::~FocusManager() {}

bool FocusManager::OnKeyEvent(const ui::KeyEvent& event) {}

// Tests whether a view is valid, whether it still belongs to the window
// hierarchy of the FocusManager.
bool FocusManager::ContainsView(View* view) {}

void FocusManager::AdvanceFocus(bool reverse) {}

void FocusManager::ClearNativeFocus() {}

bool FocusManager::RotatePaneFocus(Direction direction,
                                   FocusCycleWrapping wrapping) {}

View* FocusManager::GetNextFocusableView(View* original_starting_view,
                                         Widget* starting_widget,
                                         bool reverse,
                                         bool dont_loop) {}

void FocusManager::SetKeyboardAccessible(bool keyboard_accessible) {}

bool FocusManager::IsSettingFocusedView() const {}

void FocusManager::SetFocusedViewWithReason(View* view,
                                            FocusChangeReason reason) {}

void FocusManager::SetFocusedView(View* view) {}

void FocusManager::ClearFocus() {}

void FocusManager::AdvanceFocusIfNecessary() {}

void FocusManager::StoreFocusedView(bool clear_native_focus) {}

bool FocusManager::RestoreFocusedView() {}

void FocusManager::SetStoredFocusView(View* focus_view) {}

View* FocusManager::GetStoredFocusView() {}

// Find the next (previous if reverse is true) focusable view for the specified
// FocusTraversable, starting at the specified view, traversing down the
// FocusTraversable hierarchy.
View* FocusManager::FindFocusableView(FocusTraversable* focus_traversable,
                                      View* starting_view,
                                      bool reverse) {}

void FocusManager::RegisterAccelerator(
    const ui::Accelerator& accelerator,
    ui::AcceleratorManager::HandlerPriority priority,
    ui::AcceleratorTarget* target) {}

void FocusManager::UnregisterAccelerator(const ui::Accelerator& accelerator,
                                         ui::AcceleratorTarget* target) {}

void FocusManager::UnregisterAccelerators(ui::AcceleratorTarget* target) {}

bool FocusManager::ProcessAccelerator(const ui::Accelerator& accelerator) {}

bool FocusManager::IsAcceleratorRegistered(
    const ui::Accelerator& accelerator) const {}

bool FocusManager::HasPriorityHandler(
    const ui::Accelerator& accelerator) const {}

// static
bool FocusManager::IsTabTraversalKeyEvent(const ui::KeyEvent& key_event) {}

void FocusManager::ViewRemoved(View* removed) {}

void FocusManager::AddFocusChangeListener(FocusChangeListener* listener) {}

void FocusManager::RemoveFocusChangeListener(FocusChangeListener* listener) {}

bool FocusManager::ProcessArrowKeyTraversal(const ui::KeyEvent& event) {}

bool FocusManager::IsFocusable(View* view) const {}

void FocusManager::OnViewIsDeleting(View* view) {}

bool FocusManager::RedirectAcceleratorToBubbleAnchorWidget(
    const ui::Accelerator& accelerator) {}

bool FocusManager::IsArrowKeyTraversalEnabledForWidget() const {}

}  // namespace views