| Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: Ibe372a372333c357810be2afcb3796723ca370cb
|
|
Change-Id: Id34055262b7c711a2ee71d97d27503a887d35b76
Signed-off-by: betaxab <betaxab@gmail.com>
|
|
Change-Id: I849acef3e19519bfe6b8dc5fdd9a50eda3f03e2a
|
|
Change-Id: Id1fd250c69cdc91e8b3e76d056fb1a5935457cdd
|
|
This is need to avoid overlapping between the third row of buttons and
the current active slot, actually if you enable edl button, the active
slot will overlap the button.
Change-Id: I6cfc945c2d0be0530dad7b4ce0f0e2ca29c297c4
|
|
Check boxes that do not have a default value set usually required
you to tap them twice to toggle them on the very first time. This
patch checks the return value from GetValue and sets a default of
0 if the variable does not already exist in the Data Manager.
Change-Id: I1ff26e756764ed2a00b10102f13a5bce0119771a
|
|
Set TW_INCLUDE_REPACKTOOLS := true
Must also have:
AB_OTA_UPDATER := true
Use magiskboot and provide GUI options to allow users to repack
their existing boot image to install TWRP (or kernels) so we can
stop having to provide installation zips for AB devices. There is
also an option to try to fix a recovery bootloop if the kernel
has been patched to always boot the ramdisk for root, etc.
You will need to pull the below repo into external/magisk-prebuilt
https://github.com/TeamWin/external_magisk-prebuilt
Change-Id: I74196cc6f095a7576d61886dc96cbc18deba9b04
|
|
This patch allows items to have more than one action surrounded
by the <actions> tags like other GUI elements. The patch also
adds new twrp command line options that let you reload the theme
and switch to a specific page from the command line:
adb shell twrp reloadtheme
adb shell twrp changepage=advanced
Change-Id: I838ea380a508be07b9fa617034d1954e116febd6
|
|
Edl mode is available only on qualcomm devices and it used to fully
restore the bricked devices. I made the button available only if
TW_HAS_EDL_MODE := true like the download button. I set the edl
button to the right of the download button, so devices can support
edl button and download button. I also added the translation for
all languages.
Change-Id: I69d1058b8c050b722395c7b3da6dce1ccfbe7a91
|
|
Change-Id: Iab770ee47420deae08cc3c20127f36f53036fbec
|
|
This patchset updates all the places we touch cache on AB devices
and non AB devices so that we can write to the appropriate
location. AB devices removed the cache partition and moved it to
/data/cache.
Change-Id: I485ec205a604f1f07ceb7700ae9c4e720fd55c3e
|
|
Change-Id: Ibd2f67391ce6d7774498839829e0de9391508781
|
|
-switch to full screen when user is not suppose to do
anything but wait for current operation to finish
Change-Id: Ib54afc380a5cfe70e011e782cf3d7fe4c80958a4
|
|
instead of hard-coded /system path
I updated most of the references I found,
but there might be more
For devices that have to mount system at /system_root,
this allows system to be bind mounted to /system
and detected properly by TWRP
Change-Id: I9f142fd8cec392f5b88e95476258dab9c21a9aac
|
|
Change-Id: I8f92c19f9e947da29dc25f3b88f69413a13af64d
|
|
Thanks to David Viteri for this one.
Signed-off-by: Humberto Borba <humberos@omnirom.org>
Change-Id: I566179921ba1cdb3b79836eff2b78cd6289eff94
|
|
Change-Id: I2ca7580bbde5a8903b9ba5c1513ddba887e8d49e
|
|
Change-Id: If07b7655265c94ad6b7ffa06629252749b5616e9
|
|
Change-Id: Ib15052832c2b25465b8a1d5c30d4659653b99f09
|
|
Change-Id: Ib3a188f867330013069b7d443bcbad5dc3bc1e90
|
|
Change-Id: I3ea752697cc7f085541d961a6185194badb99015
|
|
Change-Id: I91b7e674cd74d9069ee0ae3e70dbfd4a6a051756
|
|
Change-Id: I68d71b516fc47c72a19f4b8fb7167086814cf148
|
|
Change-Id: I3790f1c02daca2fcbd3afb37e0e3d1b4529aed67
|
|
Change-Id: Ifc1ac9416177c0b211506174ce23ec7c3569777f
|
|
Change-Id: Ia49a9329fa6f9c0ed26aa60a3175bc7944e8f3ac
|
|
Change-Id: I3141cc4b1b2c5070d30485f0523e4e606f7707aa
|
|
Change-Id: I5bb3297a9bfd01d242023bbf1fb1f72e9c80404e
|
|
Change-Id: Ib8c67017dbf3a217332109b954d6123cb1a94f84
|
|
Change-Id: I2f02fa1b004c09914c618fe327490b1bb59f534d
|
|
Change-Id: Ibba47a1361c892159b704182b5d06aca8418aaac
|
|
Change-Id: I30d7a3d38654292d38e3f69a196bc03928b7d22e
|
|
Auto detect and support both the v1 and v2 fstab formats
Support putting TWRP style flags in a separate /etc/twrp.flags file
twrp.flags format is the same as twrp.fstab (v1 with TWRP flags)
Support using a wildcard in a block device and find all partitions:
/usb-otg vfat /dev/block/sda*
Support using sysfs entries (voldmanaged) and read uevents and scan for
wildcard partitions from uevent data. (twvold?)
May not be complete for some of the newer flags found in fstabs in newer
build trees and there is a slim chance of a crash if the user removes a
removable device while TWRP is performing actions. May need to add some
kind of mutex to prevent the 2 threads from causing this crash. We need
to start somewhere though and this change is pretty innocuous when not
using a v2 fstab.
Change-Id: I617d97c7db332cbe671a9d2b8ad98b3d9c4f03cc
|
|
Restore adb backup files that TWRP made to your PC.
Put files in your backup directory to see them.
e.g. /sdcard/TWRP/BACKUPS/<sn>
Change-Id: I2c57970d77b64c39a302159041456e761c185259
|
|
Change-Id: I1642a2c89e50438fdd7308dba318d52440b0809f
|
|
* Revert: Make legacy props an option disabled by default
(reverted from commit 75aa615767457f2b62dda65b16ded41b0e6df11f)
* Instead check for ANDROID_PROPERTY_WORKSPACE in the updater-
binary to determine whether legacy property service can be
used
Change-Id: If68d5cca9a2b56edcb1c73db0474668cf46d8c91
|
|
Change-Id: Id0bb17ebd11e120b4676c41d6553e6a830ac7ee9
|
|
Change-Id: I3ed9b5731d63f69748fbbf99c626669db39a1eb4
|
|
* The scrollbar is not shown when more options
are actually available.
Change-Id: I78b223c5fe12f0cbd73357ca6615f83ff04201e1
|
|
Change-Id: I8bdb4b8a24cbdd0f68d45676f2858eb63f74677b
|
|
This patch is to refactor twrpDigest using polymorphism
and inheritance to use the same call patterns for creating and
reading a digest. Now a library.
Use SHA2 from libcrypto. SHA2 is default if device has libcrypto.
Change string MD5 everywhere to use digest or Digest instead. Updated
string tags to digest. Translation will be required.
Switch out digest code into a driver class from partitionmanager.
SHA2 is better for digest creation due to decreased collision space
compared to MD5 and SHA1.
See https://en.wikipedia.org/wiki/SHA-2
Change-Id: I74b5546789990b12aa4ce2e389d25f80a3fe213f
|
|
Change-Id: Id3b4cca16ec18f63fb71f7e0ae09d2cc2d8516f8
|
|
Apparently we are supposed to delay going to the next line until the next
character is printed.
Change-Id: I5cd0cc128cc00dcdd0dd2dd9508281f1249db257
|
|
Change-Id: Idc3d3c79b8a7acf0f632ed39703766005d73de29
|
|
Change-Id: I883112e2618f560e96002e2076e2735cc20cfac3
|
|
Change-Id: Id48245218dc3ee3c6506521ce0134e6a579b6f4a
|
|
- rename __gui_print to internal_gui_print (__* is reserved for compiler)
- translate outstanding messages in internal_gui_print
- add locking because background thread could print while we render
- minor cleanup
Change-Id: Ib687d2cfb4763ad08ad4d4b76daf5b129d61d2e2
|
|
Change-Id: I48ac4bfe55cfd4ee7805b86f5af31e915dfaaaa7
|
|
Change-Id: I13c1b6be4e1f7dcd026bfaa03d0c097200d498ba
|
|
Added new strings (Scripts language_helper.py and compare_xml.py were used).
Change-Id: Id6f220d17e748cd10ff8ff8b21c2e40d84be5ec9
|
|
Change-Id: I991ad86a453273139bcafbb9f68898631dfb6b51
|
|
Change-Id: I20b8e99bf011e8f3894f20fef1a5d46cca4cd3b6
|
|
Change-Id: I03c194ccf270ef9dfb910626741d6be76945df05
|
|
Added new strings and minor fix for Russian localization.
Change-Id: I696b9088813a543e5b05366552a6630828dd12df
|
|
-Change backup display name to say that we are excluding storage
-Add warning message during backup of any partition with data media
-Also eliminate unused variable from twrpTar class
Maybe this will make the people in issue 276 happy, but probably not because
they already lost their data, or because the warning text is yellow instead of
red.
https://github.com/TeamWin/Team-Win-Recovery-Project/issues/276
Change-Id: I98303fe7f6b7a25fea029637c90145258d41ee46
|
|
Make sure that opendir succeeds before continuing.
Change-Id: I3c96002ab830f4df2041044d411a7bac42a5b8f4
|
|
It's not necessary to rely on the success of a call to getpwnam() for
the uid/gid of a file stored to sdcard (or external storage). Use the
definitions in system/core/include/private/android_filesystem_config.h
Change-Id: I979cfa0c74ecc927b88b0967cc56a66da237cc60
|
|
* If TW_THEME is not defined, then check both DEVICE_RESOLUTION and
TARGET_SCREEN_WIDTH x TARGET_SCREEN_HEIGHT for width/height. Use
the determined width and height to automatically select landscape,
portrait, or watch, as well as associated mdpi/hdpi.
* Improve the display of the error message so it fits in a standard 80
character width terminal without line wraps.
* Write relevant errors for missing themes that clarify what went
wrong.
Change-Id: I94b02349ce38bf6a9cecde403d78ff2490821d8a
|
|
Change-Id: I7814e3960914ebefdc03cf9cf6f44e193efea932
|
|
Change-Id: Ic1cba57b6d0fbefee2391d06d140da9e4e3dbb32
|
|
Commit 'Copy Kernel Logs' did not adhere to tab spacing.
Change-Id: Ie036aa6b973e01f992199787c64b54a6ccb73a7e
|
|
* Missed this one in the first sweep
Change-Id: I5f2753f93ce3e9888c553de4c2e510137e818a29
|
|
Change-Id: Icab9db0ceb63edba021cc190eea2ebbc87cf3442
|
|
Commit 9472ba1d introduced new behavior for KEY_POWER which
needs a corresponding change in the theme to call the
setbacklight action whenever the power button is pressed.
Change-Id: Iacd46436b04aba1ecb1adbb684c56c3ef994bfe0
|
|
Change-Id: I716ae0664ea454706cb940d1bfd38259da53d176
|
|
Use LOGERR(), consistent with rest of TWRP.
Change-Id: I75a44d807a17aea6027830d58c37ac130fee12a7
|
|
Change-Id: Ib92e294872c1408cc749fdb0db3bbf56579eb070
|
|
* The TWRP_SH_TARGET variable is only used if TW_USE_TOOLBOX == false,
so it doesn't really need to be defined.
* Move the busybox sh symlink creation nearer to the toolbox/busybox
build rules and take advantage of LOCAL_POST_INSTALL_CMD which has
been around since Android 4.3.
Change-Id: I7850f9c3e113d43ad519dd5c9a7d25e36ec1c426
|
|
* Unify the building of pigz and its symlinks under the same module.
LOCAL_POST_INSTALL_CMD has been around since Android 4.3, use it.
Change-Id: I6a1f74216b6f5a5283fc17839b9b6f19571f3be5
|
|
Change-Id: I7f807a2f140068181524d8e868d029b4d94c70e8
|
|
Create GUIAction to handle KEY_POWER with a screen backlight toggle.
Change-Id: Iad0a7923b4a776e0336722db74d6fc46cd0107a2
|
|
Change-Id: I7410a0c8e439eec90a955ee9201efd9a92bb9635
|
|
Change-Id: I2397d0bd221dcf5c9d0f971ba157519bcf014a70
|
|
Change-Id: Ie0b97da2cce7bb93307ed49b1138bc2f36df34d0
|
|
Change-Id: I93c65973679894bb8587da4b38b410d38036b8bd
|
|
Change-Id: I1181307989c7478ac6b84bf77732ee5dcff52ed1
|
|
* Ease the compilation with Lineage/CM configurations
when TW_THEME or DEVICE_RESOLUTION are not defined
Change-Id: I35a8ce651ba5333c8426baa3d70fcbc42a2e5e59
|
|
Current use condition is LG V20, where the secondary screen is
actually just a corner chunk of the main screen.
In this case, we need to shift the UI down some pixels in order
to see it all, but just using Y offsets resulted in losing
the rest of the GUI below.
Example in BoardConfig.mk:
# Shift TWRP off the secondary screen
TW_Y_OFFSET := 160
TW_H_OFFSET := -160
Change-Id: I5a06638ba0d05e5b9fd8a6245c630d6ea3394f78
|
|
Change-Id: Id85fdf0f4dee02f8ee3ae50ec42423c6a154a3eb
|
|
Change-Id: I08690d5a6f4551cb8c8a0d063a09230fd4773487
|
|
Change-Id: Ice2bb6c66d47ca2da968f223dd47207159cc0b66
|
|
Note: I will have to add a build flag for excluding the app later for
watches and maybe Android TV. I will also have to add support in the
tablet and watch layouts later. I will merge this for the initial roll out
to select devices and finish up later.
Change-Id: Ia4ce5522fae542afa1539b10c0691315392a19ab
|
|
Update slovak language on behalf of translator.
Change-Id: I90f289dd082aef1780d63b4880092f57c48ad9ac
|
|
Change-Id: Ib688ddd0c32d3999590cacd86b6d9b18eac336e9
|
|
Change-Id: I7eaf80e327985f53791f90fbdebad022a9650d31
|
|
Change-Id: I1ff883375a0a769bf27a834c9bf04c6cdbb42117
|
|
Give user option to copy kernel logs to current storage
Change-Id: I0c61122fb34826ddb08977e6cbf98e3adf477acd
|
|
Rename twrpDU.* to exclude.*
Remove global variable for du and replace with partition specific
variables.
Use separate exclusion lists for backups and wiping.
Clean up some includes
Fix some parenthesis in twrp.cpp that I messed up.
Note: twrpTarMain command line utility compiles but probably does
not work correctly yet due to not properly setting part_settings
Change-Id: Idec9c3e6a8782ba53f3420fa79ba33394f4f85fb
|
|
busybox sh does not seem to work properly in 7.0 trees so use
mksh for sh instead.
Change-Id: Ia33bc3894f929b1348c8714d4ddd00a2671c7e94
|
|
We can use switches and enums to make things more understandable
and work with results in a more sensible manner.
PS2: Move file MD5 verification and error handling into
a separate function to reduce code.
PS3: Default to false in Check_Restore_File_MD5 function
Change-Id: Id3ee0bb444cf13be67bb5dec2c43f7c26a86b954
(cherry picked from commit 5c3950716e5c7c6279efd5f3f338d6d22e5215e2)
|
|
PS2: full_filename is not a dir
PS3: use a consistent format of always assuming directory
is missing the trailing / + fix whitespace alignment
Change-Id: Ib963473ae10571b3d069b326d024ca04c7224dda
(cherry picked from commit fa4ff144374474c541351d153549ad11d4396614)
|
|
The PartitionSettings struct contains some data elements that are duplicates
of data elements in the TWPartition class that is contained within the
PartitionsSettings.Part element. We will eliminate this duplication to help
reduce the chances for programming bugs.
Specifically, this fixes problems where the current file system does not
match the backed up file system.
Change-Id: I02f236e72093362050556a2e53a09d1dbb9a269d
|
|
Change-Id: I668604cddc8e8afbf78709f3f872bea4e9f4aa06
|
|
The old pow function doesn't work for other power than 2
- replace pow function by a squared one
Solve the TeamWin/Team-Win-Recovery-Project#646 issue.
Change-Id: Id177300d45a7b49ff983795288434d910eb35c2a
|
|
If 'reboot after install' is enabled, follow the standard reboot
routine to process 'No OS' and 'Install SuperSU' checks.
Since the system reboot routine is repeated several times, it has been
separated into its own routine.
Change-Id: I4c1882ecb8dc2d153ec2378b2e0973ab1a2a8278
|
|
* Create correctly named data manager variable 'tw_install_reboot'
* Make configurable through Settings
* Remove closing tag space in theme files (not personal preference,
but should match surrounding code style)
* Fix the "two presses needed to enable" issue for the checkbox on the
install screen
Change-Id: I0ceb60b4888a672e2f0ecb5672b03cc86615621a
|
|
Provide a countdown from 5 sec for the automated reboot after install.
Include a cancel button to interrupt the process.
Change-Id: Ib5e1447918adfde45eba361c088800812b690890
|
|
* Create data manager variable for 'tw_disable_free_space'
* Make configurable through Settings
* Fix the "two presses needed to enable" issue for the checkbox on the
backup screen
* No need to capitalize every word, but do specify precedes backup
Change-Id: Id436cef13e4ca9349618420aac03862ec4e3c35e
|
|
Done using:
find -type f -name *.png -exec optipng -o7 -nc -fix {} +
(-nc is required as TWRP png lib can't handle color type changes)
find -type f -name *.png -exec advdef -4 -z {} +
(use Zopfli compressor on insane prefix to reduce size even more)
Total amount of bytes saved: 317,491
Change-Id: I545c678f71942e6ceb95acb631841ea7ef82a049
|
|
Change-Id: I6ae96b60d34fa4e4b23cd1e5a4fffff3d00451c7
|
|
The 'state' parameter in GUIAction::NotifyTouch() is used in the
function.
Change-Id: I0744c7aa1542d771dbd2916638fbdd53e9681f86
|
|
* Send the cursor to the end of the input text
Change-Id: Id4f20717134cd38188cc1107f73dcd6bb995f377
|
|
Translating CR to LF was an old hack that breaks Enter in nano.
Change-Id: If259e8b133f2f56f4126a1fb68856bf014a2daae
|
|
Functionality for client side to backup
tar and image streams over adbd to the client under backup.ab.
Using adb backup on the client side you can backup the partitions
TWRP knows about.
On the client side you can do the following:
adb backup -f <filename> --twrp <options> where options are
--compress: compress data
system: backup system
cache: backup cache
data: backup data
boot: backup boot
etc for each partition.
You can string multiple options,
i.e. adb backup -f <filename> --twrp --compress cache system data
adb backup in TWRP will take any option corresponding
to TWRP fstab partitions, e.g. efs boot as well.
If you do not specify the filename with the -f option,
adb will backup your data to a filename backup.ab on the client.
You can then rename the file and encrypt it with desktop tools.
If you don't want to use command line arguments:
adb backup --twrp
will bring up the gui and allow you to choose partitions
from the backup page.
To restore the backup use the following convention:
adb restore <filename>
Structures are used to store metadata in binary inside
of the file itself. If the metadata structure is modified,
update the adb version so that it will invalidate older
backups and not cause issues on restore. When restoring,
we currently do not support picking specific partitions.
It's all or nothing.
Change-Id: Idb92c37fc9801dc8d89ed2a4570e9d12e76facf8
|
|
Some words are too big for the boxes
Change-Id: I48c2361dd9c7937361c3fb63b9bd8834c57fe0e0
|
|
Japanese font is NotoSans which is licensed under SIL OFL.
Change-Id: I6f50edbca72c7e58ce0e96aee98a0303bd1a4254
|
|
Change-Id: I4ec685a9d70173c1e008beb61cdead6af5c2aae0
|
|
Change-Id: I4591a5fae396e7a993d4f70d80a1d1f3b2a83654
|
|
Change-Id: Iabd66596c0d1b83935c4adc4ac048f3881284269
|
|
Change-Id: I23b2c44afca5c903becd201503f81766828c9304
|
|
Change-Id: I5cd1b9c394c2777503e5567aaaa01210cfdb4caa
|
|
In the case of password entry, the two differ. Password entry was broken
by the earlier commit entitled "Improve input box text handling" because
it started using the displayValue as the actual value, even in cases where
they differ because of a mask value.
Change-Id: Iaf5a67e1d928f34595962a1f1b80eebb64e8b493
|
|
Change-Id: I45a6a75d2b9332e523a7f61f19594c4029665ed7
|
|
Added translation Reboot Option and minor fix for Russian localization.
Change-Id: Ibeade0ce85ac65daf68dfd6b085a32148f66d1cb
|
|
Change-Id: I65f16530565c4b510274c72227a5f1483519a677
|
|
Change-Id: Ic9d51ddb7a8e47c62399d2e3101e788994276104
|
|
Change-Id: I33acec5b4d0a371978bf2a6ab3beb26d0d18400f
|
|
This makes the terminal grab focus no matter what on SetPageFocus
which isn't ideal but it's unlikely that any other visible input
elements will be on the page with a terminal anyway.
Credit _that for pointing me in the right direction for this fix.
Change-Id: I2b0e6fc1169521f58e863c58f7ef3578413dfb21
|
|
This is a simple patch to allow users to reboot
after installation of zip queue. Current timeout
is 5 seconds before reboot.
Change-Id: I1a18cbf7025086e35031ab7241b330babebb8343
|
|
The progress bar will now be updated during image backups, restores
and during image flashing (except for sparse images which will require
significant changes to libsparse, and except for mtd nand using
flash_utils).
The progress bar will now be updated mid-file for file systems (tar) so
the user will see changes even during large file backup / restore.
Add a new progress tracking class to simplify handling of progress bar
updates. The class will only update the progress bar 5 times a second to
reduce the CPU load from updating the GUI frequently which does affect
backup times.
Change-Id: Iff382faef3df1f86604af336c1a8ce8993cd12c5
|
|
Change-Id: I7c5a0fbb1853836cfb5a7d1dfbbeb5f5613572b7
|
|
translated by @dadi11 & @linar10
Change-Id: I09a550c3ee99d44c4ada0bb7d71eb763471c7fda
|
|
Change-Id: Ibcad999a1276b4519fc2b104b458ee77c984dc8b
|
|
Updating and minor fix of the translation for Russian localization.
Change-Id: Ic68e0580a12521e71a8da926901a30a31489a079
|
|
Translated by: Death Mask Salesman
Change-Id: I87f1f4417689b62c171264bfc05bf58e2ddfea03
|
|
Change-Id: Ia0bf0a3e1831016a0a418095356e236d55b07fe6
|
|
add more strings
and fixes my mistakes in crowdin
ps2 remove whitespace
Change-Id: If79e61fba5c1b2e54be29286b23a1b418095b07c
|
|
We don't translate anything for the splash screen currently so
this will slightly reduce startup times and prevent the code from
running when it's not needed.
Change-Id: I8a8e8be5247d8e8b148db578c12bce5d370123a8
|
|
I think this feature was used way back in the very early days of
TWRP 2.0 on the Kindle Fire and has not been used since. I see no
reason to keep it around for now and we can always reinstate it
later if for some reason we need this feature again.
Change-Id: Ie9f3e5db7190732f813ae1e152aab2d85a4ca98c
|
|
Change-Id: I79cfaac1adf85d1ee5514bf5266930823c1a15ff
|
|
- Reduce code duplication for parsing of include files
- Fix crash when styles and templates from included files are referenced
- Fix bug with path concatenation if more than one file is included
Change-Id: I06cd720188df272180fb359097afd73a85952fa8
|
|
All fonts were extracted to /tmp/extract.bin which was deleted after
the initial load, so reloading for scaling failed.
- extract fonts to /tmp with original name and don't delete them
- minor code cleanup
Change-Id: If8a0f657a7ef4c418fd5cc8550a24de44a38f303
|
|
Uploaded on XDA from XDA-User "kodein"
http://forum.xda-developers.com/showpost.php?p=65371227&postcount=1400
Change-Id: I6c3c4fe90b91a21400b11541f3895d92cc80ea1d
|
|
Change-Id: Iceaae3f7f20c3c6f23da807786b4cf4739c887c9
|
|
Change-Id: I39218f2485a2c2c95f0e400c31356bedc4973f6c
|
|
CM13 and up no longer use the two method scheme.
Change-Id: I21154becb5d7e77a54a5a07e649fe64829173a01
|
|
Change-Id: I3159a2a0c37589f9472aba83b699840356da33a7
|
|
On at least one device I've tested (htc msm8960), setting the
brightness after gr_init() is necessary for the splash to show.
Note that at this point in the boot process, the settings file has
not yet been read, so tw_brightness has its default value of max
brightness. When settings are finally loaded, the correct brightness
is loaded for the GUI.
Change-Id: Ifc58c1dc80ed9e6f6b2a269a9bb6764038626c84
|
|
Change-Id: I05d0e8516686ba2610ea4b437c83323e84eb4595
|
|
Change-Id: I949fe4bd99d2a4471fef3e3967980a6163943e71
|
|
- PS2: generic xml instead android xml
- PS3: formatting
Change-Id: I4c552e172d670278ab2bad1897ceb89b7ee7fec2
|
|
Change-Id: I06ab906ed94b1aaea35c32494880bf85d7564d4d
|
|
Seems that previous translator is overmind
Anyway, thanx him for initial translation
Change-Id: Ia98e344c24671cb60a0765e7c6dcb8aace6428fb
|
|
also correct typo in all language files
also remove dummy language files for ES and FI
german translation was done on omni crowdin by multiple translators:
https://crowdin.com/project/OmniROM/de#
result was updated in line with latest changes (as of 02032016) to en.xml
Change-Id: Iddd8dbee7e050833a4dc61174288514d408267f7
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: I79d58fd680dd04161b89d42fed04a86a931defd3
Signed-off-by: Xuefer <xuefer@gmail.com>
|
|
Change-Id: I5d2d92f0d24228de9c63640d866e087542499d9d
|
|
Fix incorrect translation Again. Sync en.xml changes.
Change-Id: Icc9020095f7b795758457ba5a661c22a8ef13267
|
|
1. ws fix
2. typos
3. use double-width Chinse punct
Change-Id: I561295c2e5562c59ce005459d1f178241130c6cd
|
|
sync with en.xml and update translations accordingly
Change-Id: Ic67b0496145c8a450c198520d7bb667dfe31f16d
Signed-off-by: Xuefer <xuefer@gmail.com>
|
|
Change-Id: I663f327585b4037eba62508a1f6484ca152bf3c5
|
|
fixes auto-generating backup name before editing the backup name.
Change-Id: Ied1c07b7dbdec9fa7fc80b3345970d95ac0ed1bb
|
|
minor changes to the storage selection that was intrduced with commit 16373 (improve sdcard partitioning)
Change-Id: I50437111f45d0b7e2b78a655424daa63aea374cc
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
list height now accomodates 4 entries
Change-Id: Ib5a5e2bad408f393abbd433b5f23a5d25711ca6c
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: I5deef665ab374491c0f498b498971abd525d1111
|
|
Fix permissions rarely fixed anything on more recent versions of
Android and usually made things worse. Instead we will replace it
with a more dumbed down option that should fix contexts on
/data/media with a few improvements to ensure that contexts get
fixed for multiple users and on adopted storage.
Change-Id: If5523781936a0b04196e2ad871cae767ebae2583
|
|
make it easier to add aditional resource files not just complete new theme
Change-Id: I6daca75929da03031812e66f25455e189b37a780
Signed-off-by: Xuefer <xuefer@gmail.com>
|
|
Change-Id: I417779259b08834d0bd9ec12ce31dda8c62d669b
Signed-off-by: cofface <cofface@163.com>
Signed-off-by: 996314227@qq.com
Signed-off-by: kaneawk <kaneawk@gmail.com>
Signed-off-by: Xuefer <xuefer@gmail.com>
|
|
Change-Id: I16f71797901ed21763b52a5cf750f383a460ce4d
Signed-off-by: sndnvaps <sndnvaps@gmail.com>
|
|
Doing it at display time is easier.
Change-Id: Ic0f2ca1f425f6267452157524a05b51d9324be16
|
|
Chances are there are not many themes in widespread use that are
using jpeg images, but this will be easy to revert back or even
just temporarily modify if we need jpeg support in a pinch.
Change-Id: If17b05ce3ebccce724fd74b26ed8ea91b287c3cf
|
|
Note: events.cpp is still old code renamed to cpp to make it
easier to call functions like gr_fb_width().
I had to modify AOSP fbdev code to provide a separate memory
surface for drawing to as drawing directly to the framebuffer
resulted in rendering taking about 5 times longer.
I also modified AOSP adf code to provide a separate memory surface
for drawing for the same performance reasons. The Nexus 9 supports
adf graphics.
Overlay graphics work on at least one device. Overlay provides a
separate memory buffer already so performance is good.
I do not have a drm device yet that I know of. I made some attempt
to update the drm code to determine the correct pixel format based
on the drm graphics format, but what is available in pixel flinger
and what is available in drm do not line up all that well. Reports
are that the Pixel C is using drm graphics, but performance is
slow, likely due to the use of a mmap instead of a memory buffyer.
Change-Id: Ibd45bccca6ac2cb826037aa9b2aa5065cf683eed
|
|
-Detects, decrypts, and mounts an adopted SD card if a
secondary block device is defined (usually mmcblk1)
-Handles unified storage
-Displays the adopted storage in MTP along with internal
-Factory Reset - wiped just like a data media device, we
retain the keys folder and the storage.xml during a
factory reset
-Backup / Restore
-Disable mass storage when adopted storage is present
-Read storage nickname from storage.xml and apply it to
display names in the GUI
-Read storage.xml and determine what storage location is in
use for /sdcard and remap accordingly
libgpt_twrp is source code mostly kanged from an efimanager
project. It is GPL v2 or higher, so we will opt for GPL v3.
Change-Id: Ieda0030bec5155ba8d2b9167dc0016cebbf39d55
|
|
use icons instead of text on settings tabs
portrait themes only, landscape has no problems if a translated label needs more space
Change-Id: I611ee9e34d5641c00d8894e219502a6198648339
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: Ic30b56840f32215c2f171e043c99e679d33957fd
|
|
For devices with an unusual aspect ratio, stretching a bitmap to
the screen resolution is sub-optimal. So let's reuse our XML engine
that allows assembling the splash screen from individual parts.
The splash page is loaded from a separate XML file for quick loading.
Change-Id: I2d3dad26e42fcefaf563dacdf0ffa61f209dada1
|
|
We should offer language selection on any start page such as
decrypt or system read only. However, if the mStartPage variable
was not being updated properly so selecting a different language
was dumping the user back on either the decrypt prompt or the
system read only page. This patch set fixes the problem and places
the user back on the proper page when they choose a new language.
Change-Id: I5153d3b9525d8c93d3863f4b17ecf55b5209e3c7
|
|
Language selection for decrypt, decrypt_pattern and system_readonly pages.
Done:
portrait
landscape
watch
Change-Id: I5fd595cadcdebdd06e9dbb164d0736c84426ff1b
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: I29f3823d03c005fb55a0e0a98818d40bd1eb039d
|
|
-swipe to reboot added
-added comment regarding "type yes to confirm format data"
-Remove the word "Settings" from the from some header subheadings (some had it, some don't)
Change-Id: Id3810c4f3aa5c02e94d854118805da7e51d309f3
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: Id4a6c04712238b86787696337874239591082d39
Signed-off-by: Xuefer <xuefer@gmail.com>
|
|
If we can detect the directory, why don't we detect maximum as well?
Additional patch by: Matt Mower
Replace clunky /nobrightness handling
Cleanup TWFunc::Set_Brightness() and blanktimer::getBrightness() a
bit, primarily for the purpose of relying on the value in
tw_has_brightnesss_file instead of checking for a phony brightness
path.
Change-Id: Ib22595df53cefa8db7a1172a581984c42ad461c6
|
|
* Find and rename/remove duplicate string variable names
* Add missing string variables to en language file
* Fix display of some strings missing @ in front of variable name
* Fix several %s --> {1}
* Be consistent in usage of cancelled vs. canceled (both spellings
acceptable)
Tip for finding strings missing from language files:
1) Find all messages:
egrep -hr "gui_msg.+=" > /tmp/msgs.txt
2) Regex replace to trim them down
WHAT: ^\s+gui_msg(?:[^"]+)"([a-zA-Z0-9_]+)=([^"]+).+
WITH: $1
Note that $2 can be used to retain the message
3) Find missing strings:
for i in $(cat /tmp/msgs.txt); do
if ! grep -q $i gui/theme/common/languages/en.xml; then
echo $i;
fi
done
Change-Id: Ic193162e4b5468bf027472928a370be39840ea1d
|
|
Main goal of this patch is to improve error handling when a custom
theme does not contain a valid theme version. We were getting a
message saying that the theme_ver_err resource did not exist as
well as an error saying that the package had failed to load. Now
we properly get a single error message about the theme version.
Change-Id: I361ef2d139220bbeaf2e856be919dc3a50ae4299
|
|
Only the last action got its keys and ate all of them (om nom nom).
This fixes the power button action that activates the lock screen.
Change-Id: Ia724568b159090c2c14a282cf3927915b2dc70e7
|
|
Change-Id: Icb3dd2342cc3bdc349aaf933d306b9f5315d1e98
Signed-off-by: z31s1g <z31s1g@googlemail.com>
|
|
Change-Id: I446f4499a43e6348a2b95846f3e5ea86967abbdc
|
|
Change-Id: I11887ebc1a3afd8f9acb1e85a212e2fe6299441c
|
|
Change-Id: Ideb4bb39b5e864a43b62e807c38b6395c56a8466
|
|
Add a themeversion value to the ui.xml details section. Check this
value against a define during early theme loading. If we are
loading a custom theme, then reject the custom theme if the
version does not match (or not defined) and load the stock theme.
If it is the stock theme, show a warning but continue loading.
Also fix an issue with changing overlays. Not sure how it ever
worked before, but it works now.
TLDR: Use the stock theme if the custom theme version does not
match.
Change-Id: I0277cbe035cbec7e16b6327500762dadf9c1c5c8
|
|
-Improve code for partitioning sdcards
-Allow user to select a device for partitioning (must be removable)
-Use sgdisk to partition sdcards
-Set default sizes for ext and swap to 0
-Change increments for ext to 256MB and swap to 64MB
Note: sgdisk is included in 6.0. I have included a static prebuilt
sgdisk for trees that do not have sgdisk, however the prebuilt
sgdisk is a decent bit larger than the old parted binary. The old
parted binary is quite old at this point and we only have it for
armv7a. sgdisk should be maintained by AOSP and can be built from
source so it should work across architectures.
Change-Id: Ib80882d9b5776e5e9358b11340fba392e6f1ae09
|
|
Done:
Portrait HDPI, MDPI
Landscape HDPI, MDPI
Watch
Also still includes ugly changes for the old portrait theme to test the
terminal emulator.
Change-Id: If32af1c69b85417522a8a2fb9c20be515b4d70fc
|
|
Change-Id: Ia46d8acb8b13075a2519df1deb91dd30a5969a48
|
|
Emulates enough of a VT-100 to run busybox vi.
Change-Id: I99c829c6c9de2246194ecb8b8b3cdf4ac34a0606
|
|
- rename NotifyKeyboard to NotifyCharInput
- input: handle arrow keys in NotifyKey with standard KEY_* codes
- fix page handler to return 0 from NotifyKey if key was handled
- fix GUIAction::NotifyKey to not swallow all keys
- change home button code from KEY_HOME to KEY_HOMEPAGE
(to avoid collision with Home/End, conforms to Android 3.0+)
Change-Id: Ib138afa492df8d0c1975415e8b5334c8778ccc90
|
|
Change-Id: I3fc40c61d78cf017c6753ddd9520aa2ef2e853fc
|
|
The message was named something non-existent. Fix the spelling error
and add the default message into the language files.
Change-Id: I4e9e10d2705b1edf75b185d3badba59eb86ffb8b
|
|
Change-Id: I6df4937658815350366ed3dd2cf92156f98c96c4
|
|
Rather than only supporting a 3x3 grid, allow for multiple grid sizes
(using the CyanogenMod method of generating passphrases for non-3x3
grids). Also fix the detection of touches, as the old code was far too
sensitive for larger grids (and also didn't make much sense).
Change-Id: I343ef654e6d29ce0cb790a28281be7c7c9b171d9
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
|
|
Change-Id: I783e2bbc15ad8e10aab81d14d140a995681e860f
|
|
Change-Id: I7d047fe3436100dbe7c7515860a143a97f7ef0d4
|
|
- CLI commands run in a threaded action "twcmd"
- Console is displayed via "singleaction_page"
- move ORS execution code from GUI action to OpenRecoveryScript class
- remove unused function gui_changePackage
- don't change PageManager package in home action
- fix that /tmp/openrecoveryscript was not deleted after execution
Change-Id: Ic688c0b04647ce09e9db979b0bc5123f47cf4f70
|
|
Change-Id: I8344d270ddb601694b5fef0fa7b22ea437030728
|
|
Change-Id: I078f0659696cc57564b5db0076a0ed9aaea822d4
|
|
* Usage of fsck.exfat is already included in partition.cpp, but the
tool is missing.
* Update the path to mkexfatfs so the button is available when changing
filesystem.
Change-Id: I5f4e27357c6b5a8606043d1bdc2488cc83e55d90
|
|
Change-Id: Iaac7d3df0bd12a4d817d4ad273254662865b775a
|
|
Change-Id: Ie95fdfaed7011994ac11202d070edeb95032b805
|
|
Change-Id: I3101d15e5d94241cf8e583d1e06e09f3bc8b31f7
|
|
This is similar to https://gerrit.omnirom.org/#/c/14014
A lot of the features built in the older patch set have been split
out into separate patches, most of which have already been merged.
The remaining functionality here should all be directly related to
language selection and loading. We always load English as a base
before loading other languages over the top of the base. The idea
is that if another language is missing a translation, then we will
still display the English.
Maybe still to do: read the /cache/recovery/last_locale file and
load a language based on that. For me, this file contains just:
en_US
We probably won't bother with region specific translations so we
would have to look at either trimming off the _US or using some
other method like perhaps a symlink or a combination of the two.
Thanks to _that for twmsg.cpp class
Change-Id: I9647a22e47883a3ddd2de1da51f64aab7c328f74
|
|
Tries to combine the current theme with a touch of material.
Page structure is untouched for the most part.
Layout grid is changed to achieve a "less random" placement of
objects on a page.
Change-Id: Icaf796be410431b17d5be6ccc1134d40912bef0b
|
|
* Version 3.0.28
* Update filenames in source
* Remove unnecessary symlink to fsck
* Commit "Recode short filenames from DOS codepage (default 437)." has
been reverted since we do not have access to iconv
* Commits cherry-picked on top of 3.0.28:
- mkfs.fat: fix incorrect int type
- Prevent out of bound array read in date_dos2unix()
Change-Id: I50310235c62ec2e6bc90afcd10f2814d3afb5113
|
|
Reloading the GUI while the GUI is running and rendering is very
dangerous as we may be deleting GUI resources before or while we
are trying to render those same items. This change will allow us
to safely load new resources and delete the old ones.
Fixed a double free situation that was causing a crash on every
other theme reload.
Clear parsed xml documents when we are done loading the theme
instead of keeping them in memory for the life of the theme to
help save a little memory.
Store starting page so that if we request a reload, we can enter
the theme at the same starting point, which may come in handy if
we allow for language selection on alternate starting pages such
as the decrypt prompt or the system read only prompt.
Change-Id: I45a7e3fb3daeefac56d70f8d4936938eb1244b99
|
|
This makes the touch target include both the text and the image
for buttons masquerading as a check box.
Change-Id: If8432c5863de136b1a215dabb3e06109ccce4410
|
|
The vendor partition is verity checked just like system so we
should treat vendor as read only same as system.
Change-Id: Ida65c9f44d8610e52fcdcef0b4a50faf5c7110d2
|
|
Change-Id: I4bc46d1772fee2ec77d95732fa3f69c267c2c34e
|
|
The GUI is initialized before DataManager loads the settings file,
so we need to update the checkboxes on page change too.
Change-Id: If4c694872608ec4014220364bd759c1399502994
|
|
Change-Id: I7b020c7048f9bbb550e9f5100c604c01809e4fbd
|
|
Allows the GUI to create a scrollable text box for long text that
may not all fit on the screen. Also includes code to allow the
console to wrap on spaces and other such characters instead of
wrapping in the middle of a word.
To see an example of how to add a text box to the XML, see:
https://gerrit.omnirom.org/#/c/14183/
Change-Id: Ifd139172ede290046b58ea3fe526e2e06da1d4ef
|
|
Mostly adding __unused where needed.
Change-Id: Ia4f675b9b360782728c361ed1699db0cc277c3a5
|
|
Change-Id: Iacd4bb78f551b51d092ecde09521b5541e7dadcd
|
|
Change-Id: Iea189ac53ec3d7c1bea83da7b77684778b1c0f46
|
|
This is a preparation for list item conditions.
Change-Id: Iec731d1986a53b0362c534adf504dfe8db87d3f0
|
|
For an example of how to implement a list of check boxes, see:
http://bit.ly/1Giacw2
https://gerrit.omnirom.org/#/c/14284/2/
Change-Id: I0752a084625f4a0ef8cc6d99597f2fb9aa2ab9e0
|
|
Create a single function for loading xml files to a memory buffer
to reduce code duplication.
Change-Id: I0ff64463072118f61a2eb8052f74019715020253
|
|
This patch set removes support in TWRP for the old .dat file
format as well as support for the AOSP style fonts in header
files. We need TTF for scaling.
Note that the old AOSP style header font is still supported in
minui which is not used by TWRP.
Change-Id: I6124a3333d479f1fc668138f7e32c4be9b519552
|
|
Change-Id: Ie86dc63f83ae51e9947debc7191fd91d61b83008
|
|
When AOSP recovery commands are processed, the GUI reports a failure
just before reboot even when all commands succeeded. Set op_status
before reboot to indicate success.
Change-Id: I09e9357b04cd81f418264bf00a75311f48357414
|
|
Change-Id: I8622da5ae321ba69a55b38e2f0b878b7ec149d02
|
|
Change-Id: I70324ae3e4fffe88bc2b5a02becb7d1f4f0ceab0
|
|
Initial value for tw_mount_system_ro is now 2. If the value of
tw_mount_system_ro is 2 during boot, then we will show the system
read only prompt and ignore the value from the lifetime writes
check.
Note: Changed the value of FILE_VERSION which will trigger the
data manager to throw out previous settings and start with default
values so that existing TWRP users will get the prompt at least
once.
Change-Id: I447767b64617f855156a19a5dc15c4ece6dff7b8
|
|
Also enable string insertion for list items.
Example how to make a menu item:
<listitem name="Lights on!">
<action>
<action function="setbrightness">255</action>
</action>
</listitem>
If no <data> element and no actions on any items exist, the list is
read only and no item selection is possible.
Change-Id: Ib2668a982df2514484d44faa0396dd17550f39f3
|
|
To position the longpress label:
<longpress font="..." textcolor="..." x="5" y="0"/>
x and y is the distance from the upper right corner.
- extract method GUIKeyboard::DrawKey
- clean up handling of currently pressed key
- integrate key highlighting into main key drawing loops
Change-Id: I80ccf2975d30cffa2a48627a74ab3693c84e4fa4
|
|
Change-Id: Ib67a356f8d5e6bb0f982c081fc88b6462c7fbd74
|
|
e.g. '<button ...>' instead of '<object type="button" ...>'
Also get rid of default parameters to make things more explicit.
Change-Id: Ie4d1231b725aeb6cbf0041622c9780c86cf8e1c1
|
|
Change-Id: I9f05c85f8d43ab012228a78b79220a27876a299d
|
|
Change-Id: I7d82b95cd8749c6f8569739162708705faa6f1f7
|
|
Change-Id: I1329705fca870b4e3017607ad7c7875aa00d664b
|
|
To allow themes to show more of the file name on narrow displays.
Change-Id: I4962eed5e4a01f73a3cde126f2ba56428209fccc
|
|
LoadResources should only decide on the resource type,
everything else is handled by the resources themselves.
Change-Id: I30f68293960c23560979f650efc4393992cf5824
|
|
Change-Id: I1bbc25df6f35f79549f1eb06feb4db9ec0475aa5
|
|
fgets reads up to one byte less than size then with \0 at the end
adding \n after \0 is useless too
Change-Id: I7758d7a8f885bdde2b491a9cb75800f831d77c1f
|
|
Note: Only works on ext2/3/4 partitions. Only tested on ext4.
We can use this in some cases to resize the data partition if an
incorrect fstab caused recovery to not reserve the 16KB for a
crypto footer.
Sometimes the BoardConfig for a custom ROM does not have the
correct size for the system partition and if the ROM flashes a
raw system image, that image will not take up the full block
device. Running resize2fs can fix the size and may allow more
room in the system partition for customizations like busybox or
a larger gapps package.
Sometimes flashing a factory image may flash userdata with an
image with a file system that does not take up the full size of
the block device (e.g. factory images for the Nexus 6 will flash
userdata with a ~24GB userdata image, wasting ~30GB of space).
Using resize2fs we can easily fix this issue without having to do
a full format data.
Change-Id: I631f5c6f567bbc6a9241e5dd95f1e435820a1b13
|
|
Mounting system as rw can prevent future OTA updates. The purpose
of this patch set is to prevent TWRP from mounting sytem as rw on
the first boot. Device maintainers should update their twrp.fstab
files on these devices to include an additional line:
/system_image emmc /dev/block/../system
This line will allow TWRP to create a raw system image backup to
ensure that the user can return to an original state for future
OTA updates.
Change-Id: I8929d85bc3a5b96cc564bc7f734b58d5612ec833
|
|
If a page is requested for overlay, ensure it doesn't already exist in
the stack of existing overlays. If it does, erase the existing page
and push_back the new one.
Change-Id: I9feeea06cf7aad2e08a8c3bc567aaa761db2c3bc
|
|
This should fix daylight saving time display for most users.
For fully correct time zones we need the tzdata database.
Change-Id: I7b7693ab0abaf20be217bd06d525f03fb89b7217
|
|
This effectively allows us to support popup dialogs and the like.
Change-Id: Iafb3fa60ed635287cb59dce118f74dc8f2a4e60a
|
|
* Applicable to non-rooted devices running portrait mode only.
* Touching the button has no effect, supposed to reboot/poweroff.
Change-Id: If67649c4c83ddf549c833f94c66829e0877969c5
|
|
Change-Id: I59b3f8c5604c036dbc74c020ee21aeeef28132d3
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Also minor cleanups:
- move array limits from #defines to a protected enum
- zero fill layouts in ctor
Change-Id: I8fe0f8465ebc646ad3bf3cc3f8490dbdd384f43d
|
|
Change-Id: I6cd0251dd9d933e6ebef977a553be7473e2d7034
|
|
"_" was broken due to a bad XML attribute name, and the others
didn't produce the highlighted character in shift mode.
Change-Id: I271fbf4e083ccdb69c469cbdae44101afed4fd1e
|
|
This was questionable design and is unused anyway.
Also reduced a few redundant #includes.
Change-Id: I65bb01120e6072c5695755920242f6f9d73c816e
|
|
Change-Id: Ia2d3268a96423e9ca3846500c57e674c4f8fa60b
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
This is needed to make touch work on the x86-64 emulator target
though I have seen the key code used on other devices as a way to
synchronize touch events.
Change-Id: I31a3cc56e6470f2c707641b537140e44f5e686aa
|
|
Change-Id: I287722719c1f73cc8f7214549f9a890f03d4a586
|
|
This will significantly reduce theme maintainence and should be a
lot more sustainable over time. Eliminate most themes leaving only
5 remaining in 3 categores:
* watch_mdpi: 320x320
* portrait_mdpi: 480x800
* portrait_hdpi: 1080x1920
* landscape_mdpi: 800x480
* landscape_hdpi: 1920x1200
Add handling to map the old DEVICE RESOLUTION to the new TW_THEME
build flag. New devices should specify a theme using the new
TW_THEME build flag using one of the 5 values from the list above.
Long term we will eliminate the use of the DEVICE_RESOLUTION flag
in favor of the new flag.
Change the way sliders render so that they completely follow the
placement="5". This will probably break some custom themes but is
necessary so that we can retain the aspect ratio on slider images
and still have them rendered at the center of the screen.
Add code to the console slideout button so that it can be centered.
Centering the slideout button allows us to keep the button at the
center of the screen when retaining aspect ratios on the image.
Add more retain aspect ratios for home, back, slideout, folder,
file, and lock screen images.
Change the way we build the top bar in TWRP. It is now mostly
drawn using fill objects and the TWRP logo is a separate image so
that we can retain its aspect ratio during scaling. Thanks to Mark
Norelus for providing the TWRP logo.
Change-Id: I801a7b3163cad9ef353461f4c327690a9ccbb3aa
|
|
storing strings in a map (for fast lookup) in resource manager
To define a string resource in <resources>:
<string name="foo">Hello</string>
To use a string, e.g.:
<text>%@foo%</text>
Not yet done: language-specific resources (should be solved not only for
strings, but for all kinds of resources - e.g. for localized images)
Change-Id: I3ba5cf5298c09e0d28a83973e9662f179271b33f
|
|
e.g. '<image ...>' instead of '<resource type="image" ...>'
Change-Id: I5ce04ae0845351c8a4640d12e36f1aaf32e1ebc9
|
|
- separate collections for fonts, images, animations
- no more ugly casts
- fix crash if main ui.xml did not define any resources but include did
- don't stop loading resources if one "type" attribute is missing
Change-Id: I70c1c9ca66ca65d9fba1ba3eded34f3d8a07488e
|
|
Not all themes tested.
To center the scrollbar horizontally on the line, the width must be
fastscroll_linew + 2 * something.
Change-Id: I3c2878734ffbd2e8ef3bc7c64b2f16d4f61aeda5
|
|
- Rebase console on ScrollList
- Add fastscroll bar to console
- ScrollList now has a mode that ignores selections
- Increase kinetic scrolling speed for lists showing many items
Change-Id: I6298d717d2e403f3e85e2c633d53c4284a066012
|
|
- so derived lists can draw whatever they want (multi-line etc.)
- replace GetListItem with RenderItem
- minor cleanup
Change-Id: I062e0a354f1c18ce0a5232b7542c4987b480e232
|
|
gui: fix terminal command unusual line breaks and missing characters at the end of a read buf.
Change-Id: I8d3d740b6066b1594c5148b2012f0e7bcbecc22b
|
|
* Use mono font for terminal command input
* Recognize 'exit' command (go to main page)
Change-Id: I5f383cd8d19959a49d2ae0b18f839b86e4145693
|
|
Safer handling:
& --> &
> --> >
< --> <
Broken tags:
</function> --> </action>
<folders="1"...> --> <filter folders="1"...>
Change-Id: Iaddaf9db163e08250cb4deefdfdb814c589ccb47
|
|
The portrait placement was mistakenly removed in commit
I6e314efb4bb454d496555ff7e003d743063a1308
Change-Id: Ida5f908e61df0f99e0f5327c298e6a1a915d0f66
|
|
Style support was missing.
Change-Id: I9a9a8c6a42e2a3d0dcdee871a639c9842a2ff668
|
|
(for compressed backup users with low space).
Clean up backup folder and copy only recovery.log for debugging.
Conflicts:
gui/devices/watch/res/watch.xml
Change-Id: If8aa3580dbc082d0fe4882d4af8dc3cdb362a8b5
|
|
Avoids invisible lines (e.g. input cursor) when scaling down.
Change-Id: I595e8bdb2fa468c30f104867ad77be2423ec287f
|
|
Change-Id: I008664109360d937a31232c8cc15c7c9d3dd0ba5
|
|
- Attribute "recth" in the <fastscroll> element is now the
*minimum* height for the scrollbar.
- Dragging the scrollbar moves the list.
- Touching outside the scrollbar jumps to the relative position.
Change-Id: Ic1f20b5ec68cf49e5be56be34f0c58c0f474618b
|
|
Also allow sliders to have their own text label instead of
requiring a whole separate text object for the label in the xml.
Change-Id: I6e314efb4bb454d496555ff7e003d743063a1308
|
|
Change-Id: Ia674676c847e429c41ddbe6de3e1778c3d5c8302
|
|
If the <header> element doesn't exist, the header is not drawn.
- minuitwrp: add function for clipping all drawing to a rectangle
...and another one to cancel it.
Change-Id: If0f688a5debee6ebd9c457999fe571705a42c5cc
|
|
- add string, int, color and resource loading helpers
- use typed resource classes, and some cleanup in loading code
- remove abstract GetResource() to enforce type safe access
- add height and width query methods to resources and use them
- minor cleanup
- simplify LoadPlacement
Change-Id: I9b81785109a80b3806ad6b50cba4d893b87b0db1
|
|
Change-Id: Ib9963d8d393cf4428e43a3d6552d98ae67c1d7bf
|
|
Base class must be called first, otherwise the condition can never
again become true. Fixes font size switching in Material theme.
Change-Id: I160a733549495e1bde3cead56b0a3582f0dc744c
|
|
With this patch set, if needed, we scale the images during early
boot. TTF support is needed to properly scale the font. No font
scaling is done on the old style fixed width font used in the
console.
Special thanks to _that for figuring out the scaling and blending
function calls to make this possible.
Change-Id: If2f79bef16d6db2e1298bfc3d00c9bcca2bee37a
|
|
Resources are deleted by ~PageSet and do not need to be deleted
by the the scrollable list elements. This fixes a crash when
reloading the theme.
Also remove some deletes for items that should not be deleted in
button and input GUI elements.
Change-Id: Ie1c1b85c81c10f648d085746a5fdba6220468a5f
|
|
- add a timeout to ev_get
- set timeout to 1 second when idle
- delay timeout for 15 frames to keep animation objects working
- stop kinetic scrolling immediately at end of list
Change-Id: I77138055c464b65b71e296f9c7ef63ea06809bc1
|
|
Fixes a problem where, if you decrypt the device, the promtp for
installing SuperSU appears briefly before it automatically
reboots without letting you confirm or deny.
Change-Id: I6f7b1c7096e788ccabd8f5aac9eb01d38bfbc0f7
|
|
Apparently fixing all the signed/unsigned warnings was good. :)
Change-Id: I62faa23179e8b2436fe0d24d2152af341cd42fe9
|
|
Speeding up scrolling after releasing is distracting, get rid of it.
Instead reduce friction to its previous value.
Change-Id: I5c99cc71b631747697e967bd75669aa3d908c637
|
|
The goal of this patch set is to eliminate the code duplication
caused by copy/paste of the code in the file selector, listbox,
and partition list GUI elements. Those classes will now utilize a
single GUIScrollList class that will handle rendering and
scrolling.
Change-Id: I0cb98ab36cf47178296034293435225658c779cd
|
|
-Create a separate function to disable stock recovery flashing
-Add a call to that function to the reboot section of the ORS
action so that an OTA update will not inadvertantly replace TWRP
Change-Id: I43eae81e0e76971b6e8d34c38785dc73772242d2
|
|
- merge duplicated code into new ParseKey method
- convert some unsigned int to int to avoid warnings
- add local variable for current key in NotifyTouch to reduce clutter
Change-Id: I98ddbaca50d487c97ab6e98938df91ef03b9aed5
|
|
A single char should never be treated as a string.
Change-Id: I5f8459495f7d0f907ac7c0ae6dd73a3428d92d23
|
|
- Power+voldown works again for taking screenshots
- Right shift key isn't stuck until users presses "s"
- Don't use DataManager for local variables
- Simplify handling of Shift keys
- Clean up #includes a bit
Change-Id: Iff0453107beaa336a9c04422b43e92225fdbe069
|
|
- Process multiple input events per frame even if rendering takes longer
than 33 ms. Limit minimum frames per second to 2 instead, allowing us
to catch up with the input events. The lag was especially visible when
using the mouse.
- Move blankTimer calls to the main input function so that moving
the mouse also unblanks.
- Fix a compile error with event logging.
Change-Id: If9e0360f5cc0562c4356611afc61b6d583fb1ec4
|
|
Some actions did not have an operation_end where needed especially
when dealing with cancel actions.
Cancel actions now do not run operation_start or operation_end
and let the original action handle the operation_end so that the
GUI waits until the original action acutally cancels.
Change-Id: I28e6260abb058acb982cecd108c09fc89e0ffeed
|
|
Change-Id: I97e08a23369af0112875af84b3fb529cf42e929e
|
|
This also makes the hardwarekeyboard.cpp file that I created for
the Asus Transformer tablets with a keyboard dock the default
hardware keyboard handler. USB keyboards should work properly now
if present for keyboard input.
Change-Id: I724606e91ffe2a55265a9d1cb1ec714de244d38b
|
|
(0,0) was inside the region of "locationless" action objects,
leading to all kinds of strange behavior when clicking in the
upper left corner.
Change-Id: I222db4ff499f3c30605b05267f005accb2e0dc99
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I283b33087817eb87dae916a3183a9024dd35effd
|
|
Change-Id: If05202355d3773e73541288c922fa6c69b1a9ad7
|
|
This will stop the iteration of the partition objects, kill the
current twrpTar thread and remove the backup directory.
Implement TWAtomicInt class to give us a wrapper that automatically
uses mutexes before the read and write to help ensure that the
reads and writes will be atomic based on documentation.
Change-Id: I645b22bc980a292e9c7202acb24ffd22ebe68c63
|
|
AOSP and other ROM trees now do a rm -rf of the res folder during
the ramdisk creation process that removes the TWRP resources.
Using /twres instead of /res works around this issue making TWRP
more compatible with AOSP and other build trees.
Change-Id: I0d4c7e06ca381ac5aa0069b6f2b8c47f7dec49e7
|
|
Change-Id: I6e43242e44ce63cea9472c75a9f7fedf1b34fbbe
|
|
Also eliminate the mostly similar runPage function in favor of
using a single runPages function to avoid code duplication.
Change-Id: I46ef414beb4009fee16d4de13d8a5ab2b9678409
|
|
Change-Id: Ib94e661ab0c608deb2d119168709c85a9a44b2fa
|
|
Loading a custom theme from the decrypt action was preventing the
runPage function from exiting. This moves the loading of a custom
theme out of the action.
Change-Id: I86904b63a67a25ded56e3e1e569fe906264dc055
|
|
Change-Id: I01405fbe86a48ae79f2cbe633b89f2dcfb1ef266
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Change-Id: Ic8406344994ef2a9972207f9281b52e64e22826b
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
- get rid of separate thread, check timer in rendering thread instead
- use an enum for the blanking state instead of magic integers
- move #ifdefs for TW_NO_SCREEN_TIMEOUT inside blanktimer class
- move some #includes and enum TOUCH_STATE to pages.hpp
Change-Id: Id4b104e3680dc5db41d8ba85e32d722cf4086299
|
|
These can be used to center a lower resolution theme onto a
higher resolution screen. May be useful for Nexus 9 unless or
until we decide to do a 1536x2048 theme or on devices like the
Moto 360 and LG G Watch R.
The build flags will only affect the stock theme. If a custom
theme wishes to apply an offset, it can be done by setting
tw_x_offset and / or tw_y_offset in the variables section of the
XML.
Change-Id: I2390769ed861b96a4a3bb8a0f06d9021ec91b6b9
|
|
Change-Id: I1463a0ba62a23c68c15f05e79a99fa8509314373
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
- change the page sooner so that users cannot activate the slider
twice
- improve GUI messaging if a zip requests a cache wipe
- move update of the file count to the end so it is less visible
to the user (e.g. during a cache wipe the counter should not
read 0)
Change-Id: I5d478f07effe61ca37f3521a77c9e9243a9cb692
|
|
- Use the Images... button in the lower right of the zip install
page
- Unify image flashing functions between restore and image flash
- boot and recovery partitions are flashable by default
- use fstab flag flashimg=1 or 0 to override defaults
- file system partitions are currently not flashable
Change-Id: I822dc446030543c55d2153e219d67a1292374ffc
|
|
When the background thread is already running and we have at least one
threaded action in the list, we should not run any non-threaded actions
before ignoring the threaded action and following ones - it might cause
invalid state variables to be set. Run or ignore the whole list in the
background thread instead.
Change-Id: Ie634105b80f038893898a21539886bd757eb47ce
|
|
Some actions need to be threaded so we will run those in a
separate thread and deny requests to thread more actions if new
requests come in while a thread is already running.
Change-Id: I966c538e67860a6d8fe556e5a2eb7f7d1a987e74
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
The action page fails to display properly during ORS processing
unless we thread the ORS action. Based upon the work done in this
patch set by _that:
https://gerrit.omnirom.org/#/c/11226
Change-Id: I6dac790ac26d9b3a02df778516fea011d67aea70
|
|
- "Cancel" button handling requires another thread
- simplify handling of child pid
- merge duplicated code for reinjecting TWRP after installation
- fix error that showed on host PC after sideload finished
- fix problem where adbd sometimes does not stop correctly
Change-Id: I536877f024b606756c6a3289c6ddfdba423a60d6
|
|
We need to set the value of tw_operation_state a little sooner to
make the decrypt page work correctly. Without this change, decrypt
would incorrectly display the main page during the first decrypt
cycle. This fix may also fix ORS and possibly other things that
use the runPage function.
Change-Id: I85ad6e4add6726a2746eeb7116f3eab3f7ff5d84
|
|
isn't used by the code, can be set via datamanager instead.
Change-Id: I3d98c85c91ce41f32de90345715f2f456f628419
|
|
This allows the functions to be more readable and make
doActions readable.
Patch set 5: gui: remove threading in GUIAction
Multiple actions were started in another thread that was joined
immediately after starting it, so the input thread was blocked anyway.
Selected single actions were started in their own thread, but this
caused bugs like being able to install the same package twice in
parallel by quickly swiping the slider twice.
Change-Id: I28adadaedd032efc7bff3aaa48e659627aa3a3b3
|
|
Indenting the warnings with tab resulted in a make error
"*** commands commence before first target. Stop."
instead of the intended message. Using spaces instead.
Also fixed the web link to point to the current build guide on XDA
instead of the outdated one on rootzwiki.
Change-Id: I8b25d39edae16dbc479c0e36bd11e12b49b4fbb0
|
|
- avoid parsing permission strings
- fix memory leaks, a fix new/free mismatch and a compiler warning
- fix that only first updated-package was processed
- fix a potential stack overflow if packages.xml is huge
- minor refactoring for reducing duplicated code
- don't process packages without codePath
- fix path for deleting app data (currently unused anyway)
- fix file ownership on libs
- try not to mess up Android 5.0 app permissions
Patch set 4
- make fixing SELinux contexts an option with a check box
- add some notes / text to the themes
Patch set 6
- decouple "fix permissions" from "fix contexts"
Change-Id: Icc77ecc581befc5ce6e419b1f3b8ca189208c234
|
|
With 5.0 L, we decrypt automatically if the default_password is
used. Non datamedia devices do not get the format data button so
they cannot wipe encryption off the device. This patch add a wipe
encryption button where the format data button would normally be
located on the Wipe page.
This patch also attempts to remove / delete the dm-crypt block
device before formatting.
Change-Id: I100d5d154d6c49254fd48e23279df973db5f23ae
|
|
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
|
|
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
|
|
Change-Id: If79086b0128e57087fd87f07d56984eb2a15d8b2
|
|
Actually display the name of the item or the filename of the item
that we were unable to load in the log to make it easier to
determine what went wrong.
Change-Id: I027b35aab286e4d0f1957bcfb28ed40d81f9bbb2
|
|
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
|
|
Change-Id: I109c7ae5963b5b4d9d1a8190e364a7685c41dbdd
|
|
The new minzip did not compile in older trees due to needing
mmap64. For older trees we will just use mmap instead. Remove all
files and code pertaining to minzipold. Updater should now build
properly in older trees as well.
Eliminate use of PLATFORM_VERSION in favor of PLATFORM_SDK_VERSION
which should be more consistent and reliable.
Change-Id: I38d2b604a73d1b17a2072c7d60e990b81ece0c10
|
|
The button vibration slider was not showing up on portrat layouts.
This commit fixes that issue and maybe some other issues.
Change-Id: Ia0c0ed319358db3b99887b3b37aa7737c7caf0cc
|
|
Change-Id: I9e2f359dd7274e1ae885f6a3b392d5ab5ca99ac9
|
|
Migrate previous minzip to minzipold replacing the existing
minzipold. This will break compatibility with trees that do not
support selinux (ICS and older). Migrate former verifier files to
verifierold.
Add fuse.h to recovery source because older trees do not have it.
Add LOCAL_MODULE_TAGS where needed for 4.1 tree.
Change-Id: Iade57cb2b0115af7fce9f56aa98636b1744a1ef4
|
|
Change-Id: Idc44455dd0c971c876ae283528c4367a82e145bd
|
|
-Remove dosfstools for arm64 until we can make it compile
-Fix TW_USE_TOOLBOX flag to work again
-Fix symlinking and handling of sh when using mksh
-Fix legacy properties to find futex_wake function
-Fix libcrecovery to not use bsd_signal anymore
-Fix rules for building with regards to libcrecovery
-Update toolbox_recovery rules to compile tools in lollipop
-Fix a few compile errors specific to arm64
Testers report that TWRP does not boot on Nexus 9 and we fail to
get a shell for adb shell. At least it compiles without errors.
Change-Id: I286be8628defb60cc527b8a548c0bdfcb0ebb574
|
|
Change-Id: Id5a0d40d05b0d7e56fb3e8f0578c201957508b70
|
|
Change-Id: Ib9ad011428603979f7dd8a2708989feb9b13e075
|
|
Change-Id: Ib503d0e87434e1a28430779302d6565211c26592
|
|
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
|
|
We will have to update the zip handling later. Now at least TWRP
boots up to the GUI.
Change-Id: I4182896eb095cab52fb0f1c9c20b6605e35677b9
|
|
Change-Id: I0caaa51720fe3608b8c4cb02f046afb3cbaa54f9
|
|
if TW_CUSTOM_THEME is defined there's no need to check if
$(commands_recovery_local_path)/gui/devices/$(DEVICE_RESOLUTION) exist.
Change-Id: I234374eb1db187758102ca64884a94a81c938b54
|
|
Change-Id: Iac1c13b38df2ac66106abcda7c9d171a1549b65f
|
|
Change-Id: Ic864fae4fda9707fc84d6d8b33587863b7664e1e
|
|
use TW_NO_CPU_TEMP := true to disable display
use TW_CPU_CUSTOM_PATH := path to set custom path
Change-Id: Id260ecbb4ec36a78442387329944f67003d0f6a0
|
|
* Keeps original font system in place
* Uses the same API as original font system:
- You can render only one line at a time
- You can only use one font and color for one gr_text* call
* Caches all rendered text, with a string cache limited to 400
entries, then it trucates to 250, which results in memory
usage hovering around 5-10MB
Change-Id: I36107b9dcd8d57bae4486fce8b8f64e49ef3d906
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
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
|
|
Change-Id: Ia3007fbced9ce3bc94efdb3dacc582a5e68a49a4
|
|
Enable TWRP to reside alongside other recoveries with the naming
convention: bootable/recovery(-flag). If TWRP resides at
bootable/recovery and a device does not specify RECOVERY_VARIANT, then
it will build like normal. If TWRP resides at bootable/recovery-twrp,
then its makefiles will only be parsed if a device specifies
'RECOVERY_VARIANT := twrp'. This prevents TWRP specific makefile
warnings/errors (notably, missing DEVICE_RESOLUTION) when another
recovery is being built.
Change-Id: I8f02fffcd79c309c7123b9428eedc69af02e126e
|
|
Change-Id: I24f3c8587f778c4f0ef43737243c8378a3fd0e00
|
|
Big thanks to Dees_Troy for helping with the implementation.
Change-Id: I6c9c522b9c9de5dc139e2ecb0141008182ba07f0
|
|
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
|
|
Allows sending openrecoveryscript commands to TWRP via shell.
This may be handy for visually impaired users, for various one
click utilities to drive TWRP commands from a computer, for using
TWRP when a catastrophic hardware failure like a shattered screen
prevents you from being able to use touch, or even on devices like
a TV stick where touch and USB mouse input is unavailable.
This patch also includes a few minor changes to openrecoveryscript
including proper support for rebooting via the script and for
decrypting the device via the command line.
Change-Id: I796ad168efdd2da9c25334ac93d1079daaa7b0bc
|
|
* Add tag <resource background="x" handle="y" handlehover="z" />
to the slidervalue object.
* All images are optional, e.g. you can use just handle or just
background image or no images whatsoever
Change-Id: Ie0fee92965c6e883c4e532732756008dcc9e385e
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Change-Id: I9777e92ca26967d41625e726383ae6aa5406161d
|
|
Change-Id: I1acba95302e414e1a471d27474508a7c48df0328
|
|
Change-Id: Iea2fac2f1b300c312819ea2d83e1762669d357b6
|
|
Change-Id: I9448eed41e43c4fce575b7ed12b5270a1d75f99b
|
|
Change-Id: I7fe38b20913a981942105637a527a2d26ed035a5
|
|
Change-Id: I1a50fa0bb750b229220c217d24253b65f24d2920
|
|
Based on work by Chris Phelps <cphelps76@droidconcepts.com>
https://github.com/TEAM-Gummy/android_bootable_recovery_TWRP/commit/58963336b81ea8bcc03b8d7e4dfe4598f5afc972
https://github.com/TEAM-Gummy/android_bootable_recovery_TWRP/commit/4ec10303cb76592044c3aa449dc68a33356a6e09
https://github.com/TEAM-Gummy/android_bootable_recovery_TWRP/commit/c48bd2412332916eafd0db727d923c8c16cd35ed
https://github.com/TEAM-Gummy/android_bootable_recovery_TWRP/commit/f0944ded30e98917ca85db0185add1207ea5f4b6
But with other original changes too.
Change-Id: I809a37a3983187e62568a1e2403b6637a692220d
|
|
This reverts commit c45181db0902762fb670b56a173db7c331e564cb.
Change-Id: I9dfb2733d9eb30c32bc1e307e382ee8e4e47a0b6
|
|
Change-Id: I9e54d2bcfe89e1e0e3205ce2f4156cfd22dca5b5
|
|
Use common portrait and landscape xml files based on resolution
defined by the device.
Change-Id: Iec528f9d846d49857ff98de1ac201e25dbb60339
|
|
* 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>
|
|
Track backup and restore progress based on the sizes of the files
as they are being added to the tar backup file. Update the
progress bar based on the sizes of the files.
Change-Id: Idf649efa1db3e91830b4b2add86203a3f30042ff
|
|
Allow each gui_print command to specify a color
Change LOGERR to use the error color
Theme should specify colors for error, warning, and highlight
Change-Id: Ie8ece34111f604e25fcb79e5b731cd4e61038ff9
|
|
Change-Id: Id16c84f815b1c4b8e95da142648a5a759116ee6e
|
|
Change-Id: Id772737d2856698861686671152f14bad800cd5c
|
|
This is by no means comprehensive, but is quite a bit better already.
Change-Id: Ibc8654a5dfb0eec39cbd0b64bdb52bb4fbfe2f7e
|
|
Change-Id: I9043e98e1e1ed4722f05c13a60b43d2d0bf739f6
|
|
After implementing the find_file class, the blank timer code
needed to be updated to pull the brightness path from the data
manager instead of using the build flag to ensure that we use the
proper path for brightness.
Change-Id: I084983ac0bd68b2fcdd69b93c2d18e2862ba0c77
|
|
Change-Id: I9dfa7de40229f00412d63fc9c1eb3a809a6eb2e6
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Some devices (jewel, m8) have .android_secure at a non-standard
location. Allow a different partition to be specified as the home of
.android_secure using the fstab flag 'andsec'.
Using the /data/media variant of jewel as an example, recovery.fstab or
twrp.fstab could be edited like follows:
/external_sd vfat /dev/block/mmcblk1p1 flags=display="MicroSD";andsec
Note, this is NOT a method to move .android_secure in your ROM. Your ROM
must already write to this alternative location.
Change-Id: I3a6e4e63aaddb35870b79e80938b0f9c2c902443
|
|
Change-Id: I360f93e70c6a48eed502a5aacd6d8d654ca7b570
|
|
Change-Id: I06351f8ecdfe5b119bbae0d6800258adef844c66
|
|
Change-Id: Ia9fba3be16a33b3cb0c4a3458398a2e60ba7f001
|
|
Makes a smaller TWRP
Uses mksh for shell
Change-Id: If78d7745dda8919fcb2e9c9b60c6696063c14114
|
|
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
|
|
Some (all?) devices do not update the partition size displayed on the
backup screen when selecting "Refresh Sizes". Refresh the page after
recalculating sizes.
Change-Id: Id34da6c738f86501f73cbd7874f6921d1cda32c4
|
|
Change-Id: I98dd6b25cbb1616f6032e9dcb4174461add53498
|
|
the theme.
Change-Id: If633af291689b2ac686c41331bb9adac34c425ad
|
|
Change-Id: I11bd9fea2a900a92794c5c297846eb87265eeee7
|
|
Change-Id: I2745bcf8f242fe4a1992aa547efaccf33db0fb5b
|
|
Change-Id: Ib23354a706013c8cee6665c720fa3b890f3fb3de
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Change-Id: I0801d29aeb66678157123e3630b09a2b527ad4df
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I4a23cd78bd63d63f4d6ec8f34dcc6eced824123b
|
|
Change-Id: I7ba9a8a496536ed55241e45e18297bd824d7e28c
|
|
Change-Id: Ibcf89952ee1391350c715f1ec82cf0cdb9b0ca7d
|
|
Change-Id: I4be3849ff0485536575395d798aa5edbe12651a7
|
|
Change-Id: I52b34a316950e92a3aa4c1675475fca8dc08d2c8
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: Ia50f7c365b2dc0a65ee046bb42972e3594264878
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I8df41877f8f4439a434becfd47a9914b50649b34
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: Ic0a7d6354dabe5919b83942f2f1aa0715625e522
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I7b0e27930857add1ac88671a71310bea56fc4e74
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I66d6db7b3ed9cca50b469d125b36224332e06913
|
|
Improve location / timing of vibration
Split out vibrate settings for buttons, keyboard, and long actions
Change-Id: I282825cc5f3e44ed6dcabe65dc1f4cb21b407b67
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: Id158a6375fbadf4cdf0a8c7d143759e602419e7f
|
|
Change-Id: I15d723f73c0b0bb4a40645d1c3f4c1c616f36998
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I925adda7f417c6e578f501babc8ef2bec638f66b
|
|
Change-Id: I4470a3a090d10f400575d45338a8349fbee8a027
|
|
Change-Id: I478f172e1a549b50ebe29cf9a8b8618a84b3cb17
|
|
Change-Id: Ic6a0b4b3e41818ff510ca652d5f14bdecd531826
|
|
* Add support for variables with persist="1", which will cause
them saved into settings file and reloaded on next boot.
* This is handy for theme makers, who can use this to
implement "theme settings".
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I6415979011b38cbb15dec9909c445b02da6eadc0
|
|
If the button has a conditional, the image render function will
return a 0 which indicated that an image was present even if it
was not if the condition was not being met during boot. When the
condition is met, mButtonImg was not set to NULL causing a render
request failure.
Change-Id: I32be0ddcdc1bf7ad22440d66018ef09484280afa
|
|
Change-Id: I4dbb4677f1c3bcfa0b0a9248ae0b411c155f927e
|
|
Change-Id: I9b178cebbb2834cd0c86088c8e78678f55d14e62
|
|
Change-Id: Ifc71c2e2078dbcd4b4893205bea9988e1e129f83
|
|
Change-Id: I3be70a897e563658736b2dec3a9ea2697b69b225
|
|
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I558c988c94f750607f58aa3dd22736447c78a214
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: Id8acff1ac9b3c7e4b562c80562a8ff42a1d132b9
|
|
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
|
|
Change-Id: I7847fca22b5d4f0a35da41625b15bd677a1e9768
|
|
CM7 and CM9 do not have libselinux needed in the newer minzip.
|
|
|
|
Change-Id: Ifb3a5bd9f1e6c2e9810c90b0aec198e91d5956fc
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
|
|
|
|
This reverts commit 70e1129612765b14e5aace0155d4683c91cde951.
No longer needed after http://review.teamw.in/#/c/655/
|
|
|
|
Change-Id: Id5ce607a181110118ebc647fc07d387a7a3dc660
|
|
|
|
Change-Id: Iedb50aca0132259bfe4297e187dbc2d40a38a34b
|
|
Change-Id: Ie7d5878faf86b8fa824b72211be7fd3596b471d7
|
|
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
|
|
Normally, when the display has been turned off by blanktimer, the GUI actually still renders the GUI elements (eg. progressbar while doing backup/restore/etc.)
This patch will check whenever the display is turned off, and if it is turned off simply dont render. This avoids heating up the device and will save battery.
|
|
With starting the console the touch drag event is active without even touching the display.
This causes to render the console at any time it is displayed, which consumes alot of battery and heats up the device.
What the patch does is resetting the touch drag state to ensure it is only re-rendering the console when it it really needed.
|
|
|
|
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: Ic5d44314f501341140dd7059d1cb753341f5844c
|
|
Improves license compatibility between GPL and Apache
Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
|
|
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
|
|
Change-Id: Iaf771257d8f904807ca6f6c1a6c3d7993abadb85
|
|
|
|
mutex would, in some rare cases fail to lock and cause a freeze
of the GUI.
Also restored some code that was removed before and should not
have been removed to fix a bug with folder selection where you
select the same file or folder twice (e.g. select a backup on the
restore page, press back, then select that backup again.)
|
|
Fix a freeze that occurs when you move or delete a file in the
file manager
Make file sort buttons work again
Change-Id: Ifcb68edf3c29c475946d538748729485d0840842
|
|
2 second predim code courtesy of bigbiff
Change-Id: I052ac422f78dc82c05f58c188587534b800b935a
|
|
Sometimes a var change event came in while the file selector was
being rendered. Changes to the mFolderList or mFileList vectors
sometimes resulted in a crash. This patch set moves the
GetFileList call to the Render function to prevent the vectors
from changing while the render is taking place.
|
|
Fix persistence of military time
|
|
|
|
Also fix build problems with libblkid in CM7
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
Change-Id: I1cd4573e25b247171e4bd8cc05b70543f897a454
|
|
Move military time setting up and remove the now unused ignore
image size setting from XML layouts.
|
|
Also fix sort order for file selector by date and file sizes
Change-Id: Idff9fe4232c19d4ed1082e78fabe6f921aa0a114
|
|
|
|
Change-Id: I924297ab0dcf920cd4b4b617949c3b16cbc68e43
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|
Change-Id: I06fa6120a975cbc3d4eef9bc2ca034ec716740ee
|
|
Change-Id: I2d2af963f4d6990191d91a336f682516af61d734
|
|
|
|
fix variable
Change-Id: I72eed7b4d709a184e53cc94165a1817a7dcf041e
|
|
|
|
Change-Id: I6a76a51cd9efd7db67d7abeeb26f9bdd0eebf5a9
|
|
Change-Id: I5a33d207ec6683de20da37e6f4f174c67785fc52
|
|
|
|
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 proper mkdosfs tool
Add fuse to TWRP
Add experimental exfat-fuse to TWRP
Convert all system() functions to use new Exec_Cmd function
|
|
|
|
|
|
Allow to decrypt /data even if decryption was skipped during the initial
loading of recovery
Change-Id: If2251757a276dd069578e93e5a038b25a825bff6
|
|
|
|
|
|
Also fixed inability to delete backups with a space in the name.
Change-Id: I2f6639d33caa3c4542960f76adbd59b25ab64f5d
|
|
|
|
|
|
|
|
|
|
|
|
Fix permission setting for other
Add new fix permissions to GUI actions
Update version number
|
|
A few other minor xml tweaks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also redirect stderr output on terminal commands for display in
GUI console
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Modify AOSP mount and wipe functions to use Partition Manager.
Update wipe code to reset the log file index when wiping cache.
Add ADB sideload to 540x960 theme.
|
|
Improve zip finding in ORS engine
Add support for restoring with just a backup name
|
|
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.
|
|
|
|
Also copy zip from /tmp to storage and remove from /tmp to
prevent running out of RAM.
|
|
|
|
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.
|
|
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
|
|
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.
|
|
|
|
Add flag parsing from recovery.fstab
|
|
|
|
|
|
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
|