[whatwg] Canvas ScrollBar

Bronislav Klučka Bronislav.Klucka at bauglir.com
Thu Oct 20 08:44:50 PDT 2011

1/ not all browsers supports such big canvas (but OK, this is browsers 
issue), but one need to work around it
2/ the optimalization you describe is implied (paint only what you 
need), never the less.. you still have to create unnecessary elements 
(overflow hidden? didn't you mean scroll?)
3/ sure... i can somehow do that... but do we need element.textContent? 
querySelector API? HTML5 forms? and lot of other new stuff we get? No, 
we can do them using some libraries... but we have, because it makes 
programming easier...

Essentially... if there are no plans for that, fine :), I can imagine 
there is too much work to be done on other issues, but "we can do it 
using more elements and more programming" is not an argument...

I was not asking how to do that, I know how... I was asking whether 
there is a plan to add scrollbar to canvas.

Brona Klucka

On 20.10.2011 17:17, Robert Eisele wrote:
> Hi,
> what is wrong with a 100k x 100k canvas? Just draw on the currently 
> visible region with some overlapping to make slow event listeners not 
> a problem. This tends to another optimization: Create scrollbars of 
> the dimension you need and draw on a very small canvas only the 
> information that is really necessary. Why should you update all the 
> invisible pixels?
> I would say, this problem can be solved simply with JavaScript + 
> overflow:hidden and doesn't need an extension of the canvas element in 
> any way.
> Robert Eisele
> 2011/10/20 Bronislav Klučka <Bronislav.Klucka at bauglir.com 
> <mailto:Bronislav.Klucka at bauglir.com>>
>     On 20.10.2011 14:35, João Eiras wrote:
>         On Thu, 20 Oct 2011 14:14:12 +0200, Bronislav Klučka
>         <Bronislav.Klucka at bauglir.com
>         <mailto:Bronislav.Klucka at bauglir.com>> wrote:
>             Hello,
>             Would it be possible to extend canvas specification to
>             include scroll bar functionality? To add scroll bar, to
>             manage scroll bar (total size, page size). Creating
>             control based on canvas that needs scrollbar at this point
>             is unnecessarily difficult at this point.
>             Brona Klucka
>         Which is your use case ?
>         It doesn't make any sense at all to me to have scrollbars in a
>         canvas. However, if you need scrolling, you can wrap the
>         canvas with an element with specified dimensions and
>         overflow:auto.
>     Hi,
>     1/ your solution is very wrong solution.... could you imagine
>     canvas 100000x100000px? well not possible, only solution is to
>     create smaller canvas, wrap it into overflow auto div with inner
>     div and then compute the dimension of whole image with javascript
>     and transfer it to inner div dimensions (so scrollbars would
>     match) and listen to onScroll event of outer div, and  repaint the
>     image with shifted origin
>     2/ use cases?
>     a)
>     diagram modeller
>     http://www.webnt.cz/demos/033_canvas_diagram/
>     what if I have some large diagram?
>     b) how about creating user controls using canvas? (rich controls
>     are better doing this way, one has pixel perfect control, full
>     browser compatibility) like document viewer, rich
>     listview/treeview control...
>     Brona Klucka

More information about the whatwg mailing list