Comment ouvrir Chromium en mode kiosque plein écran dans un environnement de gestionnaire de fenêtres minimal (comme openbox / jwm)

12

J'essaie de mettre en place une simple boîte de kiosque Ubuntu (14.04), exécutant uniquement un Chromium dans un environnement de gestionnaire de fenêtres très minimal. Étapes que j'ai accomplies avec succès:

  • Connectez-vous automatiquement: exec /bin/login -f kiosk_user < /dev/tty1 > /dev/tty1 2>&1dans/etc/init/tty1.conf
  • Démarrer l'environnement X ( startxdans .profile)
  • Démarrez Chromium dans l'environnement X dans .xinitrc
  • Démarrer de Windows gestionnaire (essayé fluxbox, jwmet à openboxce jour) dans.xinitrc

Ce que j'ai actuellement, c'est que Chrome démarre correctement mais en mode semi-normal. J'ai besoin d'appuyer explicitement sur F11 à partir du clavier pour que Chromium passe en mode plein écran et kiosque.

Un autre utilisateur de chrome d'une liste de diffusion a déclaré que cela fonctionnerait bien dans un environnement GNOME complet sans aucune astuce (même xdotool) - donc cela pourrait être en quelque sorte lié à ces gestionnaires de fenêtres minimales.

J'ai même essayé de démarrer Chromium lui-même sans gestionnaire de fenêtres (Chromium a quelque chose appelé Aura, son propre WM pour ChromiumOS?). Dans ce mode, je n'ai pas pu obtenir le chrome pour remplir tout l'écran. Cette méthode n'est pas préférable non plus car il n'y a pas de possibilité d'ouvrir facilement d'autres applications par exemple à des fins de dépannage.


.xinitrc

#!/bin/sh

rm ~/tmp/ -Rf
xset s off
xset dpms 600 60 60
xset +fp "$X_FONTPATH"
xset fp rehash

env > ~/.xenv

# Run chromium start
~/start_chromium.sh &

# Run window manager
exec openbox

start_chromium.sh

#!/bin/sh

set -e

CHROMIUM_TEMP=~/tmp/chromium
rm -Rf ~/.config/chromium/
rm -Rf $CHROMIUM_TEMP
mkdir -p $CHROMIUM_TEMP

chromium-browser \
    --disable \
    --disable-translate \
    --disable-infobars \
    --disable-suggestions-service \
    --disable-save-password-bubble \
    --disk-cache-dir=$CHROMIUM_TEMP/cache/ \
    --user-data-dir=$CHROMIUM_TEMP/user_data/ \
    --start-maximized \
    --kiosk "file:///home/kioskuser/kiosk.html" &
sleep 5
xdotool search --sync --onlyvisible --class "chromium" key F11
Ville Mattila
la source
Je suppose que tu as essayé de courir chromium-browser --kiosk?
saiarcot895
Oui, j'ai essayé simplement chromium-browser --kiosket cela fonctionne de la même manière que mon exemple complet ci-dessus.
Ville Mattila

Réponses:

4

Fermez le navigateur et modifiez /home/user/.config/chromium/Default/Preferences. Il y aura une section concernant window_placement.

Pour une résolution de 1920x1080 par exemple:

...

"window_placement": {
   "bottom": 1080,
   "left": 0,
   "maximized": true,
   "right": 1920,
   "top": 0,
   "work_area_bottom": 1080,
   "work_area_left": 0,
   "work_area_right": 1920,
   "work_area_top": 0
}

...

Je n'ai jamais pu trouver un moyen de spécifier cela au démarrage et cela peut changer si vous ouvrez de nouvelles fenêtres de navigateur.

Gibbs
la source
3

Depuis que j'ai fait des recherches sur ce sujet, je voudrais partager un lien vers une solution, mais cela peut ne pas fonctionner dans un gestionnaire de fenêtres minimal. Donc, si la raison de l'utilisation d'un gestionnaire de fenêtres minimal est la mémoire ou l'utilisation d'autres ressources, il pourrait y avoir de meilleures solutions.

http://www.danpurdy.co.uk/web-development/raspberry-pi-kiosk-screen-tutorial/

sudo nano / etc / xdg / lxsession / LXDE / autostart

Comme vous pouvez probablement le deviner, il s'agit d'un fichier qui s'exécute lorsque votre pi démarre. Pour désactiver l'économiseur d'écran, ajoutez un # au début de la ligne, ceci commente la ligne en sortie.

@xscreensaver -no-splash

Ajoutez ensuite ces lignes sous la ligne d'économiseur d'écran

@xset s off @xset -dpms @xset s noblank

Cela désactive les paramètres de gestion de l'alimentation et arrête la suppression de l'écran après une période d'inactivité.

Maintenant que cela est fait, nous devons empêcher l'affichage de messages d'erreur à l'écran dans le cas où quelqu'un éteint accidentellement le pi sans passer par la procédure d'arrêt. Pour ce faire, nous ajoutons la ligne suivante sous les lignes que vous venez d'ajouter.

@sed -i / s / "exited_cleanly": false / "exited_cleanly": true / '~ / .config / chromium / Default / Preferences

Enfin, nous devons dire à chrome de démarrer et quelle page charger une fois qu'il démarre sans dialogues d'erreur et en mode Kiosk. Pour ce faire, ajoutez la ligne suivante au bas de ce fichier de démarrage automatique.

@chromium --noerrdialogs --kiosk http: //www.page-to.display

Erwin
la source
2

Faites une copie du fichier (enregistrez-le sous l'ancien nom de fichier) Supprimez le contenu du démarrage automatique et remplacez-le sudo nano ~/.confg/lxsession/LXDE/autostart @xset s off @xset -dpms @xset s noblank @chromium-browser --noerrdialogs --incognito --kiosk https://yoursite.html

lightarrow
la source
Vous pouvez l'utiliser avec une connexion automatique pour le compte d'utilisateur.
lightarrow