Google Says Docs Will Now Use Canvas Based Rendering, Warns Impact on Some Chrome Extensions (googleblog.com) 91
Google, making the announcement in a blog post: We're updating the way Google Docs renders documents. Over the course of the next several months, we'll be migrating the underlying technical implementation of Docs from the current HTML-based rendering approach to a canvas-based approach to improve performance and improve consistency in how content appears across different platforms. We don't expect this change to impact the functionality of the features in Docs. However, this may impact some Chrome extensions, where they may no longer work as intended.
Some Chrome extensions rely on the way the backend of a Google Doc is structured or specific bits of HTML to function properly. By moving away from HTML-based rendering to a canvas-based rendering, some Chrome extensions may not function as intended on docs.google.com and may need to be updated. Admins should review the current extensions deployed in their organization. [...] If you are building your own integrations with Google Docs, we recommend using Google Workspace Add-ons framework, which uses the supported Workspace APIs and integration points. This will help ensure there will be less work in the future to support periodic UI implementation changes to Docs.
Some Chrome extensions rely on the way the backend of a Google Doc is structured or specific bits of HTML to function properly. By moving away from HTML-based rendering to a canvas-based rendering, some Chrome extensions may not function as intended on docs.google.com and may need to be updated. Admins should review the current extensions deployed in their organization. [...] If you are building your own integrations with Google Docs, we recommend using Google Workspace Add-ons framework, which uses the supported Workspace APIs and integration points. This will help ensure there will be less work in the future to support periodic UI implementation changes to Docs.
Re: (Score:1)
Re: Why consistency (Score:2)
Hate to tell you, but WebAssembly + webGL / webSockets / webKitchensink3947 / webALLtheThings, is basically ActiveX.
The attack surface is equally huge. And it's a VM on top, so it's slower than native code too. Yay, "progress"!
Re: Why consistency (Score:2)
Wtf are you talking about? Which of those APIs gives you access to the filesystem? Which of them permit writing to the registry? How do you use those to reconfigure the browser or download more software?
Huge attack surface (Score:3)
There are so many features in a modern web browser, so many ways of doing the same things, that it is amazing that it works at all. Of course there are security holes all over it.
In the good old days when people used to use something called HTML you as the user had some control of things. But now it is just an application running in a VM that may or may not leak.
Web assembly is a particularly nasty hack. OK, so JavaScript could not be properly compiled because it lacked static typing. So fix JavaScript
Re: Why consistency (Score:2)
To answer your question, that would surely be "web All the Things".
Re: Why consistency (Score:2)
I thought ActiveX was only a Microsoft thing.
Re: (Score:2)
Re: (Score:1)
Because canvas rendering is way better (faster, more flexible) for some applications.
Re:Why consistency (Score:5, Funny)
Almost forgot the \sarc
Re: (Score:2)
The non-thinking persons version of, if all you have is a hammer...if all you have is a particular enemy, every action is their fault.
Re: (Score:1)
Exercise your webmonkey brain. Think of applications where html/css can't do the job as fast as a canvas can.
If you think manipulating html/css through the dom for some tasks (like high-density grids, spreadsheets, monospace text grids, graphics, chart generation) is always faster than directly rendering on a canvas, get out of the CRUD webform world and try some bit blitting with canvasses.
Re: (Score:2)
Re: (Score:2)
I'm confused why a native and optimized layout engine with support for monospace and grids is so much slower than JS rendering onto a canvas.
Re: Why consistency (Score:2)
Re: (Score:3)
Your confusion doesn't change the reality.
A lot of the advanced document features would require extensive DOM manipulation, which is moderately slow.
If you're just formatting text into columns or something basic, then it doesn't really matter. HTML or canvas will be easy to implement, easy to support, and responsive on a wide variety of devices.
But when you need to support all use cases---and some advanced cases only work well with canvas---then you implement in canvas.
Re: (Score:2)
I still don't get what "advanced document features" would require "extensive DOM manipulation", especially in a word processor or a spreadsheet, but also with a powerpoint clone. So, what would those even be? A word processor works similarly to an HTML editor in layout and uses formatting similar to CSS. A spreadsheet is a table with advanced ways of filling in the text and formatting the cells. Overlaying images or text in specific areas is really common in powerpoint clone. It's the only one I can se
Re: (Score:2)
Because canvas rendering is way better (faster, more flexible) for some applications.
It's more likely because HTML 'rendering' is too limited.
Trying to display graphics by manipulating the DOM? Ew!
Re: (Score:2)
Canvas pre-dates Chrome by four years (Score:5, Informative)
To force people to use Chrome? Are you under the impression that the canvas element is exclusive to Chrome?
Canvas was used before Chrome even existed.
Re: (Score:2)
Well obviously to achieve their objectives they will have to add extensions and require default add-ons to make this work. Stand by for embrace, extend, and extinguish. Color me skeptical.
Re: Canvas pre-dates Chrome by four years (Score:1)
The code that the old members of the team wrote is being replaced, because there are new team members. Ripping out the old and replacing it is an essential ego boosting operation for the new team members.
Sameasitalwayswas.
Re: Canvas pre-dates Chrome by four years (Score:2)
They're probably all hired from Facebook.
Re: (Score:2)
Canvas has been working since 2004 without "obviously require default add-ons to make this work".
HTML 3.2 died a long time ago, along with Windows 3.1. The rest of us have moved on.
Re: Canvas pre-dates Chrome by four years (Score:1)
It is a markup language, not a layout program. I think some of you would be happier with pdf.
Re: Canvas pre-dates Chrome by four years (Score:2)
> lose users
You mean "user losers"?
Re: (Score:2)
Canvas existence predates Chrome, but use doesn't. IE didn't get Canvas support for at least a year after Chrome (Also, your four years overestimates the delta between the first major support of canvas and Chrome's.)
But yes, "canvas", like "html" is an open standard. However, like HTML, I imagine Google's canvas use will also include new "proposed features" it keeps adding to the spec, that Chrome is in compliance of and other companies are not. Are you not familiar with how "Embrace-Extend-Extinguish"
Re: Canvas pre-dates Chrome by four years (Score:2)
Yeah, and it does not always go their way (html imports, for example).
Well, I can guess. (Score:5, Insightful)
Document formats outside of HTML are usually specifically NOT intended to be reinterpreted or skinned. If I go to the trouble of authoring a document in Word and exporting it into a PDF, it's because I want it to look a certain way. I don't want to worry that somebody's browser will present its own take on my resume/CV, for instance.
Re: (Score:2)
Not to mention an extension having the ability to intercept the HTML rendering code and change the contents of what is rendered.
Re: Well, I can guess. (Score:2)
This is exactly why the web will slowly move towards canvas rendering: changing content allows you to block ads. If you just stream
Word is for printing on paper (Score:2)
Paper has a certain width, and is divided into page. Hence Paper Document Format, PDF.
HTML is more fluid, can render a variable widths etc. Its strength is that it is not locked. And pages on a VDU?
Re: (Score:1)
Often in a fucked up way unless it's heavily engineered and well tested on different browser brands/versions. Then new versions come out and fuck it all up again. Rinse, repeat...
Re: (Score:2)
PDF (1993) is a wrapper for PostScript (1983), a page description language that describes how all the elements are arr
Re: Word is for printing on paper (Score:2)
Youâ(TM)re making the odd assumption that document reflow canâ(TM)t be implemented with canvas rendering. The canvas is just a way to change pixels on a screen. What is drawn on the canvas doesnâ(TM)t really have any limitations.
Re: (Score:1)
PDF's and images can also be monkeyed with, but it's often harder.
We need BOTH! (Score:2)
I've been in many debates over the semantic/auto-flow versus coordinate/WYSIWYG issue. It's kind of like the dynamic versus compiled language debate. Let's just agree that both are needed for different uses and intentions. However, current web standards poorly support the second, and it needs to be shored up. Canvas is very limited unless you reinvent a lot of expected UI/GUI features. The split between wh
Re: (Score:2)
I'm joking. The obvious reason is to use their dominant market power in the docs space to try to Embrace/Extend/Extinguish web standards to force people to Chrom(e/ium).
Don't worry, Microsoft will probably sue Google for trying to use their thing. :-)
Re: (Score:2)
Why use canvas rendering/pdfs when HTML is superior?
Superior in what way? Be specific, because so far the only benefit you listed is precisely what you *don't* want in the application (both figurative and literal use of the word) being discussed.
The obvious reason is to use their dominant market power in the docs space to try to Embrace/Extend/Extinguish web standards to force people to Chrom(e/ium).
The first browser on the market with Canvas support was Firefox back at version 2.0. Yes 2.0. Ask your grandpa what life was like when browsers has sane numbering schemes. Canvas was proposed for the HTML5 specification before Google released their own browser.
No more docs + darkreader (Score:2)
Re: (Score:2)
Portability matters to some people, particular in the current climate where so many of us are working from home and only occasionally going into the office.
"Open browser and go to URL"
vs
"Install LibraOffice (or the three applications you list, because three installs is easier than one, right?), make sure it's the same or newer version than you used to create the document, dig out the USB memory stick with the document, plug that in and wait for the OS to recognize it, double and then finally open the docume
Re: (Score:1)
... until Google decides to take your document away, break it, or revoke your account. Which happens all the time. I put a little volunteer organization on Google Docs once. Took them about 6 months to totally break stuff we depended on. Not doing that again.
But even then I wasn't dumb enough to bet a business on it. If your job allows you to use Google for work documents, your company is managed by idiots.
By the way, on a real OS, installing three applications is one command, and they'll already be install
Re: (Score:2)
I have some sympathy, but at the same time people shouldn't be running their business out of a spreadsheet. We built our own ERP for cheap to ensure we have full control. Otherwise, I see no problem with Google Documents if you use them as documents an
Re: (Score:2)
Under Linux, for example, the graphical shell (like the desktop environment) commands the color scheme, widget style, fonts, window decoration[...] And any software that does not obey them is considered defective.
GNOME is defective beyond the threshold of usability, yeah. But, alas, their changes to GTK force non-obeyance of window decoration to programs which haven't yet jumped ship to QT, and that's a roughly half of Linux GUI software.
Re: (Score:1)
Re: No more docs + darkreader (Score:2)
> Web lockin
You mean "freedom lockin"?
Re: (Score:1)
Just have a negative option. So what if people have green radioactive faces.
Re: (Score:1)
Actually thinking about it further, if the images can be isolated (identified), they don't have to be reversed. Only things like text, borders, and buttons need to be reversed. Sure, there are a few grey areas (no pun intended), but not enough to sink the idea.
Re: (Score:2)
Just the most recent thing I could find that disputes the sleep hygiene claim and there are others disputing the eye strain claims as well.
https://news.byu.edu/intellect... [byu.edu]
BTW this is not saying that blue light isn't bad for sleep hygiene, just that things that try to mitigate blue light exposure don't actually work. The solution is simply don't use devices close to bedtime.
Semantics is truly dead (Score:5, Interesting)
We've gone from "don't use tables for layout" to "let's use pictures for everything."
Meanwhile, Google is still trying to kill the open web.
Re: Semantics is truly dead (Score:1)
Well, your browser usuall renders it to pictures anyway.
The core problem is that the semantic interface below it is missing.
The parse tree, so to speak.
If that would still exist, but simply not be HTML, it'd still be fine. ... would all be acceptable interfaces.
TeX, PS, SQL, (Linux's) VFS, 9P,
Semantics failed, nice try (Score:5, Interesting)
Semantic has overcomplicated things. Maybe there's a right way to do semantics, but JS/DOM/CSS did it the wrong way, or at least a way that is a poor fit for too many needs.
Things like Bootstrap dragged GUI's down to a lowest common denominator, making for C- mobile and C- desktops. Business-oriented GUI's need real GUI idioms to be productive, and faking it with JS/DOM/CSS is an ugly time drain that only a UI specialist's paycheck can love.
We can keep DOM's semantics, but give us a decent WYSIWYG alternative for the times where DOM requires rocket science to do common GUI shit.
What you see, provided you can see (Score:3)
give us a decent WYSIWYG alternative
"What you see is what you get" may be fine for people who can see. It's not quite so fine for users of screen readers. How does this new canvas-based approach interact with assistive technologies used by users with disabilities?
WYSIWYG and ADA support NOT mutually exclusive (Score:2)
See https://slashdot.org/comments.... [slashdot.org]
Re: (Score:3)
Isn't Google the Internet? Years ago, IE and/or AOL was considered 'The Internet'. These days and for better or worse, is it Google.
It is long past time that Google was broken up into a gazillion little bits.
Re: (Score:3)
Meanwhile, Google is still trying to kill the open web.
By using open web standards first supported by Firefox?
Now if they move everything to WASM... (Score:1)
They will effectively murdeded the openness of the web, and turned it into closed source with proprietary formats.
Re: Now if they move everything to WASM... (Score:4, Informative)
Netscape's whole scheme was to give out a free browser, but havr propritary tweaks to make it connect to their proprietaty server tech. Miscrosoft interpreted it as a threat to their desktop and attacked.
There was no 'good side' in the Netscape vs. Microsoft battle in the early period. After Netscape poached the NCSA Mosaic team it was a battle of propritary schemes.
Only later after Microsoft 'won' was the Mozilla codebase open-sourced.
Re: (Score:3)
People forget that there was an early "Boycott Netscape!" initiative in the 1.x/2.x days because of it using proprietary tags that people felt endangered the open web. Internet Explorer 1.0 and 2.0 were initially praised for following standards closely while being an improvement over existing options. Of course, we saw what happened with IE 5, 5.5, and 6 where the tables were turned entirely and Netscape/Mozilla became the darling of the open source standards compliant world, but that's not how it was at fi
That would break any extension wouldn't it? (Score:3)
Re: (Score:2)
It means they've got a proprietary API for their app UI similar to Win32,
No. It means that extensions which play with a website in a non web developer sanctioned way can't expect to continue working when the web developer changes something.
Re: That would break any extension wouldn't it? (Score:2)
.... and that has always been the case, with any web site/app.
Re: (Score:2)
Precisely.
Text to Speech support? (Score:5, Interesting)
Does using a canvas screw over people reliant on Text-to-Speech?
Re: (Score:2)
interesting angle. I suppose Google could 'render' docs as speech rather than as a canvas for people who need that. Or, they could download the docs and render them in a local app independent of the browser. Do Chromebooks have text-to-speech capability? If not, they're probably not very useful for sight-impared users - who would continue to need a traditional desktop system for that...
Re: (Score:2)
WYSIWYG and ADA (sight impaired) support are not mutually exclusive. It's quite possible to tag a given content item with both display and semantic info, they don't have to conflict. Whether they do in practice is mostly an implementation and standards definition issue.
The "for" attribute in LABEL html tags is an example. It associates the label with a given input box semantically. It still works if the label and the box are far apart in the HTML and/or the screen. It's orthogonal to markup or screen positi
Re:Text to Speech support? (Score:5, Informative)
Short answer: yes, long answer: they thought of that.
If you look at their sample document and then throw up the Accessibility Inspector, you'll find two pieces of actual content: a section that says "To enable screen reader support, press Ctrl+Alt+Z To learn about keyboard shortcuts, press Ctrl+slash", and a link that says "Turn on screen reader support".
Pressing Ctrl+Alt+Z lets me discover that some other piece of software uses that as a global shortcut. But what it does with "screen reader support" enabled is "render" individual text elements as offscreen elements only the screen reader can see. You otherwise navigate through the document using keyboard commands, but only the part of the document that's "visible" is actually present.
So yes, switching to canvas screws over people using screen readers, but you can turn on screen reader support. In their example at least it looks like you have to do that every single time.
GUI markup language standard (Score:3)
I've ranted many times that we need a state-ful GUI markup language standard that directly supports the common GUI idioms for "productivity" applications. It should have a coordinate vector mode (WYSIWYG) even if it also includes a client-side auto-flow engine. This will allow one to optionally pick a server-side layout engine of choice rather than be stuck with the DOM as one-size-fits-all. It doesn't. It's why PDF still lives: DOM butchers text positions per different browser brands, versions, and OS DPI settings.
HTML Canvas was not meant for rich GUI's and interactive charts (like flow-charts and ERD's). Thus, many GUI idioms still have to be reinvented via JS libraries.
Rather than start from scratch, perhaps the Qt or Tk GUI engines can be used to build a GUI browser and/or GUI browser pluggin. And please don't compare it to Java Applets and Flash, for they tried to be an entire OS and bit off more than they could chew. Focus just on state-ful GUI's and only state-ful GUI's, shifting most of the burden to the server, leaving less crap to break and hack.
You'd need much less JS, if any, because most GUI idioms would be built into the standard. For example, having a button open (or set focus to) a window should be a declarative "on-click" action such that scripting isn't needed. It's part of the markup. Using JS/DOM to re-re-re-invent rich GUI's has been a Great Mistake, wasting billions of hours of labor and grey hair. It's good job security for UI/UX "experts", but a wallet sucker for everyone else. MGUIGA! Have the web unfuck GUI's this time around. The vast majority of real work gets done via mice, not fingers. You wanna finger?!
Re: (Score:2)
XUL? Qt's web target?
Re: (Score:1)
I personally didn't like XUL, it seemed verbose for common GUI/CRUD use. And it may not solve the consistent text positioning problem. But it died anyhow.
Re: (Score:2)
Well that's kind of the nature of XML [fandom.com] regardless of how it's being used, explaining the popularity of JSON. The core idea was sound though.
Re: (Score:1)
I'd be okay with a JSON-based GUI markup standard. It's better than the status quo of DOM-only. XML vs. JSON is a secondary issue, and they are more or less interchangeable.
Offline First (Score:2)
Focus just on state-ful GUI's and only state-ful GUI's, shifting most of the burden to the server
That'd break the Service Worker-driven tolerance of Internet connection interruption that some developers in the progressive web app community have been pushing. See "Say Hello to Offline First" [hood.ie].
Re: (Score:1)
For clarity I'm mostly thinking of business applications, especially intranet. Things like ecommerce and social networks don't really need highly-tuned and compact GUI's.
I'm not asking to get rid of HTML and DOM, only supplement it with a GUI-centric standard. It's not either/or.
Re: Offline First (Score:2)
It also seems to be the approach Atlassian take with jira, and it is absolutely horrible to use.
Question: (Score:5, Interesting)
Is my intuition correct that this will make text images so that you can't copy rendered text without going through an API call to populate the clipboard?
(Forgive me if this is a dumb question; I'm asking from a position of ignorance.)
Re: (Score:3)
Re: (Score:2)
Pretty much.
Impact on downloading Docs into other formats? (Score:1)
Including "canvas grab"? (Score:2)
Because that is known to be a really nice way to track computers and hence users. If people generally reactivate canvas grab, that would allow Google to not only track (when users are not in Docs), but also identify (when users are in Docs). Hence they whole thing may yet be another part of the efforts by Google to replace tracking cookies with something even worse.
Yes, I am paranoid with regards to the evil of Google. But I am pretty sure they really are out to get everybody.
Re: (Score:1)
"Canvas grab" What is that? Do you mean the technique of using a canvas element to fingerprint you for tracking purposes?
Are you talking about the visibilitychange event?
You can override that event and trick a site to think their site is always viewed by the user. I override it all the time because some link sites stop the countdown if you switch over to another site to wait for the countdown to reach zero. It's a very easy userscript to write.
The visibilitychange event was meant to inform the site to stop/
Re: (Score:1)
Should mention google and other browsers know about the canvas fingerprinting and some browsers have implemented measures to prevent those methods. Canvas isn't the only way to fingerprint. It's one of many ways. For instance the way you move your mouse cursor when interacting or moving the cursor over a site can be used to fingerprint you, at least localize you to a smaller group which can be useful for tracking.
The way you type, the delay between key presses, how you for formulate your sentences, etc can
Canvas good but also bad. (Score:1)
Oh please! They're only using performance as an excuse to do this. They've done it many of times with the Chrome extension API when extensions have popped up that google didn't like. So they deprecated and replaced old APIs with new ones because they "preforms better". Here's the real reason: I'll just say it when no other comment have. Moving to canvas and forcing extension developers to use google's API is a move that will give google total control over what you can do to Docs. I wonder what Docs extensio