Skip to content

Rename "Nextcloud Office (Collabora)" by "Collabora Online" - #6074

Open
chrip wants to merge 3 commits into
mainfrom
rename/collabora-online
Open

Rename "Nextcloud Office (Collabora)" by "Collabora Online"#6074
chrip wants to merge 3 commits into
mainfrom
rename/collabora-online

Conversation

@chrip

@chrip chrip commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Renames the Collabora integration from "Nextcloud Office (Collabora)" to
"Collabora Online" throughout the user-facing surface. The appstore listing
is generated from <name> in appinfo/info.xml at release time, so that
line is what updates the store entry.

"Nextcloud Office" is now the name of the Euro-Office based suite, so
keeping it on this app made the two products ambiguous wherever they appear
side by side.

Behaviour changes

Two changes here are more than string replacement and deserve a closer look:

lib/Settings/Section.php — removed the hasNextcloudBranding() branch
in getName(); it now returns getProductName() unconditionally, and the
then-unused IL10N dependency is gone. hasNextcloudBranding() is a
Collabora product version check (isVersionAtLeast('21.11')), not a theme
check, so the old branch meant a default install showed a bare "Office".
Effects: default install now shows "Collabora Online"; a white-label install
(app setting theme !== 'nextcloud' plus a vendor productName in
capabilities) now reaches the vendor's own name, which was previously
unreachable.

lib/Notification/Notifier.phpgetName() returned a hardcoded
'Office' and now returns the product name. Since that call reaches the
cached capabilities and therefore touches app data, where it used to be a
constant, it falls back rather than letting a display label break the
notifier list.

Both classes are type-wired (info.xml and registerNotifierService());
there are no positional constructions to update.

The admin and personal settings now resolve the product name the same way,
so a white-label install no longer shows the vendor name on a section
heading and "Collabora Online" inside the panel.

Out of scope

CHANGELOG.md and l10n/*.js are untouched — translations are regenerated
by the pipeline. The Office Vue component name is internal, not
user-facing. The onlyoffice app is a separate product and unaffected.

Note on translations

The changed t() source strings lose their existing translations until
Transifex catches up. This will apply to the backports as well.

Testing

  • App name in admin settings
  • App name in personal settings
  • Notification source name in the notification settings list
  • Appstore listing name after release
  • White-label install still resolves the vendor product name

Assisted-by: ClaudeCode:opus-5

Rename the app from 'Nextcloud Office (Collabora)' to 'Collabora Online'
across user-facing strings, settings sections, notifications, task
processing providers and docs. The notification source name now uses
the product name instead of a hardcoded 'Office' label, and the
settings section heading no longer branches on the Collabora
product version check.

Assisted-by: OhMyPi:qwen3.8-27b
Signed-off-by: Christoph Schaefer <christoph.schaefer@nextcloud.com>
After the rename the admin description read 'Collabora Online requires a
separate server running Collabora Online', immediately next to a second
sentence saying the same thing more precisely. Drop the redundant one and
keep the WOPI-like Client wording, which is unchanged and keeps its
translations.

The product description branched on hasNextcloudBranding purely to pick a
name, so both arms became the same sentence. Collapse them and resolve the
name through the {productName} placeholder, which also stops the paragraph
contradicting the heading above it on a white-label install. That was the
last consumer of the hasNextcloudBranding initial state in this component.

Personal settings hardcoded the name while its surrounding section heading
resolves getProductName(), so a white-label install showed the vendor name
outside the panel and 'Collabora Online' inside. Read the product name the
same way the admin settings already do.

Notifier::getName() was a constant before this branch and now reads the
cached capabilities, which touches app data. Fall back rather than let a
display label break the notifier list.

Assisted-by: ClaudeCode:claude-opus-5
Signed-off-by: Christoph Schaefer <christoph.schaefer@nextcloud.com>
The literal substitution left two wrong sentences on the repo front page.
README.md said "Collabora Online is built on Collabora Online", which only
parsed while the subject and object were different names, and it claimed
Collabora Online is based on CODE when CODE is an edition of Collabora
Online, not the other way round. Rewrite both around the app rather than
the product. docs/frontend-integration.md had the same problem in the
sentence that exists to separate the emitting server from the handling app.

Drop hasNextcloudBranding(): this branch removed its last consumer, and
what remained was an initial state nothing read and a product-version check
nothing called.

Stop sending the product name through gettext. A brand is not a
translatable string, and this was the last use of IL10N in the class.
Expose it as a constant so the notifier fallback cannot drift from it, and
log the swallowed failure instead of discarding it silently.

Cover the two behaviour changes: that getProductName() resolves a
white-label vendor name, which the old hardcoded 'Office' made unreachable;
that the settings section no longer branches on the product version; and
that the notifier falls back rather than propagating when the capabilities
lookup throws, which nothing exercised before.

Assisted-by: ClaudeCode:claude-opus-5
Signed-off-by: Christoph Schaefer <christoph.schaefer@nextcloud.com>
@chrip chrip changed the title Replace Nextcloud Office (Collabora) with Collabora Online Rename "Nextcloud Office (Collabora)" by "Collabora Online" Sep 11, 2026
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