maykar / kiosk-mode

🙈 Hides the Home Assistant header and/or sidebar
MIT License
417 stars 175 forks source link

kiosk mode no longer working after 2021.6 HA update? #63

Closed milkplus27 closed 3 years ago

milkplus27 commented 3 years ago

Hi there. I've been running kiosk_mode on an iPad Mini 2 pretty flawlessly for about 3 weeks and today it's started to act up. upon loading the HA app, it will display properly with sidebar and header hidden, but once Lovelace refreshes (for whatever reason) both the sidebar and header will reappear and it's necessary to force quit the app and reopen to get kiosk_mode to reinitialise (only for it to break again when lovelace refreshes).

I updated to 2021.6 which I think may be the problem... however, i've also just switched over to a new router but I don't see how that would affect things. Anyone experienced anything similar? I have kiosk_mode set by user, if that makes any difference?

alexives commented 3 years ago

I'm also having this issue, looks like something changed. I'm seeing an error in the console:

Uncaught (in promise) ReferenceError: regeneratorRuntime is not defined
    v /hacsfiles/kiosk-mode/kiosk-mode.js:37
    k /hacsfiles/kiosk-mode/kiosk-mode.js:37
    <anonymous> /hacsfiles/kiosk-mode/kiosk-mode.js:44
alexives commented 3 years ago

I think it might be related to es5 compatibility - https://github.com/home-assistant/frontend/issues/5996

[ALL] ES5 build is broken. RegeneratorRuntime is not set on window in compatibility.js.

alexives commented 3 years ago

It seems to work when I don't restrict it by user

milkplus27 commented 3 years ago

I ended up rolling it HA back to 2021.5.5 because things got progressively worse. Lovelace kept refreshing every 20-30 seconds and was basically unusable on the iPad. Seems to be ok now, guess I'll just wait until someone confirms a fix.

kp-bit commented 3 years ago

Same issue here, takes slightly longer to fail when not restricting to user...

maniscalcojohn commented 3 years ago

Same issue. Occurred after 2021.6 update...

Only using the ?kiosk in the URL. Most of the time I get the opposite of what this is supposed to do—I see the header and the side bar, but everything else is white.

maniscalcojohn commented 3 years ago

I still have the problem in the app, chrome, and safari. Running a first gen ipad air.

lue42 commented 3 years ago

Same issues. iPhone 5, ios 12.5.3 Tried using both these:

kiosk_mode:
  hide_header: true
  hide_sidebar: true

and

kiosk_mode:
  non_admin_settings:
    hide_header: true
    hide_sidebar: true
    ignore_entity_settings: true

Both cases, the screen loads up full scree, but after a period of time (undetermined length) the header appears.

maniscalcojohn commented 3 years ago

I'm guessing it has something to do with ios 13+ since none of these devices can update to ios 13. I have a few CSS settings on my cards that dont work on the ipad either. Of course, this worked fine prior to the 2021.6 update...

gitgc commented 3 years ago

I have the same issue also, can reproduce in Chrome/Firefox/Safari on desktop so don't think its iOS related. Running latest HA as of last night

Uncaught (in promise) ReferenceError: regeneratorRuntime is not defined
    v https://ha/hacsfiles/kiosk-mode/kiosk-mode.js:37
    k https://ha/hacsfiles/kiosk-mode/kiosk-mode.js:37
    <anonymous> https://ha/hacsfiles/kiosk-mode/kiosk-mode.js:44
lue42 commented 3 years ago

I have the same issue also, can reproduce in Chrome/Firefox/Safari on desktop so don't think its iOS related. Running latest HA as of last night

It is not happening on Chrome in Windows - so must be an "apple" thing.

Is anyone having a new issue where the screen is constantly reloading/refreshing?

milkplus27 commented 3 years ago

I have the same issue also, can reproduce in Chrome/Firefox/Safari on desktop so don't think its iOS related. Running latest HA as of last night

It is not happening on Chrome in Windows - so must be an "apple" thing.

Is anyone having a new issue where the screen is constantly reloading/refreshing?

this is what was happening to me on an iPad Mini 2. Have rolled HA back to 2021.5.5 and it's been fine. I read elsewhere that this might have something to do with webview but I really hope this isn't a permanent problem because it would be shame to not be able to ever update HA again without having to replace 5 dashboards around my house

maniscalcojohn commented 3 years ago

I have the same issue also, can reproduce in Chrome/Firefox/Safari on desktop so don't think its iOS related. Running latest HA as of last night

It is not happening on Chrome in Windows - so must be an "apple" thing.

Is anyone having a new issue where the screen is constantly reloading/refreshing?

I'm also only having issues on an older ipad air gen 1 that does not receive updates any more. Chrome on my desktop works fine.

maniscalcojohn commented 3 years ago

FYI, I found a workaround for the header with card-mod. Add this to your theme file and make sure you have card-mod installed

[theme name]:
  card-mod-theme: [theme name]

  card-mod-root: |
    app-header {
      display: none;
    }

UPDATE: nvm...this doesn't work either... :(

SECOND UPDATE: on second thought, it does appear to be holding.

Pulpyyyy commented 3 years ago

Update mine to 1.6.6 and error appears. I was running 2021.6.x + chrome on raspios fine until now.

HeimdallMidgard commented 3 years ago

Same error here. Doesn't work anymore with the latest update.

`Logger: frontend.js.latest.202106030 Source: components/system_log/init.py:190 First occurred: 20:22:13 (11 occurrences) Last logged: 20:29:46

http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js?hacstag=303101606166:49:122 ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js?hacstag=303101606166:49:126 Uncaught ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js:49:122 ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/frontend_latest/core.7ce1f920.js:1:7688 Uncaught Error: Suspend promise not set
milkplus27 commented 3 years ago

FYI, I found a workaround for the header with card-mod. Add this to your theme file and make sure you have card-mod installed

[theme name]:
  card-mod-theme: [theme name]

  card-mod-root: |
    app-header {
      display: none;
    }

UPDATE: nvm...this doesn't work either... :(

SECOND UPDATE: on second thought, it does appear to be holding.

Hey, sorry, do you mind clarifying - you're using card_mod as a replacement for kiosk_mode or in conjunction with it?

maniscalcojohn commented 3 years ago

@milkplus27 yes. Install CardMod and then add those lines above to your theme file. It only hides the headers but you can hide the sidebar in the user settings. Works great! I had to do some reloading and switch between a few themes to get it to stick, but it’s been working perfectly.

maykar commented 3 years ago

Give the latest release a try and be sure to clear the cache of all devices if you're still having issues before reporting back.

bcmitri commented 3 years ago

Issue #65 is still occurring for me after updating to 1.6.7 and clearing my cache.

HeimdallMidgard commented 3 years ago

Same error here. Doesn't work anymore with the latest update.

`Logger: frontend.js.latest.202106030 Source: components/system_log/init.py:190 First occurred: 20:22:13 (11 occurrences) Last logged: 20:29:46

http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js?hacstag=303101606166:49:122 ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js?hacstag=303101606166:49:126 Uncaught ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/hacsfiles/kiosk-mode/kiosk-mode.js:49:122 ReferenceError: regeneratorRuntime is not defined
http://192.168.1.3:8123/frontend_latest/core.7ce1f920.js:1:7688 Uncaught Error: Suspend promise not set

1.6.7 fixed this. Kiosk mode is working fine again.

w1tw0lf commented 3 years ago

1.6.7 fixed it for me as well

lue42 commented 3 years ago

I haven't had luck with it yet. All updated. iPhone 5s using different browsers. Full restart of HA as well. Continuing to troubleshoot

Pulpyyyy commented 3 years ago

With 1.67 error message is gone, but i can't hide taskbar anymore (and dots). Configuration is fine because reverting to 1.65 displays OK. Could it be browser related ? Chromium with pi /Chrome with pc

Thanks anyway

jimmyleet commented 3 years ago

Yeah Kiosk mode no longer hides the top bar, config hasn't changed and I updated via HACS to 1.6.7 but still not working.

maniscalcojohn commented 3 years ago

Ive been having a ton of problems with older iOS 12 devices after updating to 2021.6. Could be related, but can’t seem to get any developer support.

henriklund commented 3 years ago

Reverting to 1.6.5 solves the issue for me. Rolling forward to 1.6.6 or 1.6.7 will cause the header to reappear (despite _hidesidebar / _hideheader / _hideoverflow all are set to true)

MikeGuest commented 3 years ago

I can confirm the same issues on Android tablets and phones. Checking in Chrome on Debian also shows the issue (using privacy mode to allow me to log in as my dashboard account) Rolling back to 1.6.5 restored functionality.

My current config is to disable the headers and sidebar for non-admin users.

milkplus27 commented 3 years ago

ahh, sorry. i didn't mean to close this! hit the wrong button

milkplus27 commented 3 years ago

@milkplus27 yes. Install CardMod and then add those lines above to your theme file. It only hides the headers but you can hide the sidebar in the user settings. Works great! I had to do some reloading and switch between a few themes to get it to stick, but it’s been working perfectly.

sorry, am being a total noob here but I can't seem to get this to work. when you say add those lines to the theme file, you mean if i'm using the synthwave theme, i should add them to the synthwave.yaml file? i tired this but it doesn't seem to hide the header. and technically, this should hide the header for every dashboard that uses this theme, no?

atkjedi commented 3 years ago

I can confirm the same issue, and exist regardless of browser or device, Android, Windows Cromium, or ipad. disabling for non admin

maykar commented 3 years ago

For those still having issues, could you provide the following information:

If kiosk mode is functional on a computer and not a mobile device, it is most likely a caching issue. Look to how to clear your mobile app's cache to confirm.

lue42 commented 3 years ago

It is not working on IOS 12.5.4 on iPhone 5s, but is on my PC Chrome browser. I fully reset cache in Safari on phone. On computer, developer tools shows it is 1.6.7. No errors

My dashboard has this, and doesn't work in this or without non_admin

kiosk_mode:
  non_admin_settings:
    hide_header: true
    hide_sidebar: false
henriklund commented 3 years ago

Visited from Chrom (incognito):


Interestingly enough 1.6.5 shows following error:

kiosk-mode.js?hacstag=303101606165:37 Uncaught (in promise) ReferenceError: regeneratorRuntime is not defined at v (kiosk-mode.js?hacstag=303101606165:37) at k (kiosk-mode.js?hacstag=303101606165:37) at kiosk-mode.js?hacstag=303101606165:44 v @ kiosk-mode.js?hacstag=303101606165:37 k @ kiosk-mode.js?hacstag=303101606165:37 (anonymous) @ kiosk-mode.js?hacstag=303101606165:44 Promise.then (async) (anonymous) @ kiosk-mode.js?hacstag=303101606165:43

atkjedi commented 3 years ago

Running on windows edge (Chromium) as non admin I see version 1.6.7
I don't have any "error" per se but this is showing up

kiosk-mode.js?hacstag=303101606167:20 Lovelace config not found, continuing with default configuration.

this is my config

kiosk_mode:
  non_admin_settings:
    kiosk: true
    hide_header: true
    ignore_entity_settings: true
    hide_sidebar: true
maykar commented 3 years ago

Released 1.6.9 to address these issues, please report back

rlowens commented 3 years ago

1.6.9 working great on my Fully Kiosk Browser Android tablets.

On Wed, Jun 30, 2021, 9:56 AM Ryan Meek @.***> wrote:

Released 1.6.9 to address these issues, please report back

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/maykar/kiosk-mode/issues/63#issuecomment-871525745, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIRZA7L4LJR75OQCCPMPCW3TVM5CBANCNFSM46BPVGQQ .

Pulpyyyy commented 3 years ago

1.6.9 still KO... Chrome/PC image

kiosk_mode:
  admin_settings:
    hide_header: false
    hide_sidebar: false
    hide_overflow: false
  non_admin_settings:
    hide_header: false
    hide_sidebar: true
    hide_overflow: true
henriklund commented 3 years ago

Issue persists in iPad (iOS 14) using the Home Assistant app

maykar commented 3 years ago

@Pulpyyyy Odd, using the same config I have no issues. The error of Lovelace config not found means that either the config doesn't exist or that it wasn't available within 5 seconds. How long does it take for your Lovelace page to load?

@henriklund Did you clear the cache from within the iOS companion app? Also, read above and provide the requested answers to the questions. https://github.com/maykar/kiosk-mode/issues/63#issuecomment-871436561 . Also, which issue are you referring to as this issue has now turned into a thread of about 3 different issues.

Pulpyyyy commented 3 years ago

...within 5 seconds. How long does it take for your Lovelace page to load?

It took more than 5s to load image

maykar commented 3 years ago

That's quite a while to load a page, but I'll increase the time kiosk-mode waits for config.

Edit: Increased to 15 seconds in 1.7.0

henriklund commented 3 years ago

Mine used 1,94s and after 5.5s the last chunk came through

henriklund commented 3 years ago

1.7.0 moved the config warning to the 15s mark, and the Kiosk mode still does not kick in

maykar commented 3 years ago

To avoid confusion I am closing this as I believe the original issue has been solved. If you have remaining issues, please create a new one and provide as much information as you can. Make sure to include answers to the following:

atkjedi commented 3 years ago

hmm, Im still seeing the same issue on multiple devices. version 1.7.0

issue on ipad, fire tablet (fully browser), and edge on windows only message kiosk-mode.js?hacstag=303101606170:20 Lovelace config not found, continuing with default configuration.

thanks for addressing so quickly! will be doing a donation after this for sure.

kiosk_mode:
  non_admin_settings:
    kiosk: true
    hide_header: true
    ignore_entity_settings: true
    hide_sidebar: true
maykar commented 3 years ago

This issue was closed because the majority of the issues here were related to the regeneratorRuntime is not defined error, more errors were reported here because of the generic title of the issue.

If I leave this open then any issue that occurs after the 2021.6 update will end up here. To avoid confusion and to consolidate related information it would be better to create a new issue with the title of Lovelace config not found or something similar.

maykar commented 3 years ago

Posting here so everyone in this thread that was having the config not found issue is aware, seems 1.7.1 has resolved the issue.

milkplus27 commented 3 years ago

just wanted to chime in here to say that the original issue I posted about is still happening with HA updated to core-2021.6.6 and kiosk-mode on 1.7.1. after a brief period, the dashboard on each of my iPad Mini 2's refreshes and the header and sidebar re-appear. could this have something to do with incompatibility with iOS 12 (the latest version that those particular devices support)?

maykar commented 3 years ago

Sorry milk, seems your issue got highjacked as the title was just "not working after...".

This lead to 3-4 issues being discussed in one thread.

I've created a report for your issue here: https://github.com/maykar/kiosk-mode/issues/69