summaryrefslogtreecommitdiffstats
path: root/gui/scrolllist.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update minuitwrp graphics in line with latest minuiEthan Yonker2016-01-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Delete leading spaces after word wrapping in consolethat2016-01-181-0/+3
| | | | Change-Id: I11887ebc1a3afd8f9acb1e85a212e2fe6299441c
* GUI TextBoxEthan Yonker2015-10-261-0/+40
| | | | | | | | | | | | 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
* Fix a bunch of warningsEthan Yonker2015-10-251-2/+2
| | | | | | Mostly adding __unused where needed. Change-Id: Ia4f675b9b360782728c361ed1699db0cc277c3a5
* Allow text to scale to fitEthan Yonker2015-10-161-3/+3
| | | | Change-Id: Iacd4bb78f551b51d092ecde09521b5541e7dadcd
* gui: kinetic scrolling for consolethat2015-03-051-5/+11
| | | | | | | | | - 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
* gui: introduce virtual RenderItem method in ScrollListthat2015-03-051-54/+52
| | | | | | | | - so derived lists can draw whatever they want (multi-line etc.) - replace GetListItem with RenderItem - minor cleanup Change-Id: I062e0a354f1c18ce0a5232b7542c4987b480e232
* gui: proportional scrollbarsthat2015-02-211-51/+56
| | | | | | | | | - 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
* GUI: Support styles in xml to reduce xml file sizeEthan Yonker2015-02-211-16/+7
| | | | | | | 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
* gui: make kinetic scrolling deceleration more awesomethat2015-02-151-8/+10
| | | | Change-Id: Ia674676c847e429c41ddbe6de3e1778c3d5c8302
* gui: support scrollable lists without headersthat2015-02-151-170/+73
| | | | | | | | | 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
* gui: make resources type safethat2015-02-151-20/+14
| | | | | | | | | | | - 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
* Scale the GUI to fit the screenEthan Yonker2015-02-101-7/+7
| | | | | | | | | | | | 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
* Remove deletes for images from scroll list GUI ElementsEthan Yonker2015-02-101-3/+0
| | | | | | | | | | | 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
* gui: avoid high CPU usage while waiting for inputthat2015-02-091-1/+5
| | | | | | | | | - 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
* gui: make kinetic scrolling more naturalthat2015-02-061-2/+2
| | | | | | | Speeding up scrolling after releasing is distracting, get rid of it. Instead reduce friction to its previous value. Change-Id: I5c99cc71b631747697e967bd75669aa3d908c637
* Unify scrollable list codeEthan Yonker2015-02-051-0/+709
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