#include "chrome/browser/ui/views/webauthn/pin_textfield.h"
#include "base/i18n/rtl.h"
#include "base/strings/strcat.h"
#include "ui/accessibility/ax_node_data.h"
#include "ui/base/ime/text_input_type.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/color/color_provider.h"
#include "ui/gfx/canvas.h"
#include "ui/gfx/font_list.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/geometry/rect.h"
#include "ui/gfx/geometry/skia_conversions.h"
#include "ui/gfx/render_text.h"
#include "ui/views/accessibility/view_accessibility.h"
#include "ui/views/border.h"
#include "ui/views/style/typography.h"
#include "ui/views/style/typography_provider.h"
#include "ui/views/view.h"
namespace {
constexpr int kCellWidth = …;
constexpr int kCellHeight = …;
constexpr int kCellSpacing = …;
constexpr float kCellRadius = …;
std::unique_ptr<gfx::RenderText> CreatePinDigitRenderText(
const gfx::FontList& font_list) { … }
}
PinTextfield::PinTextfield(int pin_digits_amount)
: … { … }
PinTextfield::~PinTextfield() = default;
bool PinTextfield::AppendDigit(std::u16string digit) { … }
bool PinTextfield::RemoveDigit() { … }
std::u16string PinTextfield::GetPin() { … }
void PinTextfield::SetPin(const std::u16string& pin) { … }
void PinTextfield::SetObscured(bool obscured) { … }
void PinTextfield::SetDisabled(bool disabled) { … }
void PinTextfield::OnPaint(gfx::Canvas* canvas) { … }
gfx::Size PinTextfield::CalculatePreferredSize(
const views::SizeBounds& available_size) const { … }
void PinTextfield::OnThemeChanged() { … }
void PinTextfield::GetAccessibleNodeData(ui::AXNodeData* node_data) { … }
void PinTextfield::UpdateAccessibleTextSelection() { … }
bool PinTextfield::HasCellFocus(int cell) const { … }
void PinTextfield::UpdateAccessibilityAfterPinChange() { … }
void PinTextfield::UpdateTextColor() { … }
BEGIN_METADATA(…)