Commit Graph
376 Commits
Author SHA1 Message Date
Raphael CoefficandRaphael Coeffic 0db59bfcc1 Implement form drawing via styles rather than paint() method 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 479b97ca58 update libopenui 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 4c6d8dee1f Update libopenui 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 0cd6c9d710 LVGL drawing 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 6999e30171 update libopenui 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 1d9d112e31 update to lvgl 8.2, switch to official github repo 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic d075d57bfd libopenui update 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 29492ae960 libopenui lvgl udpate 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic dbd528e92b libopenui update 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic c5d2439e61 use current libopenui/lvgl
enable BMP and PNG support in lvgl
2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 9571a3c97f prepared to use rotary encoder events in lvgl, not enbaled because of focus issues 2022-06-11 15:38:08 +02:00
kevinkoenigandRaphael Coeffic 751d1a0887 cleanup of all number edit display handlers. 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic 702a89d952 modifications to make no numberEdit() do their own painting. They all return strings to the numberEdit(). 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 98e231c9d4 Fixes for some pop-ups and sliding main views 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic d1d503da08 Remove event bubbling 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic a34bb51590 Update libopenui 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 681c161dd3 Touch events again and some clean-up 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 7eb1aa8667 libopenui update 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic 9181e5e4e6 fix flight modes 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic a877915138 Fix scrolling 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 2b7a120a86 Fix sliders "getValue" == nullptr 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 731ac128dc Use touch events from LVGL 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 8f68af094c Add slider edit style 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 6dbe059c4e Fix propagating focus from LVGL to libopenui 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 2c39042e16 Use LVGL sliders 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 02c64b07a9 Use LVGL scrolling events 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic b3f6b92408 udpate libopenui 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 9633f3cfeb use updated libopenui
fix libopenui/lvgl run order
2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic eceab2eeb6 use current libopenui state 2022-06-11 15:38:08 +02:00
Malte LangermannandRaphael Coeffic daa957bb47 use the canvas image buffer to draw libopenui, one screen operation less per draw call 2022-06-11 15:38:08 +02:00
Malte LangermannandRaphael Coeffic 0844e8d480 use fixed libopenui 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 169dd1219d reference new libopenui commit 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic 2495691c65 1. Included mroe fonts
2. change order of initialization.  Lvgl has to be before ViewMain
3. Basic support for layers, but they are still broken when Menu's are used
4. Register input driver in lvglwrapper
2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 6864954c84 use current libopenui state 2022-06-11 15:38:08 +02:00
Malte LangermannandRaphael Coeffic 06f72c3ce6 use the canvas image buffer to draw libopenui, one screen operation less per draw call 2022-06-11 15:38:08 +02:00
Malte LangermannandRaphael Coeffic 0c7d4cf1e9 use fixed libopenui 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic 35af1cd008 additional changges for keyboard processing 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 528e1a9031 reference new libopenui commit 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic c62655e352 fix issues with layers, still broken 2022-06-11 15:38:08 +02:00
kkoenig1@optonline.comandRaphael Coeffic fd276bb2fc 1. Included mroe fonts
2. change order of initialization.  Lvgl has to be before ViewMain
3. Basic support for layers, but they are still broken when Menu's are used
4. Register input driver in lvglwrapper
2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic 4ef2e50563 add missing file to colorlcd CMakelist 2022-06-11 15:38:08 +02:00
gagarinlgandRaphael Coeffic fb7a7364a4 just something to play with lvgl
simu is working partially
TX16S has worked, is now broken, due to changes to make simu work

working means, lvgl shows something on the display and handles touch events

to stop libopenui from interfering this is needed in libopenui:

diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 09cc3d3..cda095f 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -79,7 +79,7 @@ void MainWindow::checkEvents()
   if (touchPanelEventOccured()) {
     short lastDeltaX = touchState.lastDeltaX;
     short lastDeltaY = touchState.lastDeltaY;;
-    touchState = touchPanelRead();
+    //touchState = touchPanelRead();
     touchState.lastDeltaX = lastDeltaX;
     touchState.lastDeltaY = lastDeltaY;
   }
@@ -177,6 +177,7 @@ void MainWindow::invalidate(const rect_t & rect)

 bool MainWindow::refresh()
 {
+return false;
   if (invalidatedRect.w) {
     if (invalidatedRect.x > 0 || invalidatedRect.y > 0 || invalidatedRect.w < LCD_W || invalidatedRect.h < LCD_H) {
       TRACE_WINDOWS("Refresh rect: left=%d top=%d width=%d height=%d", invalidatedRect.left(), invalidatedRect.top(), invalidatedRect.w, invalidatedRect.h);

add eclipse projetc files and helper scripts

some cleanup and fix simu

NV14 simu and TX16s simu are working with lvgl
no more magic numbers
added files for a lvgl wrapper class for initialization

moved lvgl initialization to LvglWrapper
code cleanup
started implementing a widget as a drawing target for libopenui

with some additional changesin libopenui, the libopenui ui can be displayed on a lvgl canvas

fix lvgl full screen canvas

update personal project files

add file with patch instructions for libopenui

works on NV14 with a canvas as the drawingtarget for libopenui and direct touch handling by libopenui

fix indentation

enabled double buffering for LVGL using the LCD frame buffers
transparancies are broken on TX16s
simulator does not work
untested on NV14

simu for NV14 and TX16S run and work mostly
works mostly on NV14 and TX16S

some pop ups (e.g. USB) flicker
LUA full screen apps won't display anything

touch handling still done by libopenui
on TX16S lvgl widgets are rotated by 180°

untested on all other radios

fix using of commeted out function. No touch handling for LVGL right now

rotate screens, so that libopenui and LVGL have the same screen rotation

removed the need to rotate images and fonts when using LVGL
currently the changes can be easily reverted

deleted lvgl copy

building with lvgl as unmodified submodule works

move lv_conf to radio/src

delete eclipse project files

use specific branch for lvgl

use libopenui lvgl branch
remove now unneeded help.txt

add missing file to colorlcd CMakelist

fix image display problems in TX16S simulator

just something to play with lvgl
simu is working partially
TX16S has worked, is now broken, due to changes to make simu work

working means, lvgl shows something on the display and handles touch events

to stop libopenui from interfering this is needed in libopenui:

diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 09cc3d3..cda095f 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -79,7 +79,7 @@ void MainWindow::checkEvents()
   if (touchPanelEventOccured()) {
     short lastDeltaX = touchState.lastDeltaX;
     short lastDeltaY = touchState.lastDeltaY;;
-    touchState = touchPanelRead();
+    //touchState = touchPanelRead();
     touchState.lastDeltaX = lastDeltaX;
     touchState.lastDeltaY = lastDeltaY;
   }
@@ -177,6 +177,7 @@ void MainWindow::invalidate(const rect_t & rect)

 bool MainWindow::refresh()
 {
+return false;
   if (invalidatedRect.w) {
     if (invalidatedRect.x > 0 || invalidatedRect.y > 0 || invalidatedRect.w < LCD_W || invalidatedRect.h < LCD_H) {
       TRACE_WINDOWS("Refresh rect: left=%d top=%d width=%d height=%d", invalidatedRect.left(), invalidatedRect.top(), invalidatedRect.w, invalidatedRect.h);

add eclipse projetc files and helper scripts

some cleanup and fix simu

NV14 simu and TX16s simu are working with lvgl
no more magic numbers
added files for a lvgl wrapper class for initialization

moved lvgl initialization to LvglWrapper
code cleanup
started implementing a widget as a drawing target for libopenui

with some additional changesin libopenui, the libopenui ui can be displayed on a lvgl canvas

fix lvgl full screen canvas

update personal project files

add file with patch instructions for libopenui

works on NV14 with a canvas as the drawingtarget for libopenui and direct touch handling by libopenui

fix indentation

enabled double buffering for LVGL using the LCD frame buffers
transparancies are broken on TX16s
simulator does not work
untested on NV14

simu for NV14 and TX16S run and work mostly
works mostly on NV14 and TX16S

some pop ups (e.g. USB) flicker
LUA full screen apps won't display anything

touch handling still done by libopenui
on TX16S lvgl widgets are rotated by 180°

untested on all other radios

fix using of commeted out function. No touch handling for LVGL right now

rotate screens, so that libopenui and LVGL have the same screen rotation

removed the need to rotate images and fonts when using LVGL
currently the changes can be easily reverted

deleted lvgl copy

building with lvgl as unmodified submodule works

move lv_conf to radio/src

delete eclipse project files
2022-06-11 15:38:08 +02:00
Raphael Coeffic 93b8bf129c Moved FreeRTOS to submodule (v10.4.6) 2022-04-03 17:01:58 +02:00
Raphael Coeffic 346de7ece4 Move extmodule_driver to stm32 common part
And add support for F2
2022-03-20 16:22:13 +01:00
Raphael Coeffic 0bb42b79ef Add newer CMSIS headers 2022-03-20 16:22:13 +01:00
Raphael Coeffic a955112160 Added newer CMSIS STM32F4xx 2022-03-20 16:22:12 +01:00
Raphael Coeffic 3f6f1499b7 Added STM32F4xx_HAL_Driver 2022-03-20 16:22:12 +01:00
88a4458cfe fix: Resolve some issues with touch TE_SLIDE_END, and tapCount on NV14 (#1434)
* move TE_SLIDE_END handling for slide inertia to libopenui
reset tapCount on TE_SLIDE_END on NV14

* Bump libopenui

Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2022-01-21 20:29:18 +10:00
Peter FeerickandPeter Feerick e4369af048 [libopenui] Fix screen widget layout line color 2021-12-24 13:08:55 +10:00
843d1be868 Fix wrong Chinese characters being displayed (#1257)
* Fixed wrong index calculation.

* Fixed font generation, indexing will goes wrong when no extra chars bitmap is present.

* Image width exceeded 16384 will cause trouble in CJK.

* Include libopenui update

Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2021-12-17 10:32:28 +11:00