9front - general discussion about 9front
 help / color / mirror / Atom feed
From: Kyle Nusbaum <knusbaum@sdf.org>
To: 9front@9front.org, ori@eigenstate.org, jamos@oboj.net
Subject: Re: [9front] Netsurf 3.9 for Plan 9 (work in progress)
Date: Thu, 02 Jan 2020 21:12:03 -0600	[thread overview]
Message-ID: <A225D9EF-2ED3-4F07-AB8E-5DE93FC07D3D@sdf.org> (raw)
In-Reply-To: <84247256F02174D48607DE3E6E63F615@eigenstate.org>

Forgive me for any duplicates. I mistakenly sent a copy of this mail with HTML.

This work is neat!

With Ori's changes I see the interface rendered.

I think the mouse handling is using absolute coordinates, because the address bar only works if I position the window in the upper left corner of my screen.

I can't get the program to actually render anything, even file:/// resources, but I can see them getting fetched.

I get CSSBase displayed at the bottom of the screen, seeming to correspond to the NSERROR_CSS_BASE error, but I can't figure out why that's happening. I'm guessing that's why nothing is rendered, but that may be a faulty assumption.

The fetcher interface looks pretty straightforward and I think it shouldn't be too difficult to write a webfs fetcher. I think I will try that in my spare time.

On January 2, 2020 10:45:47 AM CST, ori@eigenstate.org wrote:
>> On 2020-01-02 00:57, ori@eigenstate.org wrote:
>> 
>>> I get a garbled image (see attached).
>> 
>> This is the most common display, alas.
>> It is possible to tweak a web page in
>> order for it to display slightly more
>> beutifully, that is the file 9html/full.html.
>> 
>> https://webbkurs.ei.hv.se/~imjam/plan9/full_html.png
>> 
>> This is how full.html looks for me.
>> As soon as the bars does not span the whole
>> screen, the picture comes out of sync. As
>> an interesting note, the test programs for
>> the framebuffer driver works as expected
>> (e.g. bitmap/plottest/etc.)
>
>I see the problem:
>
>	loaded = loadimage(drawstate->srvimage, r, drawstate->localimage,
>			drawstate->imagebytes);
>
>The rectangle here is just the portion of the screen that's changed,
>so, eg, a 30x30 icon or something. But drawstate->localimage is the
>full view. So, you're uploading the first bunch of pixels of the image
>instead of the region you want to draw.
>
>Changing the code to create a rectangle representing the whole local
>image and uploading it ungarbles it:
>
>	all.min.x = 0;
>	all.min.y = 0;
>	all.max.x = 800;
>	all.max.y = 600;
>	loaded = loadimage(drawstate->srvimage, all, drawstate->localimage,
>			drawstate->imagebytes);
>
>For efficiency, we would really want a strided load image, but if
>there's
>a native plan 9 gui, that becoems a moot point.
>
>Other comments:
>
>	box->x0, box->y0, box->x1 - box->x0, box->y1 - box->y0
>
>box is just a 'Rectangle', so you can convert once and just pass the
>resulting 'r' around:
>
>	r.min.x = box->x0;
>	r.min.y = box->y0;
>	r.max.x = box->x1;
>	r.max.y = box->y1;
>	update_and_redraw_srvimage(drawstate, r);
>
>>> The garbled image doesn't change with
>>> respect to window size.
>> 
>> Yes, the framebuffer size is set at
>> initialisation, it is set to 800x600.
>> 
>> Jonas

-- Kyle


  reply	other threads:[~2020-01-03  3:12 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-01 22:02 jamos
2020-01-01 22:57 ` [9front] " ori
2020-01-02  0:59   ` jamos
2020-01-02 16:45     ` ori
2020-01-03  3:12       ` Kyle Nusbaum [this message]
2020-01-03  3:30         ` ori
2020-01-03 20:14           ` Kyle Nusbaum
2020-01-03 21:01             ` ori
2020-01-03 21:35               ` Kyle Nusbaum
2020-01-04  0:22                 ` hiro
2020-01-04 10:21             ` Steve Simon
2020-01-04 13:41         ` No rendering of pages (Re: [9front] Netsurf 3.9 for Plan 9 (work in progress)) jamos
2020-01-04 15:49           ` ori
2020-01-04 12:08       ` [9front] Netsurf 3.9 for Plan 9 (work in progress) jamos
2020-01-04 17:14         ` ori
2020-01-04 21:33           ` jamos
2020-01-08  4:23             ` Kyle Nusbaum
2020-01-08  4:25               ` Kyle Nusbaum
2020-01-24  8:09                 ` Eli Cohen
2020-01-24 10:09                   ` hiro
2020-01-24 18:16                   ` Kyle Nusbaum
2020-01-24 18:40                     ` jamos
2020-01-25 15:11                       ` Eli Cohen
2020-01-26 21:10                         ` jamos
2020-01-29 20:42                           ` Ori Bernstein
2020-02-03 16:00                     ` ori
2020-02-04 20:19                       ` Kyle Nusbaum
2020-02-04 20:11                         ` ori
2020-02-04 20:29                           ` Kyle Nusbaum
2020-01-03 10:39 ` telephil9
2020-01-03 10:44   ` telephil9
2020-01-03 15:07     ` ori
2020-01-03 15:14       ` telephil9
2020-01-03 11:55   ` Steve Simon
2020-01-03 15:08     ` telephil9
2020-01-31 10:38 kokamoto
2020-01-31 16:34 ` ori
2020-02-01 23:46 kokamoto
2020-02-02 15:24 ` jamos
2020-02-03  1:31 ` ori
2020-02-03  5:54   ` telephil9
2020-02-03  5:58     ` telephil9
2020-02-03  2:08 kokamoto
2020-02-03  3:03 ` ori
2020-02-03  3:16 ` Kurt H Maier
2020-02-04 23:40 kokamoto
2020-02-04 23:57 ` Kyle Nusbaum
2020-02-04 23:58   ` ori
2020-02-05  1:20     ` Kyle Nusbaum
2020-02-06  7:04   ` ori
2020-02-06  8:16     ` hiro
2020-02-06 10:10       ` Steve Simon
2020-02-06 15:29       ` ori
2020-02-05  2:13 kokamoto
2020-02-05  2:28 ` Kyle Nusbaum
2020-02-05 10:00   ` jamos
2020-02-05 17:44     ` Kyle Nusbaum
2020-02-05 18:40       ` jamos
2020-02-05 18:48         ` Eli Cohen
2020-02-05 19:04           ` Kyle Nusbaum
2020-02-05 19:10           ` ori
2020-02-05 19:06         ` Kyle Nusbaum
2020-02-05 20:17         ` Kyle Nusbaum
2020-02-05 20:56           ` Kyle Nusbaum
2020-02-05  3:10 kokamoto
2020-02-05  3:25 kokamoto
2020-02-05  6:44 kokamoto
2020-02-06  0:08 kokamoto
2020-02-06  0:24 ` Kyle Nusbaum
2020-02-06 11:26   ` jamos
2020-02-06 14:42     ` hiro
2020-02-07 12:04       ` Steve Simon
2020-02-07  3:12 kokamoto
2020-02-08  0:15 kokamoto
2020-02-08  0:19 ` ori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=A225D9EF-2ED3-4F07-AB8E-5DE93FC07D3D@sdf.org \
    --to=knusbaum@sdf.org \
    --cc=9front@9front.org \
    --cc=jamos@oboj.net \
    --cc=ori@eigenstate.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).