summaryrefslogtreecommitdiffstats
path: root/vr_ui.cpp
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2018-08-04 02:11:37 +0200
committerandroid-build-merger <android-build-merger@google.com>2018-08-04 02:11:37 +0200
commit06fcb361677479c30a1f7932762ff93193b65feb (patch)
treef6ede4d70751e7a17f7729f2a5823ae5c488a4e4 /vr_ui.cpp
parentMerge "Remove non-A/B mention from README." am: f8b04fe48d am: a5d6a661c6 am: e9775341be (diff)
parentMerge "ui: Read custom recovery UI values via system property." am: 2117b4bd07 am: 17bf8d0518 (diff)
downloadandroid_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar.gz
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar.bz2
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar.lz
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar.xz
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.tar.zst
android_bootable_recovery-06fcb361677479c30a1f7932762ff93193b65feb.zip
Diffstat (limited to 'vr_ui.cpp')
-rw-r--r--vr_ui.cpp39
1 files changed, 23 insertions, 16 deletions
diff --git a/vr_ui.cpp b/vr_ui.cpp
index b1ef646c9..a131a27a7 100644
--- a/vr_ui.cpp
+++ b/vr_ui.cpp
@@ -16,9 +16,15 @@
#include "vr_ui.h"
-#include <minui/minui.h>
+#include <android-base/properties.h>
-VrRecoveryUI::VrRecoveryUI() : kStereoOffset(RECOVERY_UI_VR_STEREO_OFFSET) {}
+#include "minui/minui.h"
+
+constexpr int kDefaultStereoOffset = 0;
+
+VrRecoveryUI::VrRecoveryUI()
+ : stereo_offset_(
+ android::base::GetIntProperty("ro.recovery.ui.stereo_offset", kDefaultStereoOffset)) {}
int VrRecoveryUI::ScreenWidth() const {
return gr_fb_width() / 2;
@@ -30,36 +36,37 @@ int VrRecoveryUI::ScreenHeight() const {
void VrRecoveryUI::DrawSurface(GRSurface* surface, int sx, int sy, int w, int h, int dx,
int dy) const {
- gr_blit(surface, sx, sy, w, h, dx + kStereoOffset, dy);
- gr_blit(surface, sx, sy, w, h, dx - kStereoOffset + ScreenWidth(), dy);
+ gr_blit(surface, sx, sy, w, h, dx + stereo_offset_, dy);
+ gr_blit(surface, sx, sy, w, h, dx - stereo_offset_ + ScreenWidth(), dy);
}
void VrRecoveryUI::DrawTextIcon(int x, int y, GRSurface* surface) const {
- gr_texticon(x + kStereoOffset, y, surface);
- gr_texticon(x - kStereoOffset + ScreenWidth(), y, surface);
+ gr_texticon(x + stereo_offset_, y, surface);
+ gr_texticon(x - stereo_offset_ + ScreenWidth(), y, surface);
}
int VrRecoveryUI::DrawTextLine(int x, int y, const std::string& line, bool bold) const {
- gr_text(gr_sys_font(), x + kStereoOffset, y, line.c_str(), bold);
- gr_text(gr_sys_font(), x - kStereoOffset + ScreenWidth(), y, line.c_str(), bold);
+ gr_text(gr_sys_font(), x + stereo_offset_, y, line.c_str(), bold);
+ gr_text(gr_sys_font(), x - stereo_offset_ + ScreenWidth(), y, line.c_str(), bold);
return char_height_ + 4;
}
int VrRecoveryUI::DrawHorizontalRule(int y) const {
y += 4;
- gr_fill(kMarginWidth + kStereoOffset, y, ScreenWidth() - kMarginWidth + kStereoOffset, y + 2);
- gr_fill(ScreenWidth() + kMarginWidth - kStereoOffset, y,
- gr_fb_width() - kMarginWidth - kStereoOffset, y + 2);
+ gr_fill(margin_width_ + stereo_offset_, y, ScreenWidth() - margin_width_ + stereo_offset_, y + 2);
+ gr_fill(ScreenWidth() + margin_width_ - stereo_offset_, y,
+ gr_fb_width() - margin_width_ - stereo_offset_, y + 2);
return y + 4;
}
void VrRecoveryUI::DrawHighlightBar(int /* x */, int y, int /* width */, int height) const {
- gr_fill(kMarginWidth + kStereoOffset, y, ScreenWidth() - kMarginWidth + kStereoOffset, y + height);
- gr_fill(ScreenWidth() + kMarginWidth - kStereoOffset, y,
- gr_fb_width() - kMarginWidth - kStereoOffset, y + height);
+ gr_fill(margin_width_ + stereo_offset_, y, ScreenWidth() - margin_width_ + stereo_offset_,
+ y + height);
+ gr_fill(ScreenWidth() + margin_width_ - stereo_offset_, y,
+ gr_fb_width() - margin_width_ - stereo_offset_, y + height);
}
void VrRecoveryUI::DrawFill(int x, int y, int w, int h) const {
- gr_fill(x + kStereoOffset, y, w, h);
- gr_fill(x - kStereoOffset + ScreenWidth(), y, w, h);
+ gr_fill(x + stereo_offset_, y, w, h);
+ gr_fill(x - stereo_offset_ + ScreenWidth(), y, w, h);
}