platform_bootable_recovery/stub_ui.h
Tao Bao 736d59c567 recovery: Fix the broken UI text.
UI text is broken (doesn't show any text during FDR) due to commit
d530449e54, which reordered the calls to
RecoveryUI::SetLocale() and RecoveryUI::Init().

Because Init() uses the locale info to load the localized texts (from
images), the locale must be set prior to that via SetLocale(). This CL
refactors Init() to take the locale parameter, and removes the odd
SetLocale() API.

Bug: 34029338
Test: 'Run graphics test' under recovery.
Change-Id: I620394a3d4e3705e9af5a1f6299285d143ae1b01
2017-01-03 22:40:03 -08:00

65 lines
1.8 KiB
C++

/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef RECOVERY_STUB_UI_H
#define RECOVERY_STUB_UI_H
#include "ui.h"
// Stub implementation of RecoveryUI for devices without screen.
class StubRecoveryUI : public RecoveryUI {
public:
StubRecoveryUI() = default;
void SetBackground(Icon icon) override {}
void SetSystemUpdateText(bool security_update) override {}
// progress indicator
void SetProgressType(ProgressType type) override {}
void ShowProgress(float portion, float seconds) override {}
void SetProgress(float fraction) override {}
void SetStage(int current, int max) override {}
// text log
void ShowText(bool visible) override {}
bool IsTextVisible() override {
return false;
}
bool WasTextEverVisible() override {
return false;
}
// printing messages
void Print(const char* fmt, ...) override {
va_list ap;
va_start(ap, fmt);
vprintf(fmt, ap);
va_end(ap);
}
void PrintOnScreenOnly(const char* fmt, ...) override {}
void ShowFile(const char* filename) override {}
// menu display
void StartMenu(const char* const* headers, const char* const* items,
int initial_selection) override {}
int SelectMenu(int sel) override {
return sel;
}
void EndMenu() override {}
};
#endif // RECOVERY_STUB_UI_H