Skip to content

Move the manuscript viewer's custom controls into Cantus-owned toolbar row - #973

Open
etosphere wants to merge 4 commits into
diva/4-v7-nav-omrfrom
diva/5-v7-restyle-toolbar
Open

Move the manuscript viewer's custom controls into Cantus-owned toolbar row#973
etosphere wants to merge 4 commits into
diva/4-v7-nav-omrfrom
diva/5-v7-restyle-toolbar

Conversation

@etosphere

Copy link
Copy Markdown
Contributor

Closes #967.

etosphere added 3 commits July 8, 2026 14:42
The folio label and the goto-folio form now live in the Cantus-owned
toolbar row. DivaView binds them once at initialize and drives them only
through the adapter's backend-neutral interface, so they behave
identically on the v6 and v7 backends.

This replaces _customizeToolbar() on Diva's toolbar, which was written
against Diva v5's label markup and has rendered
"[object Object]Folio 006v ()" since the v6 upgrade (issue #949). The
new label renders the intended v5-era format, e.g. "Folio 006v (3 of 500)",
from the Solr folio alias and the adapter's page list.

The goto-folio form keeps its Solr-backed suggestions and now owns
the suggestion interaction that Diva v6's internal handler used to provide.
Typed queries are matched with leading zeros stripped, so "83r", "083r",
and "0083r" all suggest folio 083r. The bare-number page-index fallback
still applies when nothing matches (e.g., manuscripts without folio mappings).

Some controls are disabled or hidden: v6's built-in goto-page form
(enableGotoPage: false) and page label, and v7's canvas label.
getInstanceSelector, whose last caller was _customizeToolbar, is
dropped from the adapter surface.

This commit contains only the JavaScript source and styles; the built
bundles under nginx/static are not regenerated in this commit.
The toolbar row is regrouped by function: the previous/next links
move from the manuscript data column to sit beside the folio label
they page (with left/right chevrons replacing v6's vertical ones),
followed by the jumps ("Go to first chant", the goto-folio form), and
"Manuscript info" at the right edge.

Diva v7's toolbar is restyled from large captioned button columns into
a compact strip of flat icon buttons. Each button keeps its title-attribute
tooltip. The raw canvas label v7 overlays on each page is hidden, since
it conflicts with the Cantus folio label.

This commit contains only templates and styles; the built bundles under
nginx/static are not regenerated in this commit.
@etosphere etosphere self-assigned this Jul 16, 2026
@etosphere
etosphere requested a review from kyrieb-ekat July 16, 2026 12:42
Update the vendored Diva from v7.2.2 to the released v7.4.1, which adds a
stable public API.

- Rewrite DivaBackendV7 to use only Diva's public instance API
  (ready/getPages/getState/goToPage/next/previous/zoomToRegion/
  addEventListener), dropping all TypeScript-private field access and the
  #main-viewer DOM reads. Pair with OpenSeadragon 6.0.2 per the README.
- Update the viewer CSS for v7.4.0's toolbar: retarget the Manifest-Info
  hide to [data-tooltip] (buttons no longer carry a title attribute), drop
  the obsolete captioned-column restyle in favour of v7's square icon
  buttons, unify the toolbar/sidebar greys with the site control grey,
  enlarge the icon buttons, and square the goto-folio form.
- Remove dead v5-era #diva-canvas* / .canvas-throbber rules.
- Rebuild the bundles.
@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 9ea46df2-658f-408a-b981-78397f7cc821

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant