From a8d9d4f256395cdc292f0b9b5b31ab60266c4cce Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Sat, 4 Dec 2010 18:33:10 -0800 Subject: [PATCH] Added login screen (simulated for now) and improved styling --- guacamole/web-client/web/guacamole.css | 64 +++ .../web-client/web/images/login-logo.png | Bin 0 -> 26346 bytes guacamole/web-client/web/index.html | 386 ++++++++++-------- 3 files changed, 285 insertions(+), 165 deletions(-) create mode 100644 guacamole/web-client/web/images/login-logo.png diff --git a/guacamole/web-client/web/guacamole.css b/guacamole/web-client/web/guacamole.css index 7107ea89f..bd0e7c80f 100644 --- a/guacamole/web-client/web/guacamole.css +++ b/guacamole/web-client/web/guacamole.css @@ -20,6 +20,70 @@ body { background: black; font-family: sans-serif; + padding: 0; + margin: 0; +} + +div#login-ui { + background: #342; + height: 100%; + width: 100%; + position: fixed; + left: 0; + top: 0; + display: table; +} + +div#login-logo { + position: relative; + bottom: 0; + display: inline-block; + vertical-align: middle; +} + +div#login-dialog-middle { + width: 100%; + display: table-cell; + vertical-align: middle; + text-align: center; +} + +div#login-dialog { + + background: white; + vertical-align: middle; + + padding: 1em; + border: 0.2em solid black; + + -khtml-border-radius: 0.5em; + -webkit-border-radius: 0.5em; + -moz-border-radius: 0.5em; + border-radius: 0.5em; + + max-width: 75%; + text-align: left; + + display: inline-block; +} + +div#login-dialog h1 { + margin-top: 0; + margin-bottom: 0em; + text-align: center; + border-bottom: 1px solid silver; + padding-bottom: 0.5em; +} + +div#login-dialog #buttons { + border-top: 1px solid silver; + padding-top: 0.5em; + text-align: center; +} + +div#login-dialog #login-fields { + margin-top: 0.5em; + margin-bottom: 0.5em; } div.errorDialogOuter { diff --git a/guacamole/web-client/web/images/login-logo.png b/guacamole/web-client/web/images/login-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d20a2e7309f95013e8009506d01a228dd5153835 GIT binary patch literal 26346 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 - -