graphics/: Fix an oversight in the implementation of per-window framebuffers. It is true that redraw callbacks can be supporessed for all cases ... EXCEPT ONE: When the window is resized to a larger size, then the newly exposed territory must be drawn for the first time.

This commit is contained in:
Gregory Nutt
2019-05-16 09:18:33 -06:00
parent 4676470dd7
commit a40ef12895
14 changed files with 287 additions and 170 deletions
+6 -1
View File
@@ -12,7 +12,7 @@
<h1><big><font color="#3c34ec">
<i>NX Graphics Subsystem</i>
</font></big></h1>
<p>Last Updated: May 9, 2019</p>
<p>Last Updated: May 16, 2019</p>
</td>
</tr>
</table>
@@ -3775,6 +3775,11 @@ int nxcursor_setposition(NXHANDLE hnd, FAR const struct nxgl_point_s *pos);
If this option is selected, then the system will redraw the exposed portion of the window from the backup framebuffer without intervention of the window applications.
This greatly reduces the complexity of the application and performance of the window at the expense of increased memory usage.
</p>
<p>
An exception is the case when the window is resized to a wider and/or taller size.
In that case, the redraw callback will till occur.
It is necessary in that case to provide new graphic content for the extended window area.
</p>
<p>
Redraw requests in other cases are also suppressed: Changes to window position, size, etc.
</p>