summaryrefslogtreecommitdiff
path: root/NxWidgets/ChangeLog.txt
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-02-28 18:48:11 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-02-28 18:48:11 +0000
commita63f8bb684d01a23bfe1ee85b1d7faf983b9d1ea (patch)
tree3f51cea039f16c0a9b0b8e05550fe9112d72d824 /NxWidgets/ChangeLog.txt
parentf1b1e3ba11994bcbb0a1ddad9f8e686a6a9ae475 (diff)
downloadnuttx-a63f8bb684d01a23bfe1ee85b1d7faf983b9d1ea.tar.gz
nuttx-a63f8bb684d01a23bfe1ee85b1d7faf983b9d1ea.tar.bz2
nuttx-a63f8bb684d01a23bfe1ee85b1d7faf983b9d1ea.zip
NxWidgets/NxWM updates from Petteri Aimonen (Patches 0007-0013)
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5689 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'NxWidgets/ChangeLog.txt')
-rw-r--r--NxWidgets/ChangeLog.txt48
1 files changed, 47 insertions, 1 deletions
diff --git a/NxWidgets/ChangeLog.txt b/NxWidgets/ChangeLog.txt
index dd3422dcc..1d2abab4d 100644
--- a/NxWidgets/ChangeLog.txt
+++ b/NxWidgets/ChangeLog.txt
@@ -280,4 +280,50 @@
it works with indexed input images.
* NxWidgets::CLabel: Fix backward conditional compilation in the
"flicker free" logic.
-
+* NxWidgets::CNxTimer: Previously repeated timers were re-enabled after
+ the timer action event. Consequently, if the action event handler tried
+ to stop the timer, the request would be ignored. Changes the order
+ so that the timer is re-enabled before the callback. There is still
+ no risk of re-entrancy, because everything executes on the USRWORK work
+ queue. From Petteri Aimonen.
+* NxWidgets::CMultiLineTestBox: Fix text placement error. From Petteri
+ Aimonen.
+* NxWidgets::CWidgetControl: Added another semaphore, boundssem, which
+ is set as soon as the screen bounds are known. This corrects two
+ problems:
+ 1) Due to the way nxgl_rectsize computes the size, it will never
+ be 0,0 like CWidgetControl expects. Therefore the size is considered
+ valid even though it has not been set yet.
+ 2) After the check is fixed to test for > 1, NxWM window creation will
+ hang. This is due to the fact that it uses the screen bounds for
+ determining window size. This was being blocked on geosem, which
+ is only posted after the size has been set.
+ From Petteri Aimonen.
+* NxWidgets::CImage: Two enhancements:
+ 1) Allow changing the bitmap even after the control has been created.
+ 2) Allow giving 'null' to have the control draw no image at all.
+ From Petteri Aimonen.
+* NxWM::CTaskBar: Allow windows with null icon. This makes sense for e.g.
+ full screen windows. From Petteri Aimonen.
+* NxWM::CApplicationWindow: Add config options to override NxWM
+ stop/minimize icons. From Petteri Aimonen.
+* NwWM::CStartWindow, NxWM::CWindowMessenger: Get rid of the start window
+ thread. Instead, handle all events through the USRWORK work queue.
+ For me, this was necessary because I would open some files in button
+ handlers and close them in NxTimer handlers. If these belonged to
+ different tasks, the close operation would fail. Further benefits:
+ + Gets rid of one task and message queue.
+ + Reduces the amount of code required
+ + Decouples CStartWindow from everything else - now it is just a window
+ with application icons, not an integral part of the event logic.
+ + All events come from the same thread, which reduces the possibility of
+ multithreading errors in user code.
+ + The user code can also send events to USRWORK, so that everything gets
+ serialized nicely without having to use so many mutexes.
+ Drawbacks:
+ - Currently the work state structure is malloc()ed, causing one allocation
+ and free per each input event. Could add a memory pool for these later, but
+ the speed difference doesn't seem noticeable.
+ - The work queue will add ~50 ms latency to input events. This is however
+ configurable, and the delay is anyway short enough that it is unnoticeable.
+ From Petteri Aimonen.