summaryrefslogtreecommitdiffstats
path: root/minuitwrp/graphics.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update minuitwrp graphics in line with latest minuiEthan Yonker2016-01-271-754/+0
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Allow text to scale to fitEthan Yonker2015-10-161-20/+73
| | | | Change-Id: Iacd4bb78f551b51d092ecde09521b5541e7dadcd
* Remove support for non-TTF fontsEthan Yonker2015-10-151-267/+18
| | | | | | | | | | | 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
* Add support for RGBA_8888 pixel formatKra1o52015-10-141-0/+15
| | | | Change-Id: Ia15d49e51cad5bc8a3291975e1ff515a2b1c419c
* Merge up to AOSP marshmallow-releaseEthan Yonker2015-10-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to maintain compatibility with older trees, we now have minadbd.old and minui.old. I had to use a TARGET_GLOBAL_CFLAG to handle ifdef issues in minui/minui.d because healthd includes minui/minui.h and there was no other alternative to make minui.h compatible with older trees without having to modify healthd rules which is outside of TWRP. Note that the new minui does not currently have support for qcom overlay graphics. Support for this graphics mode will likely be added in a later patch set. If you are building in a 6.0 tree and have a device that needs qcom overlay graphics, be warned, as off mode charging may not work properly. A dead battery in this case could potentially brick your device if it is unable to charge as healthd handles charging duties. Update rules for building toolbox and add rules for making toybox Use permissive.sh in init.rc which will follow symlinks so we do not have to worry about what binary is supplying the setenforce functionality (toolbox, toybox, or busybox). Fix a few warnings in the main recovery binary source code. Fix a few includes that were missing that prevented compiling in 6.0 Change-Id: Ia67aa2107d260883da5e365475a19bea538e8b97
* Add flag to disable double bufferingKra1o52015-06-291-0/+4
| | | | | | | Some devices don't support double buffering, so add the flag TW_DISABLE_DOUBLE_BUFFERING to disable it Change-Id: Ia9c233fa229ae9c221a6c6f219b216d1753052f4
* framebuffer: s6 edge takes a little lomger to initialize fb0jenkins2015-06-171-1/+2
| | | | Change-Id: I48a5b25a227afb8637fcce7e4a1e2fc6bcc56b03
* Make TWRP compile for x86-64 CPU targetEthan Yonker2015-03-131-2/+7
| | | | | | | Also add a short while loop to wait for fb0 to be created as was needed on the x86-64 target for the Android emulator. Change-Id: Ib1b87bea028ac3eac0541283334a0157cdfbce11
* Properly disable GGL_TEXTURE_2D after using it in minuitwrpVojtech Bocek2015-03-111-1/+7
| | | | | Change-Id: Ib100ccf3c8f6c622beb40b37ba3f61aad69d7d93 Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
* Implement gr_line() and gr_render_circle()Vojtech Bocek2015-03-111-0/+45
| | | | | Change-Id: I63c8dcfa276bbeb550ca051a3a1a0646a2d07dc6 Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
* gui: support scrollable lists without headersthat2015-02-151-0/+14
| | | | | | | | | 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
* Fixed screen flipping for devices where xres_virtual > xresBogdan Seniuc2015-01-301-8/+6
| | | | Change-Id: I3efc10e2c9759a358ded5b46f6125958e6d6bd66
* Use /twres instead of /res for theme resourcesDees Troy2015-01-221-1/+1
| | | | | | | | | 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
* Make TWRP compile for arm64Ethan Yonker2014-11-121-2/+2
| | | | | | | | | | | | | | | | -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
* Revert "Make libminuitwrp compile"Dees Troy2014-11-061-32/+2
| | | | | | This reverts commit a27d02fab9d6feb793cdcd6146f2655658f36f2b. Change-Id: I62d143044749f101cd70fef048057f896e46c208
* Make libminuitwrp compileEthan Yonker2014-11-061-2/+32
| | | | | | | Odds are this is horribly broken, but we are not able to work on it just yet. Change-Id: I8cd12a6dba7957b1ccc1275b8d72c24797856db0
* Add support for TrueType fontsVojtech Bocek2014-10-141-59/+42
| | | | | | | | | | | | | * 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>
* TW_SCREEN_BLANK_ON_BOOT will jolt the screen/touch driver.xNUTx2014-08-101-2/+5
| | | | | | | | | | | | If on the default settings the screen will only kick in to action AFTER it has gone to sleep once and has been woken up again with a key press, this will be needed to set to 'true' in the BoardConfig.mk The code was already there, Dees_Troy and I thought it would be nice to make it a switch to control at compile time. Change-Id: I5116a27afe9cba57122761c192ea3ee153d98162
* Stop memory management on blanking overlay graphicsDees Troy2014-08-071-5/+5
| | | | | | | This prevents a crash in TWRP when trying to blank the screen on devices that are using overlay graphics. Change-Id: I155868616ffa1b211e97be97e4abe8b03dad7ca0
* Implement "take a screenshot" featureVojtech Bocek2014-07-091-2/+2
| | | | | | | | * 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>
* Fix overlay graphics detectionDees Troy2014-04-031-1/+3
| | | | Change-Id: Ic1ef3f6a4e9c74efb07d8a0103543d124567f0d4
* Support Qualcomm overlay graphics in recoveryEthan Yonker2014-04-011-30/+130
| | | | Change-Id: Ia75c34ab1a45b7c8802c902906198517aa3437d5
* Add word wrap to console output and fix scrolling in consoleDees Troy2014-02-261-0/+24
| | | | Change-Id: Ibcf89952ee1391350c715f1ec82cf0cdb9b0ca7d
* Disable alpha blending for non-transparent bitmapsVojtech Bocek2014-02-061-1/+9
| | | | | | | | | | | | * The difference isn't as big as there are not many big non-transparent bitmaps in TWRP, on install screen on flo it is about 5-10ms better. Only place where the difference is noticable is keyboard, which is pretty big non-transparent bitmap, where it speeds up the render by ~40ms on flo. Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: I4c51ef957ae2a1829ada4eb566e9964f708efcf0
* Disable alpha blending for fully opaque rectanglesVojtech Bocek2014-02-061-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * This makes the rendering several times faster, because the giant rectangle used as background no longer uses expensive blending calculations, and there are also many other big rectangles which don't need it (fileselector, ...). * Results on hammerhead: - WITHOUT the patch - scrolling in fileselector on install page: I:render 67 ms, flip 6 ms, total 73 ms I:render 82 ms, flip 6 ms, total 88 ms I:render 81 ms, flip 6 ms, total 87 ms I:render 80 ms, flip 5 ms, total 85 ms - WITH the patch - scrolling in fileselector on install page: I:render 32 ms, flip 6 ms, total 38 ms I:render 16 ms, flip 6 ms, total 22 ms I:render 16 ms, flip 7 ms, total 23 ms I:render 18 ms, flip 3 ms, total 21 ms I:render 18 ms, flip 2 ms, total 20 ms * On flo, the results are even more noticable - 160ms -> 40ms Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: I5685763ba21745d7cd93133adf5f0bcb4c9a581f
* graphics: update BOARD_HAS_FLIPPED_SCREEN function to work with 16bpp or 32bppHashcode2013-07-031-4/+8
| | | | Change-Id: I93391596eece6b08ecf2e54f443e9821573cb871
* Move all AOSP code out of recovery binaryDees_Troy2013-04-041-9/+9
| | | | | | Improves license compatibility between GPL and Apache Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
* Add 2 second pre-dim and bugfix blank timerDees_Troy2013-03-011-1/+2
| | | | | | 2 second predim code courtesy of bigbiff Change-Id: I052ac422f78dc82c05f58c188587534b800b935a
* minuitwrp: fix screen update issueHiemanshu Sharma2012-11-211-2/+4
|
* graphics: add support for "single buffering"Hiemanshu Sharma2012-11-211-2/+10
|
* Fix compiler warningsDees_Troy2012-09-281-2/+2
|
* TWRP-ify AOSP codeDees_Troy2012-09-051-0/+716
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