diff --git a/client/public/images/olympus-4112x4112.png b/client/public/images/olympus-4112x4112.png new file mode 100644 index 00000000..fedbfca1 Binary files /dev/null and b/client/public/images/olympus-4112x4112.png differ diff --git a/client/public/images/olympus-500x500.png b/client/public/images/olympus-500x500.png new file mode 100644 index 00000000..42c1b326 Binary files /dev/null and b/client/public/images/olympus-500x500.png differ diff --git a/client/public/images/splash/splash_pic_ship.png b/client/public/images/splash/splash_pic_ship.png new file mode 100644 index 00000000..1ae92cce Binary files /dev/null and b/client/public/images/splash/splash_pic_ship.png differ diff --git a/client/public/stylesheets/layout.css b/client/public/stylesheets/layout.css index ac998075..0b5c1145 100644 --- a/client/public/stylesheets/layout.css +++ b/client/public/stylesheets/layout.css @@ -349,15 +349,19 @@ dl.data-grid dd { } -.ol-panel.ol-dialog { +.ol-dialog { align-self: center; background-color: var( --background-slate-blue ); + color:white; justify-self: center; - padding:25px; position: absolute; z-index:1000; } +.ol-panel.ol-dialog { + padding:25px; +} + .ol-dialog-close { cursor: pointer; font-size:16px; diff --git a/client/public/stylesheets/olympus.css b/client/public/stylesheets/olympus.css index cdd1cacd..7b76a621 100644 --- a/client/public/stylesheets/olympus.css +++ b/client/public/stylesheets/olympus.css @@ -82,7 +82,7 @@ form > div { .pill { - background-color: var( --background-darksteel ); + background-color: var( --background-dark-steel ); border-radius: var(--border-radius-sm); padding: 4px 8px; width: fit-content; @@ -773,4 +773,76 @@ body[data-hide-naval] #unit-visibility-control-naval { #reaction-to-threat-buttons-container button[title="Abort"].selected::before { background-image: url( "/themes/olympus/images/icons_roe_stop_dark.svg"); +} + + +#splash-screen { + background-image: url( "/images/splash/splash_pic_ship.png" ); + background-position:100% 50%; + background-size:320px; + border-radius: var( --border-radius-lg ); + display:none; + overflow: hidden; + width:700px; +} + +#splash-content { + background-color: var( --background-steel ); + display: flex; + flex-direction: column; + padding:20px; + position:relative; + row-gap:10px; + width:55%; + z-index:10; +} + +#splash-content::after { + background-color: var( --background-steel ); + content: ""; + display: block; + height:250px; + position: absolute; + right:0; + top:0; + transform: rotate(-23deg); + transform-origin: top right; + width:200px; + z-index: -1; +} + +#splash-content #app-summary { + background-image: url( "/images/olympus-500x500.png" ); + background-position: 0 50%; + background-repeat: no-repeat; + background-size:75px 75px; + content: ""; + display:flex; + flex-direction: column; + justify-content: space-between; + min-height: 75px; + text-indent: 85px; +} + +#splash-content #app-summary > * { + height:fit-content; + line-height: 25px; + white-space: nowrap; + width:fit-content; +} + +#splash-content .app-version { + font-size:11px; +} + +#splash-content #legal-stuff h4 { + text-transform:uppercase; +} + +#splash-content #legal-stuff p { + font-size:10px; +} + +.feature-splashScreen #splash-screen { + display:flex; } \ No newline at end of file diff --git a/client/src/FeatureSwitches.ts b/client/src/FeatureSwitches.ts index d0cd6e8d..ed52d8eb 100644 --- a/client/src/FeatureSwitches.ts +++ b/client/src/FeatureSwitches.ts @@ -87,6 +87,13 @@ export class FeatureSwitches { "label": "Force show unit control panel", "masterSwitch": true, "name": "forceShowUnitControlPanel" + }), + + new FeatureSwitch({ + "defaultEnabled": false, + "label": "Show splash screen", + "masterSwitch": true, + "name": "splashScreen" }) ]; diff --git a/client/views/dialogs.ejs b/client/views/dialogs.ejs index 2a193d95..f285d098 100644 --- a/client/views/dialogs.ejs +++ b/client/views/dialogs.ejs @@ -1,4 +1,25 @@ -