Ich versuche, eine benutzerdefinierte Sitzung zu erstellen, indem ich eine custom.desktop-Datei im /usr/share/xesessions
Ordner erstelle . Denken Sie daran, dass dies keine gnome
oder eine andere Sitzung ist. Ich habe meine eigene Anwendung für diese Sitzung erstellt, die einfach ist.
Fall 1
Chrome Browser
Inhalt der Datei custom.desktop
[Desktop Entry]
Name=Internet Kiosk
Comment=This is an internet kiosk
Exec=google-chrome --kiosk
TryExec=
Icon=
Type=Application
Problem
Der Chrome-Browser startet im Kioskmodus, erfasst jedoch nicht den gesamten Bildschirmbereich. Ein Bereich befindet sich links unten und rechts auf dem Bildschirm.
Fall 2
Benutzerdefinierte pyGTK App (schnell)
Inhalt der Datei custom.desktop
[Desktop Entry]
Name=Custom Kiosk
Comment=This is a custom kiosk
Exec=~/MyCustomPyGTKApp
TryExec=
Icon=
Type=Application
Problem
Meine benutzerdefinierte pyGTK-App enthält window.fullScreen()
den Code. Das heißt, es sollte im Vollbildmodus ohne Fensterchrom geöffnet werden (und dies unter der normalen Sitzung). Aber auch das lässt viel Platz um sich herum.
Brauchen Sie Hilfe
Kann mir jemand sagen, was hier los ist. Ich denke, es ist ein Problem mit Grenzen, wie unter http://www.instructables.com/id/Setting-Up-Ubuntu-as-a-Kiosk-Web-Appliance/?ALLSTEPS in Schritt 8 beschrieben
Wenn Google Chromium zufällig nicht aktiviert ist und der Schalter --kiosk aktiviert ist, gibt es eine einfache Lösung. Um Chromium zu erweitern, melden Sie sich einfach als normaler Benutzer an und bearbeiten Sie chromeKiosk.sh so, dass der Schalter --kiosk nicht vorhanden ist. Melden Sie sich dann als eingeschränkter Benutzer an, klicken Sie auf den Schraubenschlüssel und wählen Sie Optionen. Wählen Sie dann auf der Registerkarte Persönliches Material die Titelleiste des Systems ausblenden und verwenden Sie kompakte Rahmen. Schließen Sie den Optionsbildschirm und dehnen Sie Chromium entsprechend dem Monitor. Gehen Sie dann zurück in das Optionsfenster und setzen Sie es auf Systemtitelleiste und Rahmen verwenden. Melden Sie sich danach von Ihrem eingeschränkten Benutzer ab (möglicherweise muss er nur neu gestartet werden) und melden Sie sich bei Ihrem regulären Benutzer an. Bearbeiten Sie chromeKiosk.sh zurück, um den Schalter --kiosk wieder einzuschließen, und Chromium sollte beim nächsten Anmelden beim eingeschränkten Benutzer im Vollbildmodus angezeigt werden.
Wie sollte ich dieses Problem umgehen, wenn ich eine benutzerdefinierte App pyGTK
oder eine gtkmm
App verwenden würde? window.fullScreen()
sollte den gesamten Bildschirmbereich einnehmen. Dies muss programmgesteuert oder auf eine andere skalierbare Weise erfolgen. Ich muss dies auf einer großen Anzahl von Maschinen in verschiedenen geografischen Gebieten bereitstellen. Es ist nicht möglich, dies manuell auf jeder Maschine zu tun.
quelle
Fall 1
Sie müssen Chromium mitteilen, wie hoch Ihre Bildschirmauflösung ist, indem Sie die Voreinstellungsdatei ( untere und rechte Werte) neu schreiben . Der Link, den Sie gepostet haben, enthält diesen Teil.
(getestet in Ubuntu 12.04)
case2
Ich würde sagen, dass Sie Ihrer pyGTK-App irgendwie mitteilen müssen, wie hoch die unteren und rechten Werte bzw. die Bildschirmauflösung sind. Dann sollte der Vollbildbefehl Ihre App dazu bringen, den gesamten Bildschirm abzudecken, dh keine Grenzen zu lassen.
Bearbeiten: Es sieht so aus, als ob die window.fullscreen () -Methode es im Allgemeinen wirklich im Vollbildmodus machen sollte. Sie müssen also nicht zuerst die Auflösung definieren. Weitere Informationen hier, aber ich bin sicher, dass Sie dies bereits wissen: http://www.pygtk.org/docs/pygtk/class-gtkwindow.html#method-gtkwindow--fullscreen
quelle
Fall 1 in meinem Fall hat mir das geholfen:
Ich habe die Werte entsprechend meiner Bildschirmauflösung geändert
quelle