summaryrefslogtreecommitdiffstats
path: root/ui.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge up to AOSP marshmallow-releaseEthan Yonker2015-10-091-102/+108
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to maintain compatibility with older trees, we now have minadbd.old and minui.old. I had to use a TARGET_GLOBAL_CFLAG to handle ifdef issues in minui/minui.d because healthd includes minui/minui.h and there was no other alternative to make minui.h compatible with older trees without having to modify healthd rules which is outside of TWRP. Note that the new minui does not currently have support for qcom overlay graphics. Support for this graphics mode will likely be added in a later patch set. If you are building in a 6.0 tree and have a device that needs qcom overlay graphics, be warned, as off mode charging may not work properly. A dead battery in this case could potentially brick your device if it is unable to charge as healthd handles charging duties. Update rules for building toolbox and add rules for making toybox Use permissive.sh in init.rc which will follow symlinks so we do not have to worry about what binary is supplying the setenforce functionality (toolbox, toybox, or busybox). Fix a few warnings in the main recovery binary source code. Fix a few includes that were missing that prevented compiling in 6.0 Change-Id: Ia67aa2107d260883da5e365475a19bea538e8b97
| * Check all lseek calls succeed.Elliott Hughes2015-04-301-1/+1
| | | | | | | | | | | | | | | | Also add missing TEMP_FAILURE_RETRYs on read, write, and lseek. Bug: http://b/20625546 Change-Id: I03b198e11c1921b35518ee2dd005a7cfcf4fd94b (cherry picked from commit 7bad7c4646ee8fd8d6e6ed0ffd3ddbb0c1b41a2f)
| * Remove unnecessary globals.Elliott Hughes2015-04-131-45/+40
| | | | | | | | Change-Id: I76a042432aede08ceaf250319cf5eeb25d601150
| * Auto-detect whether to use the long-press UI.Elliott Hughes2015-04-111-1/+5
| | | | | | | | Change-Id: Ie77a5584e301467c6a5e164d2c62d6f036b2c0c0
| * Fix ScreenRecoveryUI to handle devices without power/up/down.Elliott Hughes2015-04-101-24/+55
| | | | | | | | | | | | | | | | Currently fugu has a custom subclass to handle this. The default code supports devices with trackballs but not all shipping Nexus devices? That's just silly. Change-Id: Id2779c91284899a26b4bb1af41e7033aa889df10
| * Move "Mount /system" to the main menu.Elliott Hughes2015-04-101-40/+16
| | | | | | | | | | | | | | Everyone's adding secret key combinations for this anyway, and it's very useful when debugging. Change-Id: Iad549452b872a7af963dd649f283ebcd3ea24234
* | Merge in lollipop and attempt to fix merge conflictsEthan Yonker2014-11-061-5/+67
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will probably not compile and may need additional work. For tracking purposes so we know what might still need looking at as none of this has been compiled and tested, here is a list of the merge conflicts that I attempted to fix before pushing this set of changes: git pull aosp lollipop-release remote: Finding sources: 100% (992/992) remote: Total 992 (delta 473), reused 992 (delta 473) Receiving objects: 100% (992/992), 1.51 MiB | 516.00 KiB/s, done. Resolving deltas: 100% (473/473), completed with 42 local objects. From https://android.googlesource.com/platform/bootable/recovery * branch lollipop-release -> FETCH_HEAD * [new branch] lollipop-release -> aosp/lollipop-release Auto-merging verifier_test.cpp CONFLICT (content): Merge conflict in verifier_test.cpp Auto-merging verifier.h CONFLICT (content): Merge conflict in verifier.h Auto-merging verifier.cpp CONFLICT (content): Merge conflict in verifier.cpp Auto-merging updater/updater.c Auto-merging updater/install.c CONFLICT (content): Merge conflict in updater/install.c Auto-merging updater/Android.mk CONFLICT (content): Merge conflict in updater/Android.mk Auto-merging uncrypt/Android.mk CONFLICT (content): Merge conflict in uncrypt/Android.mk Auto-merging ui.cpp CONFLICT (content): Merge conflict in ui.cpp Auto-merging screen_ui.cpp Auto-merging roots.cpp CONFLICT (content): Merge conflict in roots.cpp CONFLICT (rename/delete): res-hdpi/images/progress_fill.png deleted in HEAD and renamed in cddb68b5eafbeba696d5276bda1f1a9f70bbde42. Version cddb68b5eafbeba696d5276bda1f1a9f70bbde42 of res-hdpi/images/progress_fill.png left in tree. CONFLICT (rename/delete): res-hdpi/images/progress_empty.png deleted in HEAD and renamed in cddb68b5eafbeba696d5276bda1f1a9f70bbde42. Version cddb68b5eafbeba696d5276bda1f1a9f70bbde42 of res-hdpi/images/progress_empty.png left in tree. CONFLICT (rename/delete): res-hdpi/images/icon_error.png deleted in HEAD and renamed in cddb68b5eafbeba696d5276bda1f1a9f70bbde42. Version cddb68b5eafbeba696d5276bda1f1a9f70bbde42 of res-hdpi/images/icon_error.png left in tree. Auto-merging recovery.cpp CONFLICT (content): Merge conflict in recovery.cpp Auto-merging minui/resources.c CONFLICT (content): Merge conflict in minui/resources.c Auto-merging minui/minui.h CONFLICT (content): Merge conflict in minui/minui.h Auto-merging minui/graphics.c CONFLICT (content): Merge conflict in minui/graphics.c Auto-merging minui/Android.mk CONFLICT (content): Merge conflict in minui/Android.mk Removing minelf/Retouch.h Removing minelf/Retouch.c Auto-merging minadbd/usb_linux_client.c CONFLICT (content): Merge conflict in minadbd/usb_linux_client.c Auto-merging minadbd/adb.h CONFLICT (content): Merge conflict in minadbd/adb.h Auto-merging minadbd/adb.c CONFLICT (content): Merge conflict in minadbd/adb.c Auto-merging minadbd/Android.mk CONFLICT (content): Merge conflict in minadbd/Android.mk Removing make-overlay.py Auto-merging install.h CONFLICT (content): Merge conflict in install.h Auto-merging etc/init.rc CONFLICT (content): Merge conflict in etc/init.rc Auto-merging bootloader.h Auto-merging applypatch/applypatch.c Auto-merging applypatch/Android.mk CONFLICT (content): Merge conflict in applypatch/Android.mk Auto-merging adb_install.cpp CONFLICT (content): Merge conflict in adb_install.cpp Auto-merging Android.mk CONFLICT (content): Merge conflict in Android.mk Automatic merge failed; fix conflicts and then commit the result. Change-Id: I3e0e03e48ad8550912111c7a5c9a140ed0267e2c
| * am 54a61179: am cfd4b286: Merge "recovery: initialize keys press tracking status"Doug Zongker2014-06-061-0/+1
| |\ | | | | | | | | | | | | * commit '54a6117935fe7470d23f7a538aeec9d6b139791b': recovery: initialize keys press tracking status
| | * recovery: initialize keys press tracking statusMihai Serban2014-06-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Checks for keys pressed return random results because of an uninitialized data structure. Change-Id: Ic8b3d453d62347921aa893403079b374c16a092e Signed-off-by: Mihai Serban <mihai.serban@intel.com>
| | * allow CheckKey to request mounting /systemDoug Zongker2014-03-111-2/+46
| | | | | | | | | | | | | | | | | | | | | Also provide a default implementation of CheckKey that's reasonable for many devices (those that have power and volume keys). Change-Id: Icf6c7746ebd866152d402059dbd27fd16bd51ff8
| * | disable async reboot during package installationDoug Zongker2014-05-231-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default recovery UI will reboot the device when the power key is pressed 7 times in a row, regardless of what recovery is doing. Disable this feature during package installation, to minimize the chance of corrupting the device due to a mid-install reboot. (Debug packages can explicitly request that the feature be reenabled.) Change-Id: I20f3ec240ecd344615d452005ff26d8dd7775acf
| * | remove DefaultDevice's UI subclassDoug Zongker2014-04-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RecoveryUI (which is the superclass of ScreenRecoveryUI), provides a basic CheckKey method that is useful for devices that have KEY_POWER, KEY_VOLUMEUP, and KEY_VOLUMEDOWN. Stop overriding it with a less featureful method; with this no recovery UI customization is needed for most handheld devices (phones, tablets, etc.). Change-Id: I7d57cfaaef79afea8af4fc3dbc570afc61aeb5bc
| * | recovery: fix epoll events type to uint32_tTodd Poynor2013-09-171-1/+1
| | | | | | | | | | | | Change-Id: I5db9987102201c18821acb45d1f824e9865a1451
| * | recovery: ui changes for ev_*() switch to epollTodd Poynor2013-09-121-2/+2
| | | | | | | | | | | | | | | | | | Convert callback events parameter to unsigned int. Change-Id: Ife0e983f307c07bf4aca807d70574aeb20c460cd
| * | allow CheckKey to request mounting /systemDoug Zongker2013-09-051-2/+46
| |/ | | | | | | | | | | | | Also provide a default implementation of CheckKey that's reasonable for many devices (those that have power and volume keys). Change-Id: Icf6c7746ebd866152d402059dbd27fd16bd51ff8
* | Fix merge conflicts and update for 4.4 kitkatDees Troy2013-11-021-8/+33
|\| | | | | | | | | | | | | | | Make a copy of libmincrypt in TWRP source so we do not have to ifdef verifier.cpp for various versions of mincrypt. Remove reboot tool from toolbox (it was removed from 4.4 and did not compile properly on some devices in older trees)
| * notify about pending long pressDoug Zongker2013-07-311-8/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recovery changes: - add a method to the UI class that is called when a key is held down long enough to be a "long press" (but before it is released). Device-specific subclasses can override this to indicate a long press. - do color selection for ScreenRecoveryUI's menu-and-log drawing function. Subclasses can override this to customize the colors they use for various elements. - Include the value of ro.build.display.id in the menu headers, so you can see on the screen what version of recovery you are running. Change-Id: I426a6daf892b9011638e2035aebfa2831d4f596d
* | Update to latest AOSP masterDees_Troy2013-09-041-9/+28
|\| | | | | | | Merge in latest commits from AOSP master and fix merge conflicts
| * add NextCheckKeyIsLong() and EnqueueKey() methodsDoug Zongker2012-12-171-9/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | NextCheckKeyIsLong() is called right before each call to CheckKey() to tell the implementation if the key is a long-press or not. (To be used on devices with few buttons.) It's done as a separate method (rather than a parameter to CheckKey) to not break existing recovery UI implementations. EnqueueKey() can be called from CheckKey() to put arbitrary code codes in the synchronous queue (to be processed by HandleMenuKey). Change-Id: If8a83d66efe0bbc9e2dc178e5ebe12acd216324b
* | Add wipe functions, compiles in CM7, text shows in UI, zips installDees_Troy2012-09-141-0/+4
|/ | | | | | | | Zip install works, had to move mincrypt code into TWRP to prevent a crash when checking the zip signature. Added wipe functions Made it compile in CM7 Made text show up in console and logging
* allow recovery UI to ignore certain keypressesDoug Zongker2012-01-191-0/+3
| | | | Change-Id: Id182bb95ffcc475c5acabb29b413e422302ae7f2
* move key processing to RecoveryUIDoug Zongker2011-11-041-0/+222
| | | | | | | | | Move the key for handling keys from ScreenRecoveryUI to RecoveryUI, so it can be used by devices without screens. Remove the UIParameters struct and replace it with some new member variables in ScreenRecoveryUI. Change-Id: I70094ecbc4acbf76ce44d5b5ec2036c36bdc3414
* refactor ui functions into a classDoug Zongker2011-10-311-666/+0
| | | | | | | | | | | Move all the functions in ui.c to be members of a ScreenRecoveryUI class, which is a subclass of an abstract RecoveryUI class. Recovery then creates a global singleton instance of this class and then invoke the methods to drive the UI. We use this to allow substitution of a different RecoveryUI implementation for devices with radically different form factors (eg, that don't have a screen). Change-Id: I76bdd34eca506149f4cc07685df6a4890473f3d9
* turn recovery into a C++ binaryDoug Zongker2011-10-311-0/+666
Change-Id: I423a23581048d451d53eef46e5f5eac485b77555