Dropdown menu not showing in kiosk-mode-browser

Hi, I built a GUI web app that has a login page using a dropdown menu for user name selection. It behaves normally in the desktop chrome browser as shown below:
image
However, when I deploy the image and test the web app on our device (colibri imx8 with a touch display), the dropdown list is not displayed when clicking the dropdown icon, but I can still select a different username by clicking on a similar location while not seeing the dropdown list.

I’m wondering whether there are settings in the kiosk-mode-browser that are affecting this behavior.
Please find my docker-compose file attached:
docker-compose.yml (2.9 KB)

Greetings @cifengfang,

I was able to reproduce your error. Looking at your compose file the kiosk container you are using is based on our old “kiosk-mode-browser” container. Since then we’ve created new kiosk browser container as seen here: Web Browser / Kiosk Mode with TorizonCore | Toradex Developer Center

These new containers separate Cog and Chromium into different container images but also have updated and tweaked versions of both browsers. Using this as a test site for drop-down menus: DropDown Menu : Dummy-Site : @GlobalSQA

I compared the behavior between the old “torizon/kiosk-mode-browser” and the new “torizon/chromium” container image. On the new container image the drop-down menus work as expected. With the old container image I experience the issue you described.

So it seems like this is only an issue with the old container image and is resolved in the new one. Unfortunately I don’t know what exactly we changed that would have fixed this. We did many changes between the old and new container images and we never explicitly did a change to fix any issues with drop-down menus.

Best Regards,
Jeremias

Hi @jeremias.tx,

Thanks for the suggestion of using a newer browser container. I have tried torizon/cog:2 and torizon/chromium:2, but they both have some compatibility issues with our app container.

For the cog one, the bootstrap grid system doesn’t work out correctly, producing a way too large a display container than the screen dimension.

For the Chromium one, it through a “Could not parse server address: Unknown address type” Error and failed to load the web app, related docker container log showing below.

For the Chromium one, it through a “Could not parse server address: Unknown address type” Error and failed to load the web app, related docker container log showing below.

Actually those errors are normal and expected. When I point the torizon/chromium:2 container to https://www.toradex.com I see the following in the container logs:

[1:40:0202/185427.577982:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:40:0202/185427.578156:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:40:0202/185427.839204:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:40:0202/185427.841610:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:75:0202/185428.196567:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[1:75:0202/185428.202356:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[1:75:0202/185428.207517:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[1:40:0202/185439.602769:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:40:0202/185439.602998:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[1:40:0202/185439.603097:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")

Despite these the website itself loads and works fine so I don’t believe these are problematic errors in anyway. That is to say I believe the issue here is probably something else.

I noticed in your original compose file you use wait-for-it to wait for your web app to be available before launching the browser. When using the new container did you give your web app enough time to start, before Chromium tries to access it?

Unfortunately I can’t really reproduce this since normal websites work fine on my setup and I don’t seem to have access to the container image with your web app.

Best Regards,
Jeremias