如何在最小窗口管理器环境(如 openbox/jwm)中以全屏信息亭模式打开 Chromium

如何在最小窗口管理器环境(如 openbox/jwm)中以全屏信息亭模式打开 Chromium

我正在尝试设置一个简单的 Ubuntu 信息亭盒 (14.04),在非常小的窗口管理器环境中仅运行 Chromium。我已成功完成的步骤:

  • 自动登录:exec /bin/login -f kiosk_user < /dev/tty1 > /dev/tty1 2>&1/etc/init/tty1.conf
  • 启动 X 环境(startx.profile
  • 在 X 环境中启动 Chromium.xinitrc
  • 启动窗口管理器(已尝试fluxboxjwm到目前为止openbox.xinitrc

我目前的情况是 Chromium 正常启动,但处于半正常模式。我需要从键盘上按下 F11 键才能让 Chromium 切换到全屏和信息亭模式。

邮件列表中的一位 chromium 用户表示,这可以在完整的 GNOME 环境中正常工作,无需任何技巧(甚至xdotool) - 所以这可能与这些最小的窗口管理器有某种关系。

我甚至尝试过在没有任何窗口管理器的情况下启动 Chromium 本身(Chromium 有一种名为 Aura 的东西,是 ChromiumOS 自己的窗口管理器?)。在这种模式下,我无法让 Chromium 填满整个屏幕。这种方法也不可取,因为无法轻松打开其他应用程序(例如用于故障排除目的)。


.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

启动_chromium

#!/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

答案1

关闭浏览器并编辑/home/user/.config/chromium/Default/Preferences。其中会有一个关于的部分window_placement

例如,对于 1920x1080 的分辨率:

...

"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
}

...

我从来没有找到在启动时指定这一点的方法,并且如果你打开新的浏览器窗口它就会改变。

答案2

由于我已经研究过这个主题,我想分享一个解决方案的链接,但它可能在最小窗口管理器中不起作用。因此,如果使用最小窗口管理器的原因是内存或其他资源使用,那么可能会有更好的解决方案。

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

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

您可能已经猜到了,这是 pi 启动时运行的文件。要禁用屏幕保护程序,请在行首添加 #,这会注释掉该行。

@xscreensaver-无飞溅

接下来在屏幕保护程序行下面添加以下几行

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

这将禁用电源管理设置,并在一段时间不活动后停止屏幕消隐。

现在,我们应该防止在有人不小心关闭 pi 而不执行关机程序的情况下在屏幕上显示任何错误消息。为此,我们在刚刚添加的行下面添加以下行。

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

最后,我们需要告诉 Chromium 启动,以及在启动时加载哪个页面,并且不会出现错误对话框,并且处于 Kiosk 模式。为此,请将以下行添加到此自动启动文件的底部。

@chromium--noerrdialogs--kioskhttp://www.page-to.display

答案3

复制该文件(另存为old.filename)删除自动启动的内容并替换它 sudo nano ~/.confg/lxsession/LXDE/autostart @xset s off @xset -dpms @xset s noblank @chromium-browser --noerrdialogs --incognito --kiosk https://yoursite.html

相关内容