From 476e1cf7aec73dba441e7bdcb7023503be2a04d9 Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Thu, 12 Apr 2018 17:59:38 -0300 Subject: [PATCH] Adjust UI with pixel perfect precision. Support devices with on-screen bars. --- .../resources/icons/+android/myview-a.svg | 20 ++++++++--------- interface/resources/images/fly.png | Bin 8688 -> 8137 bytes .../resources/qml/hifi/+android/ActionBar.qml | 4 ++-- .../resources/qml/hifi/+android/AudioBar.qml | 21 ++++++++++++++---- .../resources/qml/hifi/+android/button.qml | 19 +++++----------- .../resources/qml/hifi/+android/modesbar.qml | 21 ++++++++++++++---- libraries/ui/src/VirtualPadManager.cpp | 4 ++-- scripts/system/+android/actionbar.js | 4 ++-- scripts/system/+android/audio.js | 5 +++-- scripts/system/+android/modes.js | 7 ++++-- 10 files changed, 63 insertions(+), 42 deletions(-) diff --git a/interface/resources/icons/+android/myview-a.svg b/interface/resources/icons/+android/myview-a.svg index f8becb3850..e2c183caf2 100755 --- a/interface/resources/icons/+android/myview-a.svg +++ b/interface/resources/icons/+android/myview-a.svg @@ -3,17 +3,17 @@ - + - - - + + + diff --git a/interface/resources/images/fly.png b/interface/resources/images/fly.png index 02f72d568983840d96ee85c8fdc13775fac26919..b8b96645f8880f53c27505d4a3ee95d58d5ca337 100644 GIT binary patch literal 8137 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 literal 8688 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