mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-04-20 23:17:35 -04:00
Availability and Change in phoneLock handled by PhoneLockHandler. Removed old implementation from onBoarding and Settings. Cleared language assets.
54 lines
1.4 KiB
C++
54 lines
1.4 KiB
C++
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
|
|
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
|
|
|
|
#include "Lock.hpp"
|
|
#include <module-utils/log/log.hpp>
|
|
|
|
namespace locks
|
|
{
|
|
void Lock::consumeState() noexcept
|
|
{
|
|
if (lockState == LockState::InputInvalid) {
|
|
lockState = LockState::InputRequired;
|
|
}
|
|
else if (lockState == LockState::NewInputInvalid) {
|
|
lockState = LockState::NewInputRequired;
|
|
}
|
|
else if (lockState == LockState::NewInputConfirmRequired) {
|
|
lockState = LockState::NewInputRequired;
|
|
}
|
|
}
|
|
|
|
void Lock::putNextChar(unsigned int c)
|
|
{
|
|
if (maxInputSize > inputValue.size()) {
|
|
inputValue.push_back(c);
|
|
}
|
|
if (canVerify() && autoActivate && onActivatedCallback != nullptr) {
|
|
onActivatedCallback(lockType, inputValue);
|
|
}
|
|
}
|
|
|
|
void Lock::popChar()
|
|
{
|
|
if (inputValue.size() > 0) {
|
|
inputValue.pop_back();
|
|
}
|
|
}
|
|
|
|
void Lock::clearAttempt() noexcept
|
|
{
|
|
inputValue.clear();
|
|
}
|
|
|
|
void Lock::activate()
|
|
{
|
|
if (!onActivatedCallback) {
|
|
LOG_ERROR("Passcode verification callback null");
|
|
return;
|
|
}
|
|
onActivatedCallback(lockType, inputValue);
|
|
clearAttempt();
|
|
}
|
|
} // namespace locks
|