Collabora CODE-Symbolleisten anpassen, ohne den Quellcode zu bearbeiten

Um den Editor von Collabora Online Development Edition (CODE) zu vereinfachen, wählen Sie für das Gesamtlayout „Kompakt“ oder „ Registerkarten“ . Anschließend können Sie mithilfe der PostMessage-Integration des WOPI-Hosts einzelne Befehle, Schaltflächen oder Notebookbar-Registerkarten ausblenden. Das Ausblenden einer Symbolleiste ist eine praktische Änderung der Darstellung; das Ausblenden eines Steuerelements über den Host ist jedoch sinnvoller, wenn Sie für jede Bearbeitungssitzung eine einheitliche Benutzeroberfläche wünschen.

Welche CODE-Schnittstelle sollten Sie anpassen?

CODE bietet ein kompaktes Layout mit traditionellen Menüs und Symbolleisten sowie ein Layout mit Registerkarten und Notebookbar. Ermitteln Sie zunächst, welches Layout Ihre Benutzer sehen: Die IDs von Symbolleistenschaltflächen und Notebookbar-Registerkarten sind nicht austauschbar. Laut Collaboras Support-Dokumentation wurden die älteren Bezeichnungen ab der Version 21.11 zugunsten von „Code“ und „Notebookbar“ als veraltet markiert classic. Weitere Informationen finden Sie in der Collabora-Benutzeroberflächenkonfiguration .notebookbarcompacttabbed

Collabora CODE bietet eine Registerkarten-Oberfläche mit den Registerkarten Datei, Start, Einfügen, Layout, Ansicht und Hilfe oberhalb eines Writer-Dokuments.
Das Layout „Registerkarten“ gruppiert die Bearbeitungswerkzeuge unter benannten Registerkarten; die Registerkarte „Hilfe“ ist ein mögliches Ziel für Hide_NotebookTab.
Die Benutzeroberfläche von Collabora CODE Compact zeigt die Menüs Datei, Bearbeiten, Ansicht, Einfügen, Format, Werkzeuge und Hilfe oberhalb einer schmalen Symbolleiste.
Das kompakte Layout verwendet eine separate Menüzeile und eine kleinere Tastenleiste, daher benötigen Menü- und Tastensteuerung unterschiedliche Kennungen.

Sollten Sie eine Servervorgabe oder eine Benutzersitzung ändern?

Ändern Sie die Serverstandardeinstellung nur dann, wenn die meisten Benutzer mit demselben Layout beginnen sollen. Bei selbstverwalteten Installationen akzeptiert die user_interface.modeEinstellung die Werte , , oder . Sichern Sie die Konfiguration und ändern Sie dann den vorhandenen Wert, anstatt ein weiteres XML-Element hinzuzufügen.coolwsd.xmldefaultcompacttabbedmode

<user_interface>
  <mode>tabbed</mode>
</user_interface>

Dieses verkürzte XML-Beispiel veranschaulicht die Einstellung und ersetzt nicht den gesamten Konfigurationsabschnitt. Wenden Sie die Änderung über den normalen Konfigurations- und Neustartprozess Ihrer Bereitstellung an und öffnen Sie anschließend ein neues Dokument. Container-Bereitstellungen können stattdessen --o:user_interface.mode=tabbedihre bestehenden CODE-Startüberschreibungen verwenden. Eine eingebettete Anwendung kann den Startmodus auch über ihren WOPI- ui_defaultsWert beeinflussen. Die Präferenz des Hosts kann relevant sein, wenn der Server verwendet wird default. Gehen Sie daher nicht davon aus, dass eine Serveränderung eine integrationsspezifische Auswahl überschreibt.

Kann man eine ganze Symbolleiste ausblenden, ohne den Quellcode zu bearbeiten?

Um beim Lesen mehr Platz zu haben, kann die Notebookbar durch Klicken auf den aktuell ausgewählten Tab minimiert und durch erneutes Klicken wieder maximiert werden. Collabora beschreibt dieses Verhalten in der offiziellen Notebookbar-Einführung . Die PostMessage-API dokumentiert außerdem Collapse_Notebookbardie Möglichkeit, die Notebookbar-Schaltflächen oder die Schaltflächenleiste „Kompakt“ auszublenden. Es handelt sich dabei um einen reversiblen Anzeigezustand, nicht um eine permanente Administratoreinstellung.

Für eine feinere Steuerung wählen Sie die PostMessage-Aktion, die dem Element entspricht. Die folgenden Zuordnungen sind im Collabora Online SDK-Handbuch aufgeführt :

Was ausgeblendet werden sollPostMessage-AktionID-Format
Eine SymbolleistenschaltflächeHide_ButtonSchaltflächen-ID
Ein Befehl für Menüs und SymbolleistenHide_CommandUNO-Befehl, wie zum Beispiel.uno:ThemeDialog
Ein Tab im Tabbed-LayoutHide_NotebookTabTab-ID, z.B.Help
Ein kompakter MenüeintragHide_Menu_ItemMenüpunkt-ID

Die tabspezifische Aktion ist ab Version 24.04.11.1 dokumentiert . Das SDK weist außerdem auf eine erweiterte Abdeckung des Kontextmenüs Hide_Commandin Version 24.04.11.2 hin . Überprüfen Sie Ihren bereitgestellten CODE-Build, bevor Sie sich auf eines dieser Verhaltensweisen verlassen.

Wie sendet man die Hide-Befehle vom WOPI-Host aus?

Diese Aktionen werden von der Anwendung gesendet, die CODE in einem iFrame einbettet – nicht über einen CODE-Einstellungsdialog eingegeben. Sie benötigen die Kontrolle über diese Host-Integration, eine funktionierende WOPI- CheckFileInfoAntwort und einen PostMessageOriginWert, der dem Ursprung Ihrer Host-Webanwendung entspricht. Wenn Sie eine vorkonfigurierte Nextcloud- oder ownCloud-Integration verwenden, stellt diese möglicherweise keine beliebigen benutzerdefinierten PostMessage-Hooks bereit. Nehmen Sie in diesem Fall die Änderung direkt in der Integration vor oder verwenden Sie deren unterstützte Einstellungen.

1. Warten Sie, bis der CODE vollständig geladen ist.

Registrieren Sie einen Nachrichtenempfänger auf der Hostseite. Überprüfen Sie sowohl das Absenderfenster als auch den Ursprung. Wenn CODE meldet App_LoadingStatus, Status: Document_Loadedsenden Sie Host_PostmessageReadydie Nachricht vor den Anpassungsnachrichten. Ohne diesen Handshake kann CODE Hostbefehle ignorieren – ein Fehler, der in Collabora-Problem #13224 erläutert wird .

2. Tabulator und Formatierungsbefehl ausblenden

Der folgende hostseitige JavaScript-Code setzt voraus, dass Ihre Seite bereits ein iFrame mit der ID enthält collabora-frame. Verwenden Sie editorOriginhierfür die exakte HTTPS-Ursprungsadresse Ihres CODE-Editors, nicht den WOPI-Speicherserver. Registrieren Sie den Listener vor der Dokumentinitialisierung in Ihrer eigentlichen Anwendung.

const frame = document.getElementById('collabora-frame');
const editorOrigin = 'https://office.example.com';

function sendToCode(MessageId, Values = {}) {
  frame.contentWindow.postMessage(JSON.stringify({
    MessageId, SendTime: Date.now(), Values
  }), editorOrigin);
}

window.addEventListener('message', (event) => {
  if (event.source !== frame.contentWindow ||
      event.origin !== editorOrigin) return;
  let message;
  try {
    message = typeof event.data === 'string'
      ? JSON.parse(event.data) : event.data;
  } catch { return; }
  if (message?.MessageId !== 'App_LoadingStatus' ||
      message?.Values?.Status !== 'Document_Loaded') return;

  sendToCode('Host_PostmessageReady');
  sendToCode('Hide_NotebookTab', { id: 'Help' });
  sendToCode('Hide_Command', { id: '.uno:ThemeDialog' });
});
Im Quellenbereich der Browser-Entwicklertools wird ein hostseitiger Nachrichtenlistener und ein Hide_NotebookTab-Aufruf mit dem Ziel Help angezeigt.
Im Quellcodebereich der Host-Anwendung kann die PostMessage-Verkabelung eingesehen werden. Verwenden Sie den vollständigen Codeausschnitt aus dem Artikel und nicht die Kurzfassung in diesem Bereich.

Hier Helpist das Ziel der Registerkarte „Notebookbar“, während .uno:ThemeDialogein LibreOffice UNO-Befehl identifiziert wird. Die Collabora-Entwickler beschreiben die letztgenannte ID in ihrer Anleitung zum Ausblenden von UNO-Elementen . Um stattdessen eine bestimmte Schaltfläche der Kompakt-Symbolleiste auszublenden, ersetzen Sie die Aktion durch Hide_Buttonund geben Sie die verifizierte Schaltflächen-ID an. Ermitteln Sie die ID nicht anhand der sichtbaren Beschriftung; überprüfen Sie stattdessen den Quellcode Ihres installierten Codes oder die Hinweise zur Symbolleisten-ID im SDK.

Was passiert, wenn die Registerkarte oder die Symbolleiste nicht verschwindet?

Überprüfen Sie die Browserkonsole und die Netzwerkaktivität, bevor Sie Änderungen an CODE-Dateien vornehmen. Häufige Ursachen sind ein fehlender Host_PostmessageReadyHandshake, eine fehlerhafte Konfiguration PostMessageOrigin, das Senden von Nachrichten vor dem eigentlichen Aufruf Document_Loadedoder das Ansteuern eines Menüpunkts im Kompaktmodus, während sich der Editor im Tab-Modus befindet. Da beim erneuten Öffnen der Datei eine neue Sitzung gestartet wird, müssen die ausgeblendeten Nachrichten jedes Mal erneut angewendet werden.

Es gibt auch versionsspezifische Fehler. Beispielsweise beschreibt Collabora-Problem Nr. 15910Hide_NotebookTab einen JavaScript-Fehler in CODE 25.04.9.4, der im Juni 2026 gemeldet wurde. Das Problem ist zwar als behoben markiert, aber das allein gibt nicht an, welche bereitgestellten Builds eine Korrektur enthalten. Überprüfen Sie Ihre genaue Version und die zugehörigen Versionshinweise, falls der gemeldete Fehler auftritt.

Schließlich ist das Ausblenden keine Zugriffskontrolle. Ein ausgeblendeter Druck- oder Download-Button kann weiterhin äquivalente APIs oder andere Pfade zugänglich machen. Wenn das Ziel darin besteht, diese Operationen zu unterbinden, verwenden Sie die dokumentierte WOPI DisablePrintoder DisableExportentsprechende Flags und setzen Sie Ihre Speicherberechtigungen entsprechend durch, anstatt sich auf Hide_Buttonoder zu verlassen Hide_Command.

Wie lässt sich überprüfen, ob die Anpassung funktioniert hat?

Öffnen Sie ein neues Dokument im gewünschten Layout. Prüfen Sie, ob die HelpRegisterkarten im Tab-Modus fehlen und der Befehl „Design“ nicht mehr an der Stelle angezeigt wird, an der er zuvor sichtbar war. Bearbeiten und speichern Sie anschließend ein Testdokument, um zu bestätigen, dass die normale Bearbeitung weiterhin funktioniert. Wiederholen Sie die Prüfung mit einem anderen Dokumenttyp und nach dem Neuladen der Seite, da der Host die sitzungsspezifischen Ausblendbefehle erneut anwenden muss.

Collabora CODE bietet eine Registerkarten-Oberfläche mit den Registerkarten Datei, Start, Einfügen, Layout und Ansicht, wobei die Hilfe entfernt wurde und ein Writer-Dokument weiterhin bearbeitbar bleibt.
Nachdem die Registerkarte „Hilfe“ ausgeblendet wurde, bleiben die anderen Bearbeitungsregisterkarten und die Dokumentoberfläche für eine Funktionsprüfung weiterhin verfügbar.

Einen Kommentar hinterlassen

Collabora CODE-Symbolleisten anpassen, ohne den Quellcode zu bearbeiten

Collabora CODE-Symbolleisten anpassen, ohne den Quellcode zu bearbeiten

Vereinfachen Sie Collabora CODE mit dem Kompakt- oder Tabbed-Modus und den WOPI PostMessage-Steuerelementen, um ausgewählte Schaltflächen, Befehle und Registerkarten sicher auszublenden.

Collabora-Code hinter Nginx mit TLS-Terminierung ausführen

Collabora-Code hinter Nginx mit TLS-Terminierung ausführen

Setzen Sie Nginx für HTTPS in einem Collabora CODE-Container ein, leiten Sie die Bearbeitung von WebSockets korrekt weiter und überprüfen Sie den öffentlichen Endpunkt, ohne Port 9980 freizugeben.

Text sichtbar halten, wenn die Collabora Mobile-Tastatur geöffnet wird

Text sichtbar halten, wenn die Collabora Mobile-Tastatur geöffnet wird

Fehlerbehebung bei einem Problem, bei dem die Tastatur eines mobilen Browsers den Text in Collabora Online verdeckt, mit schnellen Problemumgehungen und separaten Prüfungen für Browser, eingebettete WebViews und Hostseiten.

Unerwünschte Ausdrucke und Downloads in ONLYOFFICE stoppen

Unerwünschte Ausdrucke und Downloads in ONLYOFFICE stoppen

Legen Sie Druck- und Downloadlimits für ONLYOFFICE-Links, Raummitglieder oder Docs-API-Sitzungen fest und überprüfen Sie anschließend die Einschränkungen anhand eines Empfängerkontos.

Planen Sie zuverlässige Backups für Ihren ONLYOFFICE-Arbeitsbereich

Planen Sie zuverlässige Backups für Ihren ONLYOFFICE-Arbeitsbereich

Legen Sie in ONLYOFFICE Workspace ein Sicherungsziel, einen Zeitplan, die E-Mail-Abdeckung und eine Aufbewahrungsfrist fest und überprüfen Sie anschließend, ob das Archiv zur Wiederherstellung bereit ist.

ONLYOFFICE Docs Enterprise mit der offiziellen Compose-Datei bereitstellen

ONLYOFFICE Docs Enterprise mit der offiziellen Compose-Datei bereitstellen

Starten Sie den Enterprise Docker Compose Stack, speichern Sie dessen Lizenz und Daten, konfigurieren Sie JWT sicher und vergewissern Sie sich, dass die Editoren zur Integration bereit sind.

Bereinigen Sie Tabellenkalkulationstext mit einem wiederverwendbaren ONLYOFFICE-Makro.

Bereinigen Sie Tabellenkalkulationstext mit einem wiederverwendbaren ONLYOFFICE-Makro.

Verwenden Sie ein ONLYOFFICE JavaScript-Makro, um nicht druckbare Zeichen zu entfernen und überflüssige Leerzeichen aus einem definierten Tabellenbereich zu kürzen, und zwar mit einem sicheren Überprüfungsworkflow.

Ändern des Standardspeicherorts im ONLYOFFICE-Arbeitsbereich

Ändern des Standardspeicherorts im ONLYOFFICE-Arbeitsbereich

Verschieben Sie Portaldaten vom Standard-Festplattenspeicher zu einem unterstützten Cloud-Speicheranbieter oder verlagern Sie Docker-Daten sicher, indem Sie die Zuordnung des Host-Volumes ändern.

ONLYOFFICE Document Server vollständig von Linux entfernen

ONLYOFFICE Document Server vollständig von Linux entfernen

Ermitteln Sie, ob Document Server ein Linux-Paket oder Docker verwendet, entfernen Sie nur dessen Komponenten und prüfen Sie die verbleibenden Daten, ohne versehentlich gemeinsam genutzte Dienste zu löschen.

Beheben Sie Verzögerungen beim gemeinsamen Bearbeiten in ONLYOFFICE, indem Sie den Flaschenhals finden.

Beheben Sie Verzögerungen beim gemeinsamen Bearbeiten in ONLYOFFICE, indem Sie den Flaschenhals finden.

Führen Sie die Ursache für langsame kollaborative Bearbeitung auf Docker-Ressourcenengpässe, Proxy-Verbindungen oder zu hohe Dokumentladezeiten zurück und wählen Sie dann die Lösung, die Ihren Messwerten entspricht.