summaryrefslogtreecommitdiffstats
path: root/minui (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-02-23Fix "ordered comparison between pointer and zero".MinSeong Kim1-1/+1
From Clang 4.x releases, DR583 and DR1512 will be addressed. This patch, in advance, fixes the error(s). Test: `mmma bootable/recovery` Change-Id: I29dc85ae681307c322ab3a698c3f3bbad1c784ee Signed-off-by: MinSeong Kim <minseong.kim@linaro.org>
2017-01-21ifdef overlay graphicsEthan Yonker2-5/+7
Change-Id: If3173ddbfaccb95cc48636240ee3a918dac1e23f
2016-09-09Have gr_init_font alloc memory for the fontDamien Bargiacchi2-8/+16
Change-Id: I8ccf369d52011bc5d07d8e041fe558ce734a78fc
2016-08-26Fix compatibility across the boardEthan Yonker2-0/+8
Change-Id: I6376920775ddabb4d4af505fffd86e404403a64a
2016-08-23minui: Fix gr_set_font() build issue on cm-13.0 tree.nailyk2-0/+7
- Add a fake function which fill the vendor/cm/charger/healthd_board_cm.cpp requirements. Solve omnirom/android_bootable_recovery#84 issue. Change-Id: Ia9bf898006da7e4f4ee6a942584fe2dd3c88f8ba
2016-08-19Support use of custom fonts in miniuiDamien Bargiacchi3-54/+72
Bug: 29547343 Change-Id: I398160c85daac90ffab2fa9bb2e96795b9e9885a
2016-05-17DO NOT MERGE Use updated libpng APIMatt Sarett1-10/+10
BUG:23265085 Change-Id: Ibc521fae11dad22283d8469329326ef79525b414
2016-04-20Fix matches_locale functionTianjie Xu2-13/+10
matches_locale was expecting input locale string to have at most one underscore; as a result "zh_CN_#Hans" ignores "zh_CN" and matches into "zh". Fix the match function and add unit tests. Bug: 27837319 Change-Id: I4e8a66f91cae6ac2a46b6bf21f670d5ea564c7c8
2016-04-15Update the system update animation.Elliott Hughes1-2/+0
Switch to a Wear-like intro/loop system. We don't have an intro yet, but hopefully this will let Wear delete more code when they move to N. Unlike them, we don't hard-code the number of frames: we just look to see what we have available. We do hard-code the fps though. Also add a graphics test mode so you can see a demo of the UI components without having to actually apply an OTA. Also fix a bug where default locale is null rather than en-US: it's more useful to show _some_ text if we don't have a locale (which should only be during development anyway). Bug: http://b/26548285 Change-Id: I63422e3fef3c41109f924d96fb5ded0b3ae7815d
2016-01-08Revert "Byte swap to support BGRA in recovery mode"Andriy Naborskyy1-12/+0
This reverts commit e5879c3639789d61803605c12371a4f291e0b3cc. The swap in page flip code is not needed any more. New changes take care of ABGR and BGRA formats swapping bytes in png and drawing routines See commit fd778e3e406a7e83536ea66776996f032f24af64 Bug: 26243152 Change-Id: I313ee41bee2c143b4e5412515285a65ac394ec77
2015-12-16res: Embed FPS into icon_installing.png.Tao Bao2-8/+17
We allow vendor-specific icon installing image but have defined private animation_fps that can't be overridden. This CL changes the image generator to optionally embed FPS (otherwise use the default value of 20) into the generated image. For wear devices, they are using individual images instead of the interlaced one. Change the animation_fps from private to protected so that it can be customized. Bug: 26009230 Change-Id: I9fbf64ec717029d4c54f72316f6cb079e8dbfb5e
2015-12-01minui: bring back custom font supportmaxwen5-1/+947
Change-Id: I6cb97b236ff8ada46d270e99ab37656f5f1b73f8
2015-11-16recovery: Switch to clangTao Bao1-0/+1
And a few trival fixes to suppress warnings. Change-Id: Id28e3581aaca4bda59826afa80c0c1cdfb0442fc (cherry picked from commit 80e46e08de5f65702fa7f7cd3ef83f905d919bbc)
2015-10-14Add support for RGBA_8888 pixel formatKra1o54-0/+10
Change-Id: Ia15d49e51cad5bc8a3291975e1ff515a2b1c419c
2015-10-14Add qcom overlay graphics support to minuiEthan Yonker5-4/+845
graphics_overlay.cpp is based on a mix of AOSP code for graphics_fbdev.cpp along with overlay graphics code from CAF that was brought into earlier versions of TWRP and then further adapted and improved before being brought into this patch set. Also added a rule to build a minuitest binary for testing the minui engine to ensure proper operation on a device. Change-Id: I3972d3a6baa7002615319421ac07d9299c3cec69
2015-10-14Add 16bpp support to minuiEthan Yonker1-25/+136
Change-Id: I9a9ba6ccbef999b1a4b122e45f862bd3672b5047
2015-07-16minui: add BOARD_USE_CUSTOM_RECOVERY_FONTmaxwen6-1/+965
we want to use it in charger Change-Id: I3e0288b074bd7203214d218aaee69cb4798e9531
2015-07-02Add drm support to minuiStéphane Marchesin4-0/+484
Bug: 22231636 Change-Id: I103c8e906b7dd9862b7bb89d8642268e9a3006b4 Signed-off-by: Stéphane Marchesin <marcheu@chromium.org>
2015-06-03recovery: Switch to clangTao Bao1-0/+1
And a few trival fixes to suppress warnings. Change-Id: I38734b5f4434643e85feab25f4807b46a45d8d65
2015-04-30Check all lseek calls succeed.Elliott Hughes1-1/+2
Also add missing TEMP_FAILURE_RETRYs on read, write, and lseek. Bug: http://b/20625546 Change-Id: I03b198e11c1921b35518ee2dd005a7cfcf4fd94b (cherry picked from commit 7bad7c4646ee8fd8d6e6ed0ffd3ddbb0c1b41a2f)
2015-04-30Check all lseek calls succeed.Elliott Hughes1-1/+2
Also add missing TEMP_FAILURE_RETRYs on read, write, and lseek. Bug: http://b/20625546 Change-Id: I03b198e11c1921b35518ee2dd005a7cfcf4fd94b
2015-04-23Add option to use new heap_id_mask instead of old heap_maskKra1o52-0/+8
Use TW_NEW_ION_HEAP := true to use it Change-Id: I2ad105fa6d122b460ed4b5dc78563077b7904567
2015-04-15Don't use typedefs that hide *s.Elliott Hughes6-43/+38
gr_surface was causing confusion for no good reason. Change-Id: If7120187f9a00dd16297877fc49352185a4d4ea6
2015-04-14Move the menu header out of the menu.Elliott Hughes2-2/+2
This makes it easier for us to deal with arbitrary information at the top, and means that headers added by specific commands don't overwrite the default ones. Add the fingerprint back, but broken up so it fits even on sprout's display. Change-Id: Id71da79ab1aa455a611d72756a3100a97ceb4c1c
2015-04-10Switch minui over to C++.Elliott Hughes8-102/+82
Change-Id: I59e08a304ae514a3fdb6fab58721f11670bc1b01
2015-04-10Fix ScreenRecoveryUI to handle devices without power/up/down.Elliott Hughes2-4/+9
Currently fugu has a custom subclass to handle this. The default code supports devices with trackballs but not all shipping Nexus devices? That's just silly. Change-Id: Id2779c91284899a26b4bb1af41e7033aa889df10
2015-04-10Add ev_iterate_available_keys to minui.Elliott Hughes3-94/+126
This lets us recognize whether we have up/down/power, say, and tailor the UI accordingly. Change-Id: If94e454f14243b59d2f473ac9a436bd60591da01
2015-03-24Remove support for Cupcake kernels.Elliott Hughes1-17/+0
Change-Id: I7376b9d3c1e11d19e164072d6e9d09c1183114a0
2015-03-24Fix recovery image text rendering.Elliott Hughes2-25/+22
Previously most devices would lose the character before a line wrap. The log's text rendering was starting at offset 4 but none of the arithmetic was taking this into account. It just happened to work on the Nexus 9's 1536-pixel wide display (1536/18=85.3) but not on a device such as the Nexus 5 (1080/18=60). The only active part of this change is the change from 4 to 0 in the gr_text call. The rest is just a few bits of trivial cleanup while I was working out what was going on. Change-Id: I9279ae323c77bc8b6ea87dc0fe009aaaec6bfa0e
2015-02-26Drop hardcoded LOCAL_C_INCLUDES from minui/Android.mkTrevor Drake1-4/+1
The zlib include was not required. libpng is now handled by referencing the libpng static library Change-Id: Ie4e0abad3fff5b763eba363d3d0fa96128ff49bc
2015-02-12Fix Droid and animation color in recovery modeTony Kuo5-14/+25
[Problem] Droid and animation color in recovery mode are incorrect [Modify] - Add support for flipping (zero copy) with RECOVERY_ABGR. - Decodes PNG files to BGRA directly, and other fills, text and alpha blending are also done directly in BGRA (i.e. blits can still bypass conversion) - Remove the BGRA workaround added previous for single buffer mode (f766396) Bug:19216535 Change-Id: Ie864419fc6da776ff58b2d02e130f203c194500f Signed-off-by: Tony Kuo <tony.kuo@mediatek.com>
2015-02-11recovery: Handle EV_SW eventsAjay Dudani1-2/+2
Change-Id: I29c13a941067cd1bbdced3bd67fd93293347d7b6
2015-02-11recovery: Generate libminui dynamic libraryAjay Dudani1-0/+7
Allow factory test images to use minui functionaltiy by making use of libminui dynamic library. Change-Id: I63e77420d5addbcc6eebeedc213f629085766b4c
2015-01-30Add missing includes.Elliott Hughes5-0/+6
Change-Id: I06ea08400efa511e627be37a4fd70fbdfadea2e6
2014-12-17Add support for custom kernel headersKra1o51-2/+10
Change-Id: I39fe4de8919e59dd75e8cb535fa0648948035c26
2014-12-12EPOLLWAKEUP handling in minui/events.cEthan Yonker1-0/+8
Older trees may not have EPOLLWAKEUP defined so we will work around the lack of EPOLLWAKEUP support as best we can. This should only maybe affect how charger handles waking up the screen in off mode charging in older trees. No impact on TWRP itself. Change-Id: Ia72ebfc12778b2bcda648edc27d2092c2ead415c
2014-12-09Update minui to work properlyEthan Yonker1-143/+132
minui is not used by TWRP but it is included in AOSP recovery source and healthd (formerly charger) uses minui for displaying the battery charging animation during off-mode charging. This patch fixes / updates minui to use updated code to load png files into memory. Change-Id: I706d10d66de95886396d866e80615b1fb905d201
2014-11-14Byte swap to support BGRA in recovery modeHeather Lee Wilson1-0/+12
Fixes color palate of recovery mode when double buffer enabled. Bug: 18169447 Change-Id: Ia50b0fb9afd8001dfd740c09ce109fa421e691f7
2014-11-12Make TWRP compile for arm64Ethan Yonker1-1/+1
-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
2014-11-07Disable custom theme and fix png loadingEthan Yonker1-2/+2
We will have to update the zip handling later. Now at least TWRP boots up to the GUI. Change-Id: I4182896eb095cab52fb0f1c9c20b6605e35677b9
2014-11-07Fix up old libminui to compileEthan Yonker5-29/+247
Implement some needed updates to libminui to make it compile for healthd. Note that res_create_multi_display_surface is not fully implemented so healthd may still have issues with displaying some graphics. Will update later when we are able to test these changes. Change-Id: Ic1095a998f5dfe7e36a08384c86da28e0524a03f
2014-11-06Revert to old libminui and fix upEthan Yonker9-1141/+292
We will wait for CAF to give us a new libminui that supports qualcomm overlay before moving up to the new format if possible. Attempt to fix up old libminui to work with new libpng. Change-Id: I494b7287b347f4730aa8f9d27d4cc17b6e93919a
2014-09-03Build block TWRP with RECOVERY_VARIANTMatt Mower1-4/+4
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
2014-06-30minui: Do not return true from target_has_overlay() if MSM_BSP is not setAndrew Dodd1-3/+4
Since target_has_overlay() was not ifdefed with MSM_BSP, it would return true on some devices even if MSM_BSP was unset, breaking LPM and some other minui functions. Change-Id: Ic6b524fa0b5e36fc9ffe67d53e2bf33e9d4fd2d3
2014-06-12minui: avoid random screen frame at startupJoey Pan1-0/+2
Clear framebuffer at init. [toddpoynor@google.com: forward port] Change-Id: Ie98c7724cd974dcacef3e3559a6fe492864a5e72
2014-05-14Support BGRA framebufferDaniel Leung1-0/+13
The re-designed recovery graphics code only supports RGB{_,X,A} framebuffer, and this patch adds support for BGRA framebuffer. Change-Id: I3780c8288088f497fa248f3492c54f43834a8598 Signed-off-by: Daniel Leung <daniel.leung@intel.com> Reviewed-by: Jovanovic, Radivoje <radivoje.jovanovic@intel.com> Reviewed-by: Parkinson, TimothyX L <timothyx.l.parkinson@intel.com> Tested-by: Parkinson, TimothyX L <timothyx.l.parkinson@intel.com> Reviewed-by: Boie, Andrew P <andrew.p.boie@intel.com> Reviewed-by: Gumbel, Matthew K <matthew.k.gumbel@intel.com>
2014-05-02Update minui to support overlay graphicsDees Troy7-36/+1614
Fix path in minuitwrp for includes Change-Id: I9e9e5f67e8574cdcbc6f8873ceeb56eab71143ed
2014-04-30recovery: Compatibility with upstream minui changeSteve Kondik1-0/+3
* minui is changing a lot upstream. We won't merge it here, but it's being used in another branch. Add compatibility in CWM so that we can move forward. Change-Id: I6866ec2e4dbbb3e7682595aef91645b6de547435
2014-04-26recovery: minui: add adf backendGreg Hackmann4-5/+266
Change-Id: I1ad97b5b62bddbcb1104fa0b4e54415b793a4194 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-03-20restore minui support for paletted images with < 8 bitsDoug Zongker1-1/+1
The PNG image loaders should support images that use palettes requiring fewer than 8 bits. Change-Id: Ibcb0ff6f04aea8de54b03c0efa7a79e9b3635146
2014-03-18fix error log statementDoug Zongker1-1/+1
We were printing the address of channels instead of the value there. Change-Id: I652340c7c1a0abaf01af555e54d2c0366d21ad78
2014-03-17refactor image resource loading code in minuiDoug Zongker3-238/+242
Reduce the number of copies of libpng boilerplate. Rename res_create_* functions to be more clear. Make explicit the use of the framebuffer pixel format for images, and handle more combinations of input and output (eg, loading a grayscale image for display rather than use as a text alpha channel). Change-Id: I3d41c800a8f4c22b2f0167967ce6ee4d6b2b8846
2014-03-14Recovery 64-bit compile issuesMark Salyzyn2-4/+5
Change-Id: I92d5abd1a628feab3b0246924fab7f97ba3b9d34
2014-03-11separate fbdev-specific code out from minuiDoug Zongker5-152/+268
Isolate the code that interacts with fbdev, in preparation for adding a new backend. Change-Id: I19105e9da1ca6408cebc110f7e2bb5abfb481ee9
2014-03-11remove pixelflinger from recoveryDoug Zongker3-266/+348
Recovery now draws directly to the framebuffer by rolling its own graphics code, rather than depending on libpixelflinger. The recovery UI is modified slightly to eliminate operations that are slow with the software implementation: when the text display / menu is turned on, it now appears on a black background instead of a dimmed version of the recovery icon. There's probably substantial room for optimization of the graphics operations. Bug: 12131110 Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595 Conflicts: minui/resources.c
2014-03-11change how recovery animation is implementedDoug Zongker2-3/+180
Instead of one 'base' installing image and a number of overlay images that are drawn on top of it, we represent the installing animation with one PNG that contains all the animation frames, interlaced by row. The PNG is expected to have a text chunk with the keyword 'Frames' and a value that's the number of frames (as an ascii string). This representation provides better compression, removes the need to subclass ScreenRecoveryUI just to change the position of the overlay or number of frames, and doesn't require gr_blit() to support an alpha channel. We also remove the 'indeterminate' progress bar used when wiping data and/or cache. The main animation serves the same purpose (showing that the device is still alive); the spinning progress bar has been redundant for a while. This changes the default recovery animation to include the antenna-wiggling and gear-turning that's used in the Nexus 5 recovery animation. Change-Id: I51930a76035ac09969a25472f4e572b289418729 Conflicts: screen_ui.cpp screen_ui.h
2014-03-11separate fbdev-specific code out from minuiDoug Zongker5-152/+268
Isolate the code that interacts with fbdev, in preparation for adding a new backend. Change-Id: I19105e9da1ca6408cebc110f7e2bb5abfb481ee9
2014-03-11remove pixelflinger from recoveryDoug Zongker3-273/+347
Recovery now draws directly to the framebuffer by rolling its own graphics code, rather than depending on libpixelflinger. The recovery UI is modified slightly to eliminate operations that are slow with the software implementation: when the text display / menu is turned on, it now appears on a black background instead of a dimmed version of the recovery icon. There's probably substantial room for optimization of the graphics operations. Bug: 12131110 Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595
2014-03-07change how recovery animation is implementedDoug Zongker2-3/+180
Instead of one 'base' installing image and a number of overlay images that are drawn on top of it, we represent the installing animation with one PNG that contains all the animation frames, interlaced by row. The PNG is expected to have a text chunk with the keyword 'Frames' and a value that's the number of frames (as an ascii string). This representation provides better compression, removes the need to subclass ScreenRecoveryUI just to change the position of the overlay or number of frames, and doesn't require gr_blit() to support an alpha channel. We also remove the 'indeterminate' progress bar used when wiping data and/or cache. The main animation serves the same purpose (showing that the device is still alive); the spinning progress bar has been redundant for a while. This changes the default recovery animation to include the antenna-wiggling and gear-turning that's used in the Nexus 5 recovery animation. Change-Id: I51930a76035ac09969a25472f4e572b289418729
2014-02-06recovery: fix building with pointer-to-int errors turned onColin Cross1-1/+1
Use intptr_t/uintptr_t to cast between pointer and int to allow building with -Werror=pointer-to-int-cast and Werror=int-to-pointer-cast turned on. Cast to char* instead of unsigned int for pointer arithmetic. Change-Id: Ia862306fdcca53866b330e8cf726f3d62f2248a0
2014-02-06minui: adapt backlight blanking commit to TWRPMatt Mower2-5/+15
Change-Id: I79417d218c84fcdaf2ce5ecdf314031831d89575
2014-02-03minui: Allow devices to blank/unblank using LCD backlightEthan Chen2-0/+16
* Some devices rely on the LCD backlight to blank/unblank the display, support them by allowing a custom LCD backlight path to be used. Change-Id: I8406b4b55cd7a2afc4f8f8ba65de2c53b949489d
2013-12-12Support custom graphics.c.Koushik Dutta1-1/+6
TWRP does not use this, but is needed for other things that depend on it like charger. Change-Id: Ic7d10e8230151bcc4be6cfa222a1e07231e7139f
2013-11-26minui: do not use flexible array initializationsynergy dev1-1/+1
Avoiding the use of gnu extensions improves code portability Change-Id: I441a49ce08b6ecb1d735ca453552fa92026c5016
2013-09-26fix use of RGBA images in minuiDoug Zongker1-3/+11
Bug: 10934401 Change-Id: I471b30e5b2e877c620e4a0a524e950cddbc6d2c0
2013-09-17recovery: fix epoll events type to uint32_tTodd Poynor2-3/+3
Change-Id: I5db9987102201c18821acb45d1f824e9865a1451
2013-09-12minui: add ev_get_epollfd() to retrieve epoll file descriptorTodd Poynor2-0/+6
To allow use of ev_* functions with an external main loop. Change-Id: If73717b64d7c455ca726b90a815a31c1edf52544
2013-09-12minui: convert ev_*() event interface to epollTodd Poynor2-27/+58
Help enable external main loop combined with ev_*() key event processing. Specify EPOLLWAKEUP to hold a wakelock on any event, assuming this is needed (may need to make this optional). Convert callback events parameter to unsigned int. Change-Id: Ib5e09abbd7724ffd830e2cf8e25e7eb59d3aa072
2013-09-06Hack-fix build with different system/core/charger versionsVojtech Bocek2-2/+12
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
2013-08-27Update libpng API usageJohn Reck1-12/+12
Remove usage of deprecated methods Change-Id: I747568a2c8c0c65ecbc9a3da4bac7b9cac7708ab
2013-08-13Fix libpng API usageJohn Reck1-12/+12
Remove usage of deprecated methods that were removed in 1.6 Change-Id: I2a669bf5201197f60adfdbe512fd729bebb74f9c
2013-07-09recovery: move log output to stdoutDoug Zongker1-2/+2
Recovery currently has a random mix of messages printed to stdout and messages printed to stderr, which can make logs hard to read. Move everything to stdout. Change-Id: Ie33bd4a9e1272e731302569cdec918e0534c48a6
2013-03-07more font improvements and cleanupDoug Zongker3-13/+247
Get rid of the notion of a font's "ascent"; the reference point for drawing is the top-left corner of the character box rather than the baseline. Add some more space between the menu entries and make the highlight bar around the text. Replace the default font.png with two images; the build system will include one or the other based on the resolutions of the device. Restore the original compiled-in bitmap font, to fall back on when font.png can't be found (eg, in the charger binary). Add support for bold text (when a font.png image is used). Change-Id: I6d211a486a3636f20208502b1cd2aeae8b9f5b02
2013-03-05recovery: change font for menus to be an imageDoug Zongker3-246/+27
Instead of representing the font used for menus and log messages in the recovery binary, load it from a resource PNG image. This allows different devices to substitute their own font images. Change-Id: Ib36b86db3d01298aa7ae2b62a26ca29e6ef18014
2012-12-19add optional overscan compensation to recovery graphicsDoug Zongker3-5/+32
If your screen is a TV, it may not actually be displaying the edges of the framebuffer. Allow specifying an overscan percentage, and move each edge of the framebuffer in by that percent of the width/height. (The gr_* layer just lies to the caller about the size of the framebuffer, telling the caller it's smaller than it really is, and offsets all drawing commands to match.) Change-Id: I11bb2feb39ae522bd3e957a14ebdecf3609e0fdc
2012-09-05TWRP-ify AOSP codeDees_Troy1-1/+1
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
2012-09-04minor recovery fixesDoug Zongker2-6/+6
- protect against missing/malformed bitmaps: fail to display them but don't crash. - don't draw animation overlays until the overlay offset is computed. - logging cleanup Change-Id: Ieb1c155cfbb11e643000bdb5d1a57900c8757739
2012-08-30recovery locale handling fixesDoug Zongker1-8/+0
- change locale filename to "last_locale" so the main system doesn't delete it - clean up some chatty logging - update images with real German (other languages TBD) Change-Id: I2ebb4ed4e054bd1808a3042d9efbb2c18f3a044d
2012-08-23add simple text to recovery UIDoug Zongker3-0/+168
- recovery takes a --locale argument, which will be passed by the main system - the locale is saved in cache, in case the --locale argument is missing (eg, when recovery is started from fastboot) - we include images that have prerendered text for many locales - we split the background states into four (installing update, erasing, no command, error) so that appropriate text can be shown. Change-Id: I731b8108e83d5ccc09a4aacfc1dbf7e86b397aaf
2012-08-21Fixing trivial warnings for libminuiEdwin Vane1-2/+2
After fixing three trivial warnings, libminui builds cleanly with clang. Change-Id: Id7c6228295427a5ed3c774c5f90e88a28336c1f7 Author: Edwin Vane <edwin.vane@intel.com> Reviewed-by: Kevin P Schoedel <kevin.p.schoedel@intel.com>
2012-07-20minui: fix screen update issueDevin Kim1-2/+4
yres_virtual value is set incorrectly, causing serveral images to be skipped. Change this value according to the number of buffers to fix this issue. from: codeaurora.org minui: Display the battery charging image correctly commit: 581a4dead6b96579a13ff22e2454c1f329731679 Change-Id: I10f5d1c6cc37705f0287c7dd517082de2e11d264 Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-07-12graphics: add support for "single buffering"Octavian Purdila1-2/+10
When we don't have enough video memory for double buffering we fallback to "single buffering". Change-Id: I8bfab6d8cd6b54f0cc6c67edc41a4c37d8fbd4ba Signed-off-by: Octavian Purdila <octavian.purdila@intel.com> Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2012-07-11allow double-quotes or not in TARGET_RECOVERY_PIXEL_FORMATDoug Zongker1-2/+6
Change-Id: I0bf22c87c51a34ee4a839c4966277fad8150bd59
2011-10-31turn recovery into a C++ binaryDoug Zongker1-0/+8
Change-Id: I423a23581048d451d53eef46e5f5eac485b77555
2011-10-28turn recovery into a C++ binaryDoug Zongker1-0/+8
Change-Id: I68a67a4c8edec9a74463b3d4766005ce27b51316
2011-10-13minui: add ability to synchronize current key stateDima Zavin2-2/+38
If a key is down prior to the time of initialization, we would not get the down event for the key, and thus think that the key is not pressed. Add an interface that allows one to provide a callback to execute on all keys that are currently down. Change-Id: I2a4096c0cb4c7c7a9a80d207835f168a0b418413 Signed-off-by: Dima Zavin <dima@android.com>
2011-09-27fix problem where the screen is sometimes all black in recoveryDoug Zongker1-0/+3
Change-Id: Ifa0b59e43eaf0bea9435aa4d96c5b0fc4f10fbfe
2011-09-02minui: events: only open input devices with EV_KEY and/or EV_RELDima Zavin1-0/+17
Change-Id: I8283d7aaa0f66d488f462cd108350cc49657a745 Signed-off-by: Dima Zavin <dima@android.com>
2011-09-02minui: events: add ability to poll on non-input fdsDima Zavin2-3/+23
Change-Id: Iad52a6f2adcae0068d252d6163586f9d7b93121d Signed-off-by: Dima Zavin <dima@android.com>
2011-09-02minui: events: refactor event acquisitionDima Zavin2-15/+49
Events are now delivered through a callback mechanism during a call to ev_dispatch(). This will allow us to extend the events code to handle other devices/fds, not just input. One such example is the ability to process uevents. During initialization, we provide an input callback to ev_init that gets called when a new event is encountered during dispatch. ev_get has been removed and replaced with ev_get_input() helper function that can be called from inside the callback to attempt to get an input event. The existing client of ev_get in recovery has been split up such that the input thread just calls ev_wait(); ev_dispatch(); and the input_callback handles individual events by using the ev_get_input() helper. Change-Id: I24d8e71bd1533876b4ab1ae751ba200fea43c049 Signed-off-by: Dima Zavin <dima@android.com>
2011-08-30minui: graphics: add interface for framebuffer blank/unblankDima Zavin2-0/+13
Change-Id: I5c3ee61cbf6fadae50f10b9f2e73caceaa5048a7 Signed-off-by: Dima Zavin <dima@android.com>
2011-08-30minui: graphics: add ability to query font sizeDima Zavin2-0/+7
Change-Id: I5e8f477b7b205794f2975f12e6b6010c177f6052 Signed-off-by: Dima Zavin <dima@android.com>
2011-06-24Get the correct line_length.Michael Ward1-2/+37
Set the BPP and other fields and write it back, so the line_length comes back correctly. Change-Id: I85e4e8223c79b9394ae1fb609b3026de62027ab8
2011-06-23Graphics can handle stride != xres, and BGRA support.Michael Ward2-12/+18
Change-Id: Ifee94ac08028e62a40241a089ac7c36346fea3a3
2011-03-05allow paletted RGB images in recoveryDoug Zongker1-2/+7
Recovery assumes any paletted images are in RGBA format. Make it handle both RGB and RGBA paletted images. Bug: 3514884 Change-Id: I517cd571aa3f434dacacc33a774236260aec20ef
2011-03-01make recovery UI images more general; allow for installation animationDoug Zongker1-0/+2
Change some of the UI parameters (# of indeterminate progress bar frames, fps, etc.) from #defined constants to variables that can be set by the device-specific recovery_ui code (via a new function). Support overlaying different images on top of the base installation icon to animate it. Make the FPS control more accurate. Change-Id: I9268b389b7ea6b3ed9e0c7eae37baf4272e60edd
2011-01-14option to allow recovery to use 24-bit graphics in UIDoug Zongker2-10/+22
Add "RECOVERY_24_BIT := true" to the device's BoardConfig.mk to use 24-bit framebuffers in the recovery ui. Change-Id: Iaede138bf7870becf237f12f1c0e49c9ff82d007
2010-11-01clear recovery framebuffers on allocation; display icon right after ui_initDoug Zongker1-1/+2
Make ui_init() clear the framebuffer memory it maps in so the user isn't treated to a visible flash of random bits on recovery startup. Call ui_set_background() (to show the installing icon) right after ui_init() to display something while device_recovery_start() is working (which can take a second or two on some devices). Bug: 3145331 Change-Id: I11e7859fab5847370ea4f4932c3fb1558af26c5d
2009-11-13eclair snapshotJean-Baptiste Queru2-16/+1
2009-10-09simplify construction of the recovery progress barDoug Zongker1-3/+8
Instead of six separate images for the left end, right end, and tiled center portion of the full and empty progress bars, just use two images: a full bar and an empty bar. Draw the left side of the full bar and the right side of the empty one, moving the boundary rightward to "fill" the bar. This makes recovery trivially smaller, and allows fancier images to be used as progress bars. Support paletted PNG images as resources.
2009-06-11split out device-specific recovery UI code into vendor directoriesDoug Zongker1-16/+0
Take some device-specific details of the recovery UI (eg, what keys to press to bring up the interface and perform actions, exact text of the menu, etc.) and split them out into separate C functions. Arrange to take implementations of those functions from the appropriate vendor directory at build time. Provide a default implementation in case no vendor-specific one is available.
2009-06-06Force the fb into 16 bpp mode in case the hw has some other default.Rebecca Schultz Zavin1-0/+1
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
2009-03-28AI 143289: am: CL 143128 Use PNG instead of BMP for recovery image icons. This savesDoug Zongker1-100/+67
about 60k from the recovery and system images. Original author: dougz Merged from: //branches/donutburger/... Automated import of CL 143289
2009-03-27AI 143128: Use PNG instead of BMP for recovery image icons. This savesDoug Zongker1-100/+67
about 60k from the recovery and system images. Automated import of CL 143128
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project7-0/+946
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project7-946/+0
2009-02-11auto import from //branches/cupcake/...@130745The Android Open Source Project1-16/+33
2008-12-18Code drop from //branches/cupcake/...@124589The Android Open Source Project1-33/+24