From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 References: In-Reply-To: From: Skip Tavakkolian Date: Thu, 18 Apr 2019 08:25:18 -0700 Message-ID: To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary="000000000000c371e00586cf9cd3" Subject: Re: [9fans] Understanding /dev/draw Topicbox-Message-UUID: faf1fa90-ead9-11e9-9d60-3106f5b1d025 --000000000000c371e00586cf9cd3 Content-Type: text/plain; charset="UTF-8" This might be a good place to start: https://bitbucket.org/dhoskin/9webdraw/src/default/ On Thu, Apr 18, 2019 at 7:36 AM Chris McGee wrote: > Hi All, > > I'm looking at creating an alternate filesystem for /dev/draw, /dev/mouse > and /dev/kbd that hooks up to a web server providing HTML interfaces (e.g. > canvas) for Plan 9 UI. I've been reading over the manual pages, which are > quite detailed, which is great, but there are some points of confusion for > me. > > In particular, /dev/draw's interface and documentation keep referring to > the concept of a "window" indirectly. It seems that in some cases the > server providing /dev/draw needs to track windows and refresh them. But, > what defines a window in this protocol? Is every image a window or only > some of them? > > Also, I'm trying to understand how off-screen images, such as fonts are > loaded. It seems that every image must be associated with a screen and be > given a position within the screen. So, how do you prevent the image from > being visible to the user? > > Hopefully, if I can understand some of the high-level concepts here then > the manual page will be all that I need. Does anyone have experience with > this area or could point me to information that might help clarify it? > > My next step will probably be to figure out how libmemdraw does all of > this on top of a frame buffer. > > Thanks, > Chris > --000000000000c371e00586cf9cd3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
This might be a good place to start:

https://bitbu= cket.org/dhoskin/9webdraw/src/default/

On Thu, Apr 18, 2019 at= 7:36 AM Chris McGee <newton688@g= mail.com> wrote:
Hi All,

I'm look= ing at creating an alternate filesystem for /dev/draw, /dev/mouse and /dev/= kbd that hooks up to a web server providing HTML interfaces (e.g. canvas) f= or Plan 9 UI. I've been reading over the manual pages, which are quite = detailed, which is great, but there are some points of confusion for me.

In particular, /dev/draw's interface and documen= tation keep referring to the concept of a "window" indirectly. It= seems that in some cases the server providing /dev/draw needs to track win= dows and refresh them. But, what defines a window in this protocol? Is ever= y image a window or only some of them?

Also, I'= ;m trying to understand how off-screen images, such as fonts are loaded. It= seems that every image must be associated with a screen and be given a pos= ition within the screen. So, how do you prevent the image from being visibl= e to the user?

Hopefully, if I can understand = some of the high-level concepts here then the manual page will be all that = I need. Does anyone have experience with this area or could point me to inf= ormation that might help clarify it?

My next step = will probably be to figure out how libmemdraw does all of this on top of a = frame buffer.

Thanks,
Chris
--000000000000c371e00586cf9cd3--