summaryrefslogtreecommitdiffstats
path: root/gui/action.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* MTP add/remove storage instead of disabling MTPEthan Yonker2014-12-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement a pipe between TWRP and MTP to allow TWRP to tell MTP to remove storage partitions as they become unavailable (e.g. during a wipe, unmount, etc) instead of disabling MTP completely. This includes some fixes and improvements in destructors to properly remove / delete various items. This also means that we will not be toggling adb off and on quite as often. I do not like that we had to add another thread, but we were unable to use select() on the mtp_usb character device because this device does not support polling. Select always returned indicating that the mtp file descriptor was ready to be read and the resulting read would block. The read block prevented us from being able to include reading of the pipe between TWRP and MTP in the main MTP thread. We might want to add a return pipe letting TWRP know if the removal of the storage device was successful, but I am not sure how we want to implement this. It would invovle timeouts in both TWRP and MTP to ensure that we returned a failure indicator in a timely manner to TWRP and prevent deleting the storage device in the case of a failure. Right now we make no attempt to ensure that an MTP operation is underway like a large file transfer, but we were not doing anything like this in the past. In some respects we have limited control over what happens. If the user installs a zip that unmounts a storage partition, we will not know about the change in storage status anyway. Regular Android does not have these troubles because partitions rarely get unmounted like in recovery. At some point, we have to hold the user accountable for performing actions that may remove a storage partition while they are using MTP anyway. Ideally we do not want to toggle the USB IDs and thus toggle adb off and on during early boot, but I am not sure what the best way to handle that at this time. Change-Id: I9343e5396bf6023d3b994de1bf01ed91d129bc14
* Toggle MTP during ADB sideloadEthan Yonker2014-12-181-0/+2
| | | | | | | | Windows does not do very well if you try to sideload while MTP is enabled due to drivers. This will toggle MTP off and back on if MTP is currently enabled before and after a sideload operation. Change-Id: I022dbedecc97565b50b6ae1fda8922b822f63440
* Attempt to set the proper uid/gid/contexts on new files and dirsEthan Yonker2014-12-121-0/+8
| | | | | | | | | | Files and folders that we create during backups, copy log, or MTP operations often do not have the proper uid/gid/contexts assigned. We will attempt to read the proper contexts from the settings storage path and assign those same contexts to any files or dirs that we create. Change-Id: I769f9479854122b49b499de2175e6e2d026f8afd
* Update adb sideload featureEthan Yonker2014-11-081-22/+36
| | | | Change-Id: Ib503d0e87434e1a28430779302d6565211c26592
* Fix zip installEthan Yonker2014-11-071-26/+1
| | | | | | | | We never used the feature for running a custom theme during zip install. We can re-implement this later if we like. For now, we will remove this feature until we are ready to make it work. Change-Id: Ice71b0b863c7ef17376e3f973d48b810be567c33
* performance profile supportTom Hite2014-10-081-0/+4
| | | | | | | | | | | Many device trees support the recovery.perf.mode property to set various core frequencies and online/offline mode. TWRP is highly threaded, and support for multiple cores on many operations dramatically recudes the time, e.g., backups, zip flashes, etc. p2: removed user notifications Change-Id: I957b8ca40b241c0af0471327eeb329cce1816017
* add mtp responder to TWRP.bigbiff bigbiff2014-09-031-1/+26
| | | | | | Big thanks to Dees_Troy for helping with the implementation. Change-Id: I6c9c522b9c9de5dc139e2ecb0141008182ba07f0
* Support reading since_epoch and secondary brightness filesxNUTx2014-08-101-0/+5
| | | | | | | | | | | | | | | TWFunc::Fixup_Time_On_Boot: Will now try to read /sys/class/rtc/rtc0/since_epoch to correct time, if that fails it will try to use the ats files to correct time. TWFunc::Set_Brightness: One single function to set brightness from both the automated functions and the gui actions. It is able to set a second brightness path if present, it will set them both the same value. Many Sony devices have 2 brightness files in the sysfs that must be set to properly set the brightness. Change-Id: I7ca582109085dfbcb46b8de73ad031e4b7903fca
* Implement "take a screenshot" featureVojtech Bocek2014-07-091-0/+49
| | | | | | | | * Like in android - press power+volume down, screenshots are saved in /sdcard/Pictures/Screenshots (if /sdcard is mounted) or /tmp Change-Id: Iaefa15b11a1d5fdfac57d77388db1621f378a8d4 Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
* Refresh after partition changesjrior0012014-07-071-2/+2
| | | | Change-Id: Id16c84f815b1c4b8e95da142648a5a759116ee6e
* Whitespace and minor code cleanupMatt Mower2014-06-041-11/+11
| | | | | | This is by no means comprehensive, but is quite a bit better already. Change-Id: Ibc8654a5dfb0eec39cbd0b64bdb52bb4fbfe2f7e
* Add options to repair or change file systemEthan Yonker2014-06-041-0/+133
| | | | Change-Id: I9043e98e1e1ed4722f05c13a60b43d2d0bf739f6
* Add support for actions triggered by key combinationVojtech Bocek2014-04-161-11/+43
| | | | | Change-Id: I9dfa7de40229f00412d63fc9c1eb3a809a6eb2e6 Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
* Allow building of an OEM friendly TWRPEthan Yonker2014-04-041-1/+2
| | | | | | | | Disable theming Disable creating the TWRP folder for the settings file Change factory reset on data/media devices to a full wipe Change-Id: I3104282b5dd3f55dfff7c8cf39c72750af08563d
* Allow sideloading from /tmpEthan Yonker2014-02-261-4/+5
| | | | Change-Id: I7ba9a8a496536ed55241e45e18297bd824d7e28c
* Remove some unneeded codeEthan Yonker2014-02-161-79/+8
| | | | Change-Id: I52b34a316950e92a3aa4c1675475fca8dc08d2c8
* Cache results of GUIObject::isConditionTrue()Vojtech Bocek2014-02-121-7/+4
| | | | | | Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Ia50f7c365b2dc0a65ee046bb42972e3594264878
* Conditional -> GUIObject and make all gui objects children of GUIObjectVojtech Bocek2014-02-121-1/+1
| | | | | | Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Ic0a7d6354dabe5919b83942f2f1aa0715625e522
* Expansion of vibrate optionsEthan Yonker2014-02-071-1/+1
| | | | | | | Improve location / timing of vibration Split out vibrate settings for buttons, keyboard, and long actions Change-Id: I282825cc5f3e44ed6dcabe65dc1f4cb21b407b67
* Add haptic feedbackSamer Diab (S.a.M.e.R_d)2014-02-061-0/+6
| | | | Change-Id: I15d723f73c0b0bb4a40645d1c3f4c1c616f36998
* Update partition sizes after sideloadDees Troy2013-11-261-0/+1
| | | | Change-Id: I4dbb4677f1c3bcfa0b0a9248ae0b411c155f927e
* Add TWFunc::Exec_Cmd() with no 'result' agrumentVojtech Bocek2013-09-121-14/+10
| | | | | | Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Id8acff1ac9b3c7e4b562c80562a8ff42a1d132b9
* Make fixing su perms automaticDees Troy2013-09-121-2/+3
| | | | | | | | In 4.3+ with SELinux, su perms will be lost on every reboot so users will get the prompt to fix su perms in TWRP every time. Make fixing the su perms automatic instead of nagging the user. Change-Id: Ia8a2652018db5e1f6ffc5fec2a4ac0db3a8f32bb
* Pull ROM info from build.prop for backup namesDees Troy2013-09-121-2/+23
| | | | Change-Id: I7847fca22b5d4f0a35da41625b15bd677a1e9768
* Add a TW_NO_TIMEOUT optionRicardo Gomez2013-08-251-1/+6
| | | | Change-Id: Ifb3a5bd9f1e6c2e9810c90b0aec198e91d5956fc
* Unify indentation and little clean-up in TWRP filesVojtech Bocek2013-08-241-249/+249
| | | | Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
* Fix some issues with wipe partition listDees_Troy2013-07-011-0/+7
| | | | Change-Id: Ie7d5878faf86b8fa824b72211be7fd3596b471d7
* Support encrypted backup filesDees_Troy2013-06-221-4/+33
| | | | | | | | | | | | | | | Also includes features merged from: Update twrpTar by kokotas Revised function entryExists(). Added function to get archive's uncompressed size. Added option to exclude item(s) from the archive. Revised forks() http://review.teamw.in/#/c/590/ Change-Id: I01fa2c81643161984eff2625247af75990684bd9
* Add new SliderValue GUI widgetVojtech Bocek2013-04-041-0/+27
| | | | | | Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Ic5d44314f501341140dd7059d1cb753341f5844c
* Move all AOSP code out of recovery binaryDees_Troy2013-04-041-61/+67
| | | | | | Improves license compatibility between GPL and Apache Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
* Add partition list GUI elementDees_Troy2013-03-301-1/+62
| | | | | | | | | | | | Add partition list GUI element and update backup, restore, mount, storage selection, and wipe sections of GUI and partition manager code to reflect the new GUI element. Update ORS engine to handle new backup and restore setup. Fix a bug with decrypt. Add 1080x1920 layout. Change-Id: Iaa2f44cb707167e66f935452f076ba00e68a2aa4
* Check for root and root perms and offer to install/fixDees_Troy2013-02-211-19/+39
| | | | | | Also fix sort order for file selector by date and file sizes Change-Id: Idff9fe4232c19d4ed1082e78fabe6f921aa0a114
* This adds a 60 second screen timeout for TWRP. Might consider making this configurable in the future.bigbiff bigbiff2013-02-131-0/+3
| | | | | | | | | | | | | | | Will also set overlay to lockscreen so we don't have inadvetent screen selections. Touching the screen will bring the display back up. add back check script for poweroff move diff time function to twrp-functions.cpp make sure we chmod after copy_file add read_file and write_file functions to twrp-functions.cpp make single thread try to force update screen add forceRender drop caches after tar processing Change-Id: I3c5c509dd39dbb05451bbfe5d8b56d53c90d8d1b
* Remove thread logging from actions.cppDees_Troy2013-01-281-3/+0
| | | | Change-Id: I2d2af963f4d6990191d91a336f682516af61d734
* adding sideload page with wipe cache and dalvikbigbiff bigbiff2013-01-251-3/+9
| | | | | fix variable Change-Id: I72eed7b4d709a184e53cc94165a1817a7dcf041e
* Use GUI for ORS instead of console onlyDees_Troy2013-01-251-23/+30
|
* Convert AOSP commands to ORS for encrypted devicesDees_Troy2013-01-241-0/+12
| | | | Change-Id: I6a76a51cd9efd7db67d7abeeb26f9bdd0eebf5a9
* change tar create to pthreadbigbiff bigbiff2013-01-241-1/+2
| | | | Change-Id: I5a33d207ec6683de20da37e6f4f174c67785fc52
* Improve ORS sideload to display GUI with cancel buttonDees_Troy2013-01-181-2/+4
|
* Fix problems with thread creation on some devicesDees_Troy2013-01-161-1/+35
| | | | | | | | This fixes a problem with not reaching the backup completed page after a backup is complete on certain devices (GNex, Note2). Changing the stack size to 512KB seems to be the actual fix but leaving the other changes in place as they may be helpful or are better practices.
* Add libtar to TWRP instead of using busybox tarbigbiff bigbiff2013-01-091-28/+29
| | | | | | | Add proper mkdosfs tool Add fuse to TWRP Add experimental exfat-fuse to TWRP Convert all system() functions to use new Exec_Cmd function
* Update injecttwrp for Epic 4G TouchDees_Troy2012-10-161-1/+23
|
* Finalize 2.3.0.0Dees_Troy2012-10-101-14/+4
| | | | | | Fix permission setting for other Add new fix permissions to GUI actions Update version number
* Fix output of version numberDees_Troy2012-10-011-1/+0
|
* Save version number to storageDees_Troy2012-09-271-0/+1
|
* Update sdcard partitioning to C++Dees_Troy2012-09-271-68/+4
|
* Port backup name checking to Partition ManagerDees_Troy2012-09-271-3/+2
|
* Port reboot functions to C++Dees_Troy2012-09-271-12/+11
|
* Add option to wipe android secureDees_Troy2012-09-261-0/+2
|
* Fix permissions updatesDees_Troy2012-09-261-8/+17
| | | | | Also redirect stderr output on terminal commands for display in GUI console
* Fix SDCard partitioningDees_Troy2012-09-261-3/+11
|
* Add and improve OpenRecoveryScript supportDees_Troy2012-09-201-3/+3
| | | | | Improve zip finding in ORS engine Add support for restoring with just a backup name
* Fix ext storage and zip pathsDees_Troy2012-09-191-0/+26
| | | | | | Fix a bug with handling external storage during boot. Check zip root path when switching storage and ensure that the path is in the new storage path to prevent user confusion.
* Improve adb sideload - use storage vs tmpDees_Troy2012-09-191-11/+8
|
* Improve adb sideload -- add cancelDees_Troy2012-09-191-4/+30
| | | | | Also copy zip from /tmp to storage and remove from /tmp to prevent running out of RAM.
* Cleanup extra-functionsDees_Troy2012-09-181-27/+13
|
* Update backup and restore code, adb sideloadDees_Troy2012-09-171-5/+38
| | | | | | | Fixed a problem with using make_ext4fs by making its lib a dynamic lib. Added ADB sideload zip install feature - no way to cancel it yet. Improve backup and restore code.
* Add wipe functions, compiles in CM7, text shows in UI, zips installDees_Troy2012-09-141-39/+34
| | | | | | | | 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
* Make text appear in GUI console, Zip install works.Dees_Troy2012-09-121-0/+3
| | | | | | | Move TW zip install code to C++ so that it can use the ui->functions. Bring in mincrypt code to fix a crash during signature checking.
* Zip install works againDees_Troy2012-09-111-9/+14
|
* Improve storage size code, mount, unmountDees_Troy2012-09-101-15/+7
| | | | Add flag parsing from recovery.fstab
* Add processing of fstab, mounting, and decryptDees_Troy2012-09-071-20/+20
|
* Hax to make it bootDees_Troy2012-09-061-4/+4
|
* TWRP-ify AOSP codeDees_Troy2012-09-051-0/+1134
Pull in most TWRP sources Stub out partition management code Make it compile -- probably will not boot Kind of a mess but have to start somewhere