Commit Graph

130 Commits

Author SHA1 Message Date
Wiktor S. Ovalle Correa
3b141041e9 [EGD-5737] Merge master into experimental
Keep experimental up to date with changes from master
2021-02-17 17:09:37 +01:00
Tomek Sobkowiak
be66c10888 [EGD-5347] Replace filelength with file_size
Replace use of filelenght with std::filesystem::file_size
sqlite3vfs is using file descriptors so filelength is just renamed
2021-02-17 17:07:41 +01:00
Maciej Janicki
de3b05d64d [EGD-5722] Fix color test scheme change
This commit fixes full white color not being changed by Color Test
window in case of clear command and vector images.
2021-02-12 14:35:40 +01:00
Maciej Janicki
bb59805a8e [EGD-4822] Add color test window to settings app
Add new window to allow convenient display and globally
change used color intensities  for design and testing purposes.
Changes were introduced to Renderer as well as GUI service
to allow global change of used color scheme.
When using list, screen is deep refreshed each
time the color is changed.
Known issues:
Item focus borders (top,bottom) with changed black intensity
may not render properly, however it doesn't obscure the
target functionality.
2021-02-04 13:34:04 +01:00
Maciej Janicki
e6fdf0e22c [EGD-5333] Change renderer to follow command design pattern
Changes draw command implementation to properly follow
command design pattern. All drawing commands have been
moved to separate inheriting draw commands from renderer.

Other changes:
- New draw methods overloads have been added to pixel renderer.
 Now pixel rendering methods are in one class.
- Simplified draw commands naming.
- Changed variable naming in draw commands to be more verbose.
- Changed {x,y} pairs to Points where possible.
2021-02-03 16:24:48 +01:00
Przemyslaw Brudny
fbfd08cfea [EGD-5523] ListView OnPageElement and Options refresh
Added new OnPageElement listView rebuild type. Created new
options refresh. Refactored DisplayLight Setting. BarGraph rector.
Added step render limit for small radius arcs.
2021-02-03 09:57:21 +01:00
alek
8370b97cba [EGD-5155] Change Timers debug functionality
Enhanced Timers debug functionality.
2021-01-18 21:28:36 +01:00
Piotr Tański
3f29c30bed [EGD-4968] Change GUI service to optimize flow and memory management
Gui and Eink services refactor.
Displaying frames performance optimization.
Critical resources management.
2021-01-08 16:36:12 +01:00
jimmorrisson
14918dc4f9 [EGD-4925] Change new filesystem handling implementation in module-gui. (#1193)
Due to vfs deprecation there is need to remove all vfs calls from code. This PR covers module gui. There are some modifications in other modules included which are necessary because of build system issues.
2020-12-16 15:23:11 +01:00
Marcin Smoczyński
486d21af0e [EGD-4288] refactor global data (#959)
Reduce firmware size by refactoring global data defined in public
headers.

Each global variable which require runtime initialization adds
initialization code to every translation unit which includes the header
where the variable is defined and declared.
2020-11-04 18:24:39 +01:00
Adam
8bab7f0031 EGD-3585 ServiceGUI and ServiceEink initial cleanup (#953)
* EGD-3585 SerwiceGUI and ServiceEink initial cleanup

* moved code to one function per message handling
* removed dead code from comments
* added Service.cpp demangling to debug messages for clear output
* added Response value to return messages to `connect()`
2020-11-03 17:27:00 +01:00
Adam
64db7d8327 EDG-3585 Small fixup for refresh & cleanup in buildDrawLists (#916)
* EGD-3585 Minor refresh fixup&  Normalised buildDrawList everywhere
2020-10-30 10:13:47 +01:00
Przemyslaw Brudny
e131dae68f [EGD-3743] Removed old doxygen copyright statements from project. 2020-10-20 12:55:10 +02:00
Radoslaw Wicik
2276ceed67 [EGD-3743] Update copyrights in fies 2020-10-20 12:55:10 +02:00
Piotr Tanski
fdb2cfdb5a [EGD-3597] Shape rendering refactored. (#827) 2020-10-14 12:24:41 +02:00
Piotr Tanski
f5aec0444a [EGD-3838] Introduced a meditation progress bar with simple implementation of meditation application. (#783) 2020-10-09 14:14:40 +02:00
Adam
f5f27d642f EGD-2955 EGD-3588 Timers fully refactored & updated (#721)
* Timers now are Application thread safe
* Timers now have consistent API independend of Application (no more c style timers)
* Timers can have either: callback or override onTimer() method - this
  way we can create more complicated timers or just use existing ones
* gui::Timer added via adapter class GuiTimer to decouple sys::Timer
  with gui::Timer
* Fixed race in wrapper
* Updated docs
* fixed using std and cpp_freertos and DataReceivedHandler hidden in Application.hpp
2020-10-02 14:04:57 +02:00
Piotr Tanski
2090deddb0 [EGD-3661] Drawing circles and arcs functionality added into the Renderer. (#755)
- Major code cleanup in lines drawing functionality.
2020-10-01 09:08:14 +02:00
Adam
07b243a084 Egd-3408 Rich text (#712)
* EGD-3408 gui::Text Rich text parser added with pugixml tree & tree walker

* EGD-3408 Fitted code in
2020-09-23 21:03:57 +02:00
Michał Kamoń
f2c2c2eb9a fallback font added to RawFont, functionality initialized by FontManager, UITestWindow update to include functionality visual confirmation. An unused argument in Renderer::drawChar removed. Removed unnecessary usage of unique_ptrs that was forcing a lot of glyph copying (#686)
test-gui-TextLine::TextLine - non fitting text fix
2020-09-18 07:37:25 +02:00
Tomasz Sobkowiak
45773ddfdf [EDG-3415] Handle new line when entering text 2020-09-04 13:12:02 +02:00
alek
9821cd77c6 [EGD-3558] remove memalloc 2020-09-04 11:45:50 +02:00
mozdzyk
81e14554c5 [EGD-3476] Fixed font parser and utf8 decode function for 3-byte and 4-byte characters (emojis etc.). 2020-09-01 12:03:19 +02:00
pholat
ef170c0d27 EGD-3393 UTF8 Unicode fixup for ostry cień mgły (#587)
EGD-3393 UTF8 Unicode fixup for ostry cień mgły

* We are working in little endian, string notation doest't care
* UTF8 cleanup - removed reinterpret casts, removed unused code, and added {}
* added forward declaration for ostream and moved operator<< to cpp
* Removed dead code
* Fixed crash on out of memory access in Renderer on draw char
* Fixed tests failing - there was no test for operator==
* Added changelog
2020-08-07 09:12:27 +02:00
pholat
50a1f97643 [feature] Font handling feature (#527)
* Font renamed to RawFont
* Added gui::Font adapter
2020-07-15 12:15:14 +02:00
pholat
7447fc653b Egd-3407 (#525)
* EGD-3407 gui::Text addded TextFormat class - to store format
* EGD-3407 Added gray text to Icon text in sms
2020-07-15 10:00:02 +02:00
pholat
dfbe4d4acd fixed gramar in Color (#526) 2020-07-14 13:31:46 +02:00
pholat
fb586cb4e9 EGD-3229 (#497)
* EGD-3229 text helper classes added with tests - used in tests, plus misc utils needed

No major actual functionality changed - TextClasses added with this PR
are used in tests only in this commit.
* classes needed to rewrite gui::Text added
* some utilities needed to rewrite gui::Text added
* tests added
2020-07-06 16:19:41 +02:00
pholat
938cbc186a Gui text pr1 utils and fixes (needed for gui::Text rewrite mostly) (#485)
* EGD-3229 [FIX] UTF8 fixed uint32_t range error

* EGD-3229 [util] gui::Item Navigation switch case moved to function

Needed to not copy senslessly NavigationDirection enum switch case
* gui::Item Navigation switch case moved to function
* added NavigationDirection::None enum value
* cleaned up Navigation.hpp/cpp

* EGD-3229 [util] gui: InputEvent - str() for logging added & is...() check methods

* EGD-3229 [util] removed notorious log on unknown glyph

* EGD-3229 [util] InputMode - added is(Mode) method, input Profile added default definition

* is() method addded to check instead of `==` comparison
* added default to Profile instead of `== 0` use

* [FIX] ARM GCC 10.1.0 - build fixed

fixed include in wrong place

* PR style fix

* Review applied
2020-07-01 13:14:07 +02:00
pholat
55ca62e66d cleanup: removed empty ctor/dtor stubs & some TODO (#481) 2020-06-30 08:32:05 +02:00
Przemyslaw Brudny
88164ab40c [EGD-3295] PR changes and BoxLayout tests added. 2020-06-19 15:39:05 +02:00
Przemyslaw Brudny
dd601c432d [EGD-3295] BoxLayout and ListView performance improvements. 2020-06-19 15:39:05 +02:00
pholat
23df384c55 EGD-3087 SMS Search implemented (#374)
* EGD-3087 WIP adding SMS Querry

* EGD-3087 Added query virtual interface on Service top layer

Service shouldn't implement query logic and should be proxying that.

additionally:
- small fixes in includes
- shared service db name same way as apps and event manager

* EGD-3087 Query - want to work on interface not on db

* EGD-3087 Query gluecode works fine. Our query in SMS search calls getBySMSQuery

Changes cut off before any potential orm interface layer

* EGD-3087 WIP Interface in use

* EGD-3087 Query for SMS search works as designed

* EGD-3087 Query results should be on screen

* EGD-3087 BUG workaround - need to deep refresh display to show data

* EGD-3087 Searching for text from input works fine

* EGD-3087 Showing results / or empty results depending on query

* EGD-3087 Pre PR fixups

* EGD-3087 Empty search - getting back to prewious window ignore current

* EGD-3087 PR applied

* EGD-3087 PR - style fixed

* EGD-3087 Review - DB ListView handling moved to separate function

* EGD-3087 Workaround: crash on use after free fix

* EGD-3087 PR stylistic changes

* EGD-3087 PR cleanup applied

* EGD-3087 Added test for Query interface

* EGD-3087 renamed getByQuery to getQuery & finished tests

* EGD-3087 Post rebase fixup

* EGD-3087 PR - moved ListView request part to separate function

* EGD-3087 PR Fixups

* EGD-3087 Post rebase style fix

* EGD-3087 Added variable for DB service stack & const to getter function
2020-05-27 13:49:50 +02:00
pholat
ba5cf97919 EGD-3218 GCC 10.1 fixups (#375) 2020-05-20 11:05:46 +02:00
Adam Dobrowolski
7af85af8f3 EGD-3202 GUI minimal tests added and passing 2020-05-13 17:11:51 +02:00
Adam Dobrowolski
ff24defd31 EGD-3202 Tests for GUI restored 2020-05-13 17:11:51 +02:00
Adam Dobrowolski
f0c557d86b EGD-3202 Tests GUI added conflicts in progress 2020-05-13 17:11:51 +02:00
Adam Dobrowolski
c0da5b98ce [EGD-3190] Removed workaround for BoundingBox size assignment 2020-05-12 16:45:15 +02:00
Przemyslaw Brudny
91d0e8da60 [EGD-3190] to_split calculation fixes, BoxLayout orthogonal axis resize support added 2020-05-12 16:45:15 +02:00
Adam Dobrowolski
5ba2cf7f15 [EGD-3190] Box sizes fixup in progress 2020-05-12 16:45:15 +02:00
Adam Dobrowolski
ccb0092db0 [EGD-3190] Box can call resize 2020-05-12 16:45:15 +02:00
Alek Rudnik
ea886ffd5d [EGD-3191] fix memory leaks in sms app (#346)
* [EGD-3191] fix memory leaks in sms app

* [EGD-3191] PR fixes

* [EGD-3191] PR fix
2020-05-07 12:17:14 +02:00
Adam Dobrowolski
8475d1a056 EGD-3165 PR format applied 2020-04-28 09:50:48 +02:00
Adam Dobrowolski
ef37b5a784 EGD-3165 PR review applied 2020-04-28 09:50:48 +02:00
Adam Dobrowolski
5a325fbad6 EGD-3165 setTextEllipsis renamed to setEllipsis 2020-04-28 09:50:48 +02:00
Adam Dobrowolski
e1c1d68f13 EGD-3165 Font.cpp fixed none_font_id use as previous instead 0 2020-04-28 09:50:48 +02:00
Adam Dobrowolski
99d959c43a EGD-3165 Ellipsis removed not needed Struct - left enum only 2020-04-28 09:50:48 +02:00
Adam Dobrowolski
70117f382f EGD-3165 gui::Label / gui::Font - small fixes and refactor
* fixed Font function returning width, it was returning values in:
        1. return value
        2. in 3rd of 5 arguments
* made font unused character first class citizen of Font
* added clean(er) code for Ellipsis calculation to Font (following QT example)
* tiny bit code removed from Label (unused/harmful)
2020-04-28 09:50:48 +02:00
Adam Dobrowolski
c07a13c955 EGD-3165 BoundingBox make str() method const (to be able to log in const functions) 2020-04-28 09:50:48 +02:00
Mateusz Grzywacz
9da22edbdb [EGD-3074] rect fill fix 2020-04-17 15:19:55 +02:00