Commit Graph

41 Commits

Author SHA1 Message Date
Huang Qi
fd78f83e02 drivers/video: Refine the update region notification mechanism
1.Expose the notification through fb_vtable_s::updatearea
2.Incorporate old nx_notify_rectangle into the new updatearea callback
3.Migrate the calle of nx_notify_rectangle to fb_vtable_s::updatearea

Change-Id: Ia3d1f73e8757b2d381586d76ec6adc16c810018d
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2020-08-10 08:08:33 +02:00
Xiang Xiao
cde88cabcc Run codespell -w with the latest dictonary again
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
Gregory Nutt
8cc0d2fc15 graphics/nxbe/nxbe_setvisibility.c: Fix a missed redraw command in last NX visibility changes. 2019-05-06 12:04:48 -06:00
Gregory Nutt
da314276a1 NX graphics: This commit adds support for hiding windows. This features is needed by Twm4Nx: When a window is iconfied, the icon should appear on the background and the window should disappear (i.e., be hidden). The windows needs to remain healthy and to be updated in all ways, but it cannot affect the display content.
Converserely, when the icon is clicked, the icon needs to be hidden on the backgound and the window needs to be restored in its current state (which may be different than the state of the window at the time it was iconified.

Squashed commit of the following:

    graphics/:  Add checks in all places that I can think to avoid doing something stupid with hidden windows

    Improve some naming

    Add a new file missing in last commit.

    graphics/:  Initial, incomplete support for hiding windows.
2019-05-05 15:21:52 -06:00
Gregory Nutt
c4f618e590 graphics/nxbe: This seems to fix the last of software cursor bugs. On the LPC54, it looks pretty clean. Not flickery as I feared. Probably not so good on low end displays. Possible transient artifacts? Not sure, maybe. Or maybe my eyes are playing tricks froom staring at this too long. 2019-04-13 15:08:32 -06:00
Gregory Nutt
099d9f94f4 graphics/nxbe: More work cursor coordinates. Still at least one big bug in the logic. 2019-04-13 10:13:00 -06:00
Gregory Nutt
cbb09c55ec graphics/nxbe and nxmu: This bring the software cursor to code complete. Still untested. Some flicker is expected. It has not been determined if that level of flicker is acceptable or not. 2019-04-09 15:09:10 -06:00
Gregory Nutt
4aadcc8c28 Adds support for cursors with differing pixel depths on multiple displays
Squashed commit of the following:

    Update .gitignore
    Fix some compile-related issues.
    Add support for cursors of differing pixeldepth.
    Various compile-related fixes.
    graphics/nxglib:  Separate cursor rendering routines in nxglib/ (like all other rendering logic).  graphics/nxbe:  Flesh out remaining cursor methods.
2019-04-09 11:33:59 -06:00
Gregory Nutt
2c2729521b Abandon attempt to get common data structures for NX and the raw framebuffer cursor interface. This backs out several changes. 2019-04-07 18:00:40 -06:00
Gregory Nutt
e5c56aaab6 graphics: A little more progress with software cursors. 2019-04-07 16:04:21 -06:00
Gregory Nutt
79b83f0c05 graphics: Extend the definition of the cursor image structure. 2019-04-07 13:25:20 -06:00
Gregory Nutt
42e2c9139c Squashed commit of the following:
libs/libnx/nxme:  Add front-end, client, message handling needed for cursor support.  Still actual cursor logic yet, just message handling.

    graphics/nxmu and graphics/nxbe:  Add back-end message handling needed for cursor support.  No actual cursor logic yet, just message handling.
2019-04-06 14:34:56 -06:00
Gregory Nutt
0a57cf0b8a graphics/nxbe: Implement hooks that will eventually support software 'sprites', i.e., things like OSD functionality, a software cursor, selection rectangles, window resize preview, etc. 2019-04-05 15:06:59 -06:00
Gregory Nutt
0b3375cb78 graphics/, lib/libnx, include/nutt/nx: Add support for modal windows. 2019-04-05 08:24:46 -06:00
Gregory Nutt
9a97eb0fcf This commit brings the per-framebuffer logic to code-complete. Still untested.
Squashed commit of the following:

    Update TODO list

    graphics/nxbe:  The moverectangle renderer now supports updates to the per-window framebuffer (unclipped) as well as the graphics device memory (clipped).

    graphics/nxbe:  The filltrapezond renderer now supports updates to the per-window framebuffer (unclipped) as well as the graphics device memory (clipped).

    graphics/nxbe:  The getrectangle method now returns data from the per-window framebuffer if available.

    graphics/nxbe:  The fillrectangle renderer now supports updates to the per-window framebuffer (unclipped) as well as the graphics device memory (clipped).

    graphics/nxmu:  If a window supports a per-window framebuffer, then redraw callbacks are suppressed and the device content is updated from the shadow, per-window framebuffer.  graphics/nxbe:  The copyrectangle renderer now supports updates to the per-window framebuffer (unclipped) as well as the graphics device memory (clipped).

    graphics/nxbe/nxbe_setsize.c:  Reallocate the per-window framebuffer when the window size changes.
2019-03-15 12:15:33 -06:00
Gregory Nutt
554a3ee824 graphics: Extend NXBE data structures to include the per-window framebuffer (pwfb) vtable. Add logic to initialize the pwfb vtable. 2019-03-14 14:38:56 -06:00
Gregory Nutt
1567b82429 Make sure that labeling is used consistently in all function headers (part 2). 2018-02-01 12:03:55 -06:00
Gregory Nutt
7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt
16666fdb84 NXBE: function pointers should have CODE qualifier 2016-04-14 16:34:05 -06:00
Gregory Nutt
bee0eda68c Make some file section headers more consistent with standard 2015-04-08 08:32:05 -06:00
Gregory Nutt
2507017695 Decoupling NX user interfaces to support NX kernel build (phase 1) 2013-12-27 13:18:20 -06:00
Gregory Nutt
bc46b447dc Fix all occurrences of "the the" in documentation and comments 2013-08-27 09:40:19 -06:00
patacongo
6d58ba972f Implement an NX interface to block flush message queues in multi-user mode. This is necessary to prevent stale window handles when a window is closed
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4745 42af7a65-404d-4744-a932-0658087f49c3
2012-05-17 22:16:02 +00:00
patacongo
57f1567dc2 Fixes from last changes when built with CodeSourcery, STM32, LCD, 16-bit color
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4063 42af7a65-404d-4744-a932-0658087f49c3
2011-10-25 01:02:49 +00:00
patacongo
dbf37c6315 Add logic to read from graphics memory
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4057 42af7a65-404d-4744-a932-0658087f49c3
2011-10-22 18:13:04 +00:00
patacongo
923132391d Add logic to set individual pixels
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4047 42af7a65-404d-4744-a932-0658087f49c3
2011-10-14 16:58:44 +00:00
patacongo
bc4d0f1167 Move NX header files to include/nuttx/nx
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3816 42af7a65-404d-4744-a932-0658087f49c3
2011-07-24 20:49:01 +00:00
patacongo
31400041c4 Fixes for build on Ubuntu
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2602 42af7a65-404d-4744-a932-0658087f49c3
2010-04-17 13:55:25 +00:00
patacongo
cfb3ffb09c Framework for LCD rasterizers
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2598 42af7a65-404d-4744-a932-0658087f49c3
2010-04-17 03:52:05 +00:00
patacongo
4d33eea391 Generalize graphics driver type
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2597 42af7a65-404d-4744-a932-0658087f49c3
2010-04-17 03:08:30 +00:00
patacongo
23931c39e6 Changing NuttX fixed size type names to C99 standard names -- things will be broken for awhile
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2350 42af7a65-404d-4744-a932-0658087f49c3
2009-12-15 18:12:29 +00:00
patacongo
9414c64d0d Remove redundant origin value
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1393 42af7a65-404d-4744-a932-0658087f49c3
2008-12-02 20:57:45 +00:00
patacongo
c13aa8eb4d Don't keep sizes in rectangles
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1392 42af7a65-404d-4744-a932-0658087f49c3
2008-12-02 20:02:59 +00:00
patacongo
fcb0515526 filltrapezoid needs a clipping rectangle
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1389 42af7a65-404d-4744-a932-0658087f49c3
2008-12-02 16:38:35 +00:00
patacongo
d68afa9783 Add rectinside(), vectsubtract(), visible()
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1381 42af7a65-404d-4744-a932-0658087f49c3
2008-12-01 18:51:48 +00:00
patacongo
4f6ef2af8d Add argument to window callbacks
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1366 42af7a65-404d-4744-a932-0658087f49c3
2008-12-01 13:22:34 +00:00
patacongo
3925baf238 There is at least some X11 output now
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1361 42af7a65-404d-4744-a932-0658087f49c3
2008-11-30 18:52:14 +00:00
patacongo
63101c7916 Changes from initial NX debug
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1341 42af7a65-404d-4744-a932-0658087f49c3
2008-11-28 23:04:54 +00:00
patacongo
604c94dce8 Add more trapezoid support
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1324 42af7a65-404d-4744-a932-0658087f49c3
2008-11-28 13:57:20 +00:00
patacongo
5638ac274f Add support for trapezoidal fills
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1323 42af7a65-404d-4744-a932-0658087f49c3
2008-11-28 13:20:36 +00:00
patacongo
3ba6819bb9 Graphics backend
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1320 42af7a65-404d-4744-a932-0658087f49c3
2008-11-27 22:56:45 +00:00