luci-theme-bootstrap: fix overlay display failures
authorPaul Dee <systemcrash@users.noreply.github.com>
Thu, 7 Oct 2021 14:26:06 +0000 (16:26 +0200)
committerJo-Philipp Wich <jo@mein.io>
Mon, 25 Oct 2021 18:55:10 +0000 (20:55 +0200)
Fixed overlay display failures for users on mobile, or users who booted
up in safe mode XD. Noticeable when vertical or horizontal real-estate
is too small for the displayed overlay.

This failure is most evident when you "edit" an interface, or display
your unsaved changes.

When content is wider than the screen view, the table hugs the (widest)
content maximally, and the overlay window becomes scrollable.

Disabled -webkit-overflow-scrolling, left, and right, because both FF
and Safari disable them as invalid anyway.

Signed-off-by: Paul Dee <systemcrash@users.noreply.github.com>
[Merge duplicate modal declarations, remove not applicable modal
 flexbox properties]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css

index 4780eb892bdbc2c6ae85dddac9f0330077016f74..6c80d461242d3088925067b2ac18c304c40cab84 100644 (file)
@@ -1161,12 +1161,9 @@ footer {
        position: fixed;
        top: 0;
        bottom: 0;
-       left: -10000px;
-       right: 10000px;
        background: rgba(0, 0, 0, 0.7);
        z-index: 900;
-       overflow-y: scroll;
-       -webkit-overflow-scrolling: touch;
+       overflow: scroll;
        transition: opacity .125s ease-in;
        opacity: 0;
        visibility: hidden;
@@ -1175,11 +1172,9 @@ footer {
 .modal {
        width: 90%;
        margin: 5em auto;
-       display: flex;
-       flex-wrap: wrap;
+       display: table;
        min-height: 32px;
        max-width: 600px;
-       align-items: center;
        border-radius: 3px;
        background: var(--background-color-high);
        box-shadow: 0 0 3px #444;
@@ -1188,7 +1183,6 @@ footer {
 }
 
 .modal > * {
-       flex-basis: 100%;
        line-height: normal;
        margin-bottom: .5em;
        max-width: 100%;
@@ -2211,58 +2205,6 @@ div.cbi-value var.cbi-tooltip-container,
        flex-basis: 100%;
 }
 
-#modal_overlay {
-       position: fixed;
-       top: 0;
-       bottom: 0;
-       left: -10000px;
-       right: 10000px;
-       background: rgba(0, 0, 0, 0.7);
-       z-index: 900;
-       overflow-y: scroll;
-       -webkit-overflow-scrolling: touch;
-       transition: opacity .125s ease-in;
-       opacity: 0;
-}
-
-#modal_overlay > .modal {
-       width: 90%;
-       margin: 5em auto;
-       display: flex;
-       flex-wrap: wrap;
-       min-height: 32px;
-       max-width: 600px;
-       align-items: center;
-       border-radius: 3px;
-       background: var(--background-color-high);
-       box-shadow: 0 0 3px #444;
-       padding: 1em 1em .5em 1em;
-       min-width: 270px;
-}
-
-#modal_overlay .modal > * {
-       flex-basis: 100%;
-       line-height: normal;
-       margin-bottom: .5em;
-}
-
-#modal_overlay .modal > pre,
-#modal_overlay .modal > textarea {
-       white-space: pre-wrap;
-       overflow: auto;
-}
-
-body.modal-overlay-active {
-       overflow: hidden;
-       height: 100vh;
-}
-
-body.modal-overlay-active #modal_overlay {
-       left: 0;
-       right: 0;
-       opacity: 1;
-}
-
 html body.apply-overlay-active {
        height: calc(100vh - 63px);
 }