Say "page", not "sheet", everywhere a user sees it

From the development repository at 854009c.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ackandClaude Opus 4.8 committed 2026-10-11 19:57:55 +02:00
1 parent cc0b8dbd31
commit 34ca33d365
6 files changed
+32 -29

No files matched your search

+1 -1
View File
@@ -77,7 +77,7 @@
<button id="zoom_fit" type="button"
data-help="Show the whole page in the window. Pressed by the host, it does so on every screen. Ctrl (Command on a Mac) with the scroll wheel, or with a pen stroke up or down, zooms about the pointer.">Fit</button>
<button id="zoom_sheet" type="button"
data-help="Show the page at the scale a new page has: one A4 sheet filling the window. A shrunk page is then seen at its size on the sheet. Pressed by the host, it does so on every screen.">A4</button>
data-help="Show the page at the scale a new page has: a full A4 page filling the window. A shrunk page is then seen at its own size rather than enlarged. Pressed by the host, it does so on every screen.">A4</button>
<button id="zoom_expand" type="button" hidden
data-help="Make the page fill the window, for everyone, at this zoom, in both directions. Nothing on it moves.">Expand</button>
<button id="zoom_shrink" type="button" hidden
+2 -1
View File
@@ -337,7 +337,8 @@ export function cleanImage(received) {
* natural size: one way for every image (Andy, 2026-10-08, dropping the
* shrink-to-fit choice and composition mode, since an image can be moved
* and scaled by hand). An image wider than the page widens the sheet
* equally on both sides; one wider than a page can be is scaled to that.
* equally on both sides, and one taller lengthens it downward, so the
* whole image has room; one larger than a page can be is scaled to that.
* @param {Page} page
* @param {number} naturalWidth In page units.
* @param {number} naturalHeight
+8 -9
View File
@@ -58,9 +58,9 @@ explanation appears beneath it.
### The page
The page is an A4 sheet lying on its side, shown so that it fits the
The page is A4 in size, lying on its side, shown so that it fits the
window. Write
anywhere on it. When your writing comes near an edge, the sheet grows in
anywhere on it. When your writing comes near an edge, the page grows in
that direction, in small steps, so there is always room, and the view
keeps its scale and extends beyond the window; scroll to reach the rest.
An image the host puts on the page lies at the top, or below the images
@@ -147,20 +147,19 @@ extends beyond the window and you scroll to the rest. Three buttons and
two gestures change the view, and none of them changes the page:
* **Fit** shows the whole page in the window.
* **A4** shows the page at the scale a new page has, one A4 sheet
* **A4** shows the page at the scale a new page has, a full A4 page
filling the window, so that a page shrunk to a small exercise is seen
at its size on the sheet rather than enlarged to fill the window.
at its own size rather than enlarged to fill the window.
* When the host presses **Fit** or **A4**, every participant's view
follows, each in their own window. Your own Fit and A4 change only
your screen.
* **Expand**, which only the host and co-hosts have, makes the page
itself fill the window, for everyone, at the present zoom, in both
directions. The sheet grows equally on every side, so nothing on the
page moves and nothing is rescaled; there is simply more room around
it.
directions. The page grows equally on every side, so nothing on it
moves and nothing is rescaled; there is simply more room around it.
* **Shrink**, also for the host and co-hosts, makes the page, for everyone, just large enough for what is on it,
with the usual margin around. Nothing on it moves either.
* **Extend** is a box, ticked to begin with. Ticked, the sheet grows
* **Extend** is a box, ticked to begin with. Ticked, the page grows
when your writing comes near an edge, so there is always room.
Unticked, your writing stops short of the edge; a stroke that leaves
the page resumes when the pen comes back. Images always get the room
@@ -222,7 +221,7 @@ doing anything. Where it is saved depends on how you joined.
and small pictures of the pages kept in them, wherever they are kept.
Rest the pointer on a page for a second and its facts appear: the first
text on it, when it was last changed, who wrote on it, what is on it
and the size of the sheet; on a notebook, how many pages it keeps and
and the size of the page; on a notebook, how many pages it keeps and
from when, when it was last written in, and where it is.
There you can delete pages and notebooks you no longer want: mark them
with the × at their left, then press **Delete** twice. In the browser
+7 -6
View File
@@ -118,7 +118,7 @@ Other options, all optional:
## Starting a session
On the start screen, enter your name and the notebook for this session,
and press **Start a session**. You are on page 1, a blank sheet, and
and press **Start a session**. You are on page 1, blank, and
**Session** in the toolbar shows the invitation.
### The notebook
@@ -172,8 +172,9 @@ page's width, at its natural size, in front of the images already
there. Natural size is the size the file records: a scan arrives at
the size of the paper it came from. A photo from a phone or camera
records no useful size and arrives at a tenth of a millimetre per
pixel. An image wider than the page widens the page on both sides to
hold it. From there you move and scale it by hand, as described next;
pixel. An image wider than the page widens it on both sides, and one
taller than the page lengthens it downward, so the whole image has room.
From there you move and scale it by hand, as described next;
there is no other setting to choose. PNG and JPEG files are shared as
they are unless very large; other formats, and images over 2400 pixels
on a side or 1.5 MB, are converted to JPEG and reduced first, which
@@ -193,7 +194,7 @@ afterwards. Only you and co-hosts can move images.
For a page that begins with an image, press **New** and then **Image**.
For a series of exercises, keep pressing **Image** on the same page: the
sheet grows downward and everyone scrolls through them. A new image does
page grows downward and everyone scrolls through them. A new image does
not change anyone's zoom; it appears below, to be scrolled to.
A tap of the eraser on an image removes it, whoever added it and
@@ -227,8 +228,8 @@ beside yours. Only its owner can type in a box, as with any text.
**Expand**, among the view buttons, makes the page fill your window for
everyone, at your present zoom, in both directions: the quickest way to
more room for writing around an exercise. The sheet grows equally on
every side, so nothing on the page moves. The page keeps the new size
more room for writing around an exercise. The page grows equally on
every side, so nothing on it moves. The page keeps the new size
in everyone's notebook. **Shrink** is its opposite: the page becomes
just large enough for everything on it, images and writing, with the
margin of 5 mm around, which trims a page down to its exercise before you keep
+6 -5
View File
@@ -112,19 +112,20 @@ from the host (or from an allowed guest, for pages and images).
## Pages
Page coordinates are in units of 0.1 mm. A blank page is an A4 sheet
in landscape, 2970 by 2100 units. "Expand" makes the sheet fill the
Page coordinates are in units of 0.1 mm. A blank page is A4
in landscape, 2970 by 2100 units. "Expand" makes the page fill the
window in both directions, and
"Shrink" makes it the bounding box of everything on the page plus the
greater of the two margins, exactly, on every side; both are changes to the page like adding
an image, carried in the page descriptor (its `left` and `top` edges and
its size) with the images' revision raised. Writing within 5 mm of an edge grows the page by
5 mm on that side, counted from the sheet's edge. An image is placed at its natural size, taken from
5 mm on that side, counted from the page's edge. An image is placed at its natural size, taken from
the resolution recorded in the file, or 0.1 mm per pixel when there is
none (the nominal 72 and 96 dpi that cameras and screenshots write count
as none), centred across the page, 5 mm from the top or from the image
above, the sheet widened equally on both sides if it is wider than the
page; only one wider than a page can be, 2 m, is scaled down. A page holds at most 12 images and 24 MB of image data.
above, the page widened equally on both sides if the image is wider
than it and lengthened downward if the image is taller; only one wider
than a page can be, 2 m, is scaled down. A page holds at most 12 images and 24 MB of image data.
An image file over 2400 pixels on a side or 1.5 MB, or not PNG or JPEG,
is redrawn at most 2400 pixels and stored as JPEG before it is shared;
smaller PNG and JPEG files are shared byte for byte.
+8 -7
View File
@@ -4,7 +4,7 @@ Kokkoja lets people at different computers write together on a shared
*page*. Everyone in a session sees the same page. Anyone can write on it
by hand or type on it, and what one person writes appears on the others'
screens as it is written. A page can begin blank, or it can begin with an
image, such as a scanned sheet or a photograph, which everyone then writes
image, such as a scanned document or a photograph, which everyone then writes
on. Every page is saved automatically to a *notebook* on each person's
own computer, so that after the session each participant keeps a complete
copy of everything that was written.
@@ -33,10 +33,11 @@ layer of its own. You can erase your own writing and nothing else; nobody
else can erase yours. Any layer can be hidden on your own screen without
affecting anyone else's view.
**A page that grows.** A page is an A4 sheet, lying on its side. When writing approaches an
edge, the sheet grows in that direction, so you are never short of room.
An image is placed at its natural size; one wider than the sheet is
scaled down to fit, and the sheet grows downward to hold further images.
**A page that grows.** A page is A4 in size, lying on its side. When writing approaches an
edge, the page grows in that direction, so you are never short of room.
An image is placed at its natural size; one wider than the page is
scaled down to fit, and the page grows to hold an image taller than it
or further images below.
**Saved without a save command.** The page you are on is written to your
notebook continuously, as it changes. Nothing is lost if a connection
@@ -72,8 +73,8 @@ Safari on an iPad or an iPhone, writing with a pencil or a finger.
Kokkoja is a general tool for working on a page together at a distance:
going through a document with a colleague, sketching a diagram while
talking it over, correcting a draft, teaching anything that is done on
paper. Wherever two people would otherwise lean over one sheet, Kokkoja
puts the sheet between their computers.
paper. Wherever two people would otherwise lean over one sheet of
paper, Kokkoja puts that page between their computers.
Its ideal use, and the one it was made for first, is teaching a foreign
language over a video call. The teacher puts a scanned exercise on the