Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] iOS no save space #158

Open
adrian-goe opened this issue Jun 28, 2024 · 3 comments
Open

[Bug] iOS no save space #158

adrian-goe opened this issue Jun 28, 2024 · 3 comments

Comments

@adrian-goe
Copy link

On iOS, you are able to save the page on the home screen. The site then acts like a normal app and dose not have the normal browser ui stuff.

This means on an iPhone 14 pro for example, the save space with the notch is not respected. Unfortunatly, you cant see this really on the screenshot, but you can see the time and status stuff.

There is an fairly easy css trick
https://developer.mozilla.org/en-US/docs/Web/CSS/env

:root {
    --safe-top: env(safe-area-inset-top);
    --safe-right: env(safe-area-inset-right);
    --safe-bottom: env(safe-area-inset-bottom);
    --safe-left: env(safe-area-inset-left);
}

body {
    padding: var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);
    margin: 0;
    box-sizing: border-box;
}

IMG_3083

@adrian-goe adrian-goe changed the title iOS no save space [Bug] iOS no save space Jun 28, 2024
@svilenmarkov
Copy link
Member

Hey, thanks for reporting this!

That's quite odd because there is some CSS in place that should account for the safe area at the top and bottom. I'm wondering if it's not working because of the display-mode: standalone requirement. I don't have an iPhone so I can't really play around and see what works and what doesn't.

On iOS, you are able to save the page on the home screen.

Do you know whether this turns it into a PWA or just a shortcut to the page without the browser UI?

@adrian-goe
Copy link
Author

hi @svilenmarkov

Do you know whether this turns it into a PWA or just a shortcut to the page without the browser UI?

I don't know how to check if its saved as PWA or just a Website. As there is an manifest.json I would assume, it is correctly saved as a PWA.

I started the code from you locally in dev mode ans saved this on my phone aswell. It looked better, but scrolling wise, the text still moves behind the time. But the initial view is correct. I did not change anything on my deployed instance.

Let me know, if I can help further or test some things.

@svilenmarkov
Copy link
Member

Hey @adrian-goe, could you please try adding this custom CSS using the custom-css-file property:

@media (display-mode: standalone) {
    .widget-header {
        color: var(--color-negative);
    }
}

body::before {
    content: '';
    height: env(safe-area-inset-top);
    display: block;
    background-color: var(--color-primary);
}

@media (max-width: 1190px) and (display-mode: standalone) {
    .widget::after {
      content: '';
      height: var(--safe-area-inset-bottom);
      display: block;
      background: var(--color-negative);
    }
}

If display-mode: standalone works then the widget titles should be red.

If env(safe-area-inset-top) works then the top of the page (or your status bar) should have a yellow background.

If the previous two as well as env with a default value work then there should be a red block at the bottom of every widget.

You can remove the CSS after that. This should give me some idea about what might not be working. If all 3 of the above work then I'll have to think of something else.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants