Browse Source

code formatting. updated submodule ref. tweaked the simple theme, now has a better HTML structure.

sisyphus
Dustin Falgout 9 years ago
parent
commit
72a57d4e9e
  1. 29
      src/lightdm-webkit2-greeter-ext.c
  2. 156
      themes/simple/index.html

29
src/lightdm-webkit2-greeter-ext.c

@ -89,11 +89,6 @@ string_or_null(JSContextRef context, const gchar *str) {
} }
/*
* Makes an Exception.
*
* Convert a const string to an exception which can be passed back to webkit.
*/
static void static void
_mkexception(JSContextRef context, JSValueRef *exception, const gchar *str) { _mkexception(JSContextRef context, JSValueRef *exception, const gchar *str) {
JSValueRef result; JSValueRef result;
@ -108,6 +103,11 @@ _mkexception(JSContextRef context, JSValueRef *exception, const gchar *str) {
} }
/*
* Makes an Exception.
*
* Convert a const string to an exception which can be passed back to webkit.
*/
static JSValueRef static JSValueRef
mkexception(JSContextRef context, JSValueRef *exception, const gchar *str) { mkexception(JSContextRef context, JSValueRef *exception, const gchar *str) {
_mkexception(context, exception, str); _mkexception(context, exception, str);
@ -899,8 +899,8 @@ start_session_sync_cb(JSContextRef context,
/* FIXME: old API required lightdm.login(username, session), but the username /* FIXME: old API required lightdm.login(username, session), but the username
* is never actually used. At some point, deprecate the old usage. For now, * is never actually used. At some point, deprecate the old usage. For now,
* simply work around it. */ * simply work around it.
*/
if (argumentCount == 1) { if (argumentCount == 1) {
session = arg_to_string(context, arguments[0], exception); session = arg_to_string(context, arguments[0], exception);
} else if (argumentCount == 2) { } else if (argumentCount == 2) {
@ -1020,7 +1020,7 @@ ngettext_cb(JSContextRef context,
/* /*
* Gets a key's value from config file. * Gets a key's value from config file.
* *
* Returns config key's value as string. * Returns value as a string.
*/ */
static JSValueRef static JSValueRef
get_conf_str_cb(JSContextRef context, get_conf_str_cb(JSContextRef context,
@ -1067,7 +1067,7 @@ get_conf_str_cb(JSContextRef context,
/* /*
* Gets a key's value from config file. * Gets a key's value from config file.
* *
* Returns config key's value as number. * Returns value as a number.
*/ */
static JSValueRef static JSValueRef
get_conf_num_cb(JSContextRef context, get_conf_num_cb(JSContextRef context,
@ -1110,7 +1110,7 @@ get_conf_num_cb(JSContextRef context,
/* /*
* Gets a key's value from config file. * Gets a key's value from config file.
* *
* Returns config key's value as bool. * Returns value as a bool.
*/ */
static JSValueRef static JSValueRef
get_conf_bool_cb(JSContextRef context, get_conf_bool_cb(JSContextRef context,
@ -1302,15 +1302,6 @@ static const JSClassDefinition config_file_definition = {
config_file_functions, /* Static functions */ config_file_functions, /* Static functions */
}; };
/*static void
web_page_created_callback(WebKitWebExtension *extension, WebKitWebPage *web_page, gpointer user_data) {
#define G_GUINT64_FORMAT "lu"
g_print("Page %" G_GUINT64_FORMAT "created for %s\n",
webkit_web_page_get_id(web_page),
webkit_web_page_get_uri(web_page)
);
}*/
static void static void
window_object_cleared_callback(WebKitScriptWorld *world, window_object_cleared_callback(WebKitScriptWorld *world,

156
themes/simple/index.html

@ -1,63 +1,85 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html> <html>
<head> <head>
<style type="text/css"> <style>
td html, body {
{ width: 100%;
font-size: 24px; height: 100%;
vertical-align: middle; overflow: hidden;
margin: 0;
} }
input body {
{ background: linear-gradient(white, SlateGray);
font-size: 24px; font-size: 24px;
} }
html .container {
{ width: 100%;
height: 100%; height: 100%;
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
flex-direction: column;
} }
body .topBox, .inputBox, .messageBox {
{ width: 100%;
background: linear-gradient(white, SlateGray); height: 33.33%;
text-align: center;
} }
.topBox .inputBox {
{ position: relative;
height: 490px;
} }
.inputBox .wrapper {
{ height: 85px;
width: 100%; position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;
} }
.messageBox .topBox {
{ text-align: right;
font-size: 24px; padding: 15px;
width: 60%; box-sizing: border-box;
margin-left: auto; }
margin-right: auto;
display: block; .messageBox {
text-align: center; text-align: center;
visibility: hidden; visibility: hidden;
} }
</style> </style>
</head>
<script type="text/javascript"> <body>
<div class="container">
<div class="topBox">
<img onclick="javascript:lightdm.shutdown();" src="power_button.png"/>
</div>
<div class="inputBox">
<div class="wrapper">
<div id="prompt"></div>
<form action="javascript: handle_input()">
<input id="entry" />
</form>
</div>
</div>
<div class="messageBox" id="messages"></div>
</div>
<script>
/*********************************************************************/ /*********************************************************************/
/* Callbacks for lightdm-webkit-greeter */ /* Callbacks for lightdm-webkit-greeter */
/*********************************************************************/ /*********************************************************************/
/**
/*
* show_prompt callback. * show_prompt callback.
*/ */
function show_prompt(text, type) {
function show_prompt(text, type)
{
// type is either "text" or "password" // type is either "text" or "password"
prompt = document.getElementById("prompt"); prompt = document.getElementById("prompt");
prompt.innerHTML = text; prompt.innerHTML = text;
@ -67,12 +89,10 @@
entry.focus(); entry.focus();
} }
/* /**
* show_message callback. * show_message callback.
*/ */
function show_message(text, type) {
function show_message(text, type)
{
if (text.length == 0) if (text.length == 0)
return; return;
messages = document.getElementById("messages"); messages = document.getElementById("messages");
@ -85,26 +105,22 @@
messages.innerHTML = messages.innerHTML + text; messages.innerHTML = messages.innerHTML + text;
} }
/* /**
* authentication_complete callback. * authentication_complete callback.
*/ */
function authentication_complete() {
function authentication_complete()
{
if (lightdm.is_authenticated) { if (lightdm.is_authenticated) {
lightdm.start_session_sync (); // Start default session lightdm.start_session_sync(); // Start default session
} else { } else {
show_message ("Authentication Failed", "error"); show_message("Authentication Failed", "error");
setTimeout (start_authentication, 3000); setTimeout(start_authentication, 3000);
} }
} }
/* /**
* autologin_timer_expired callback. * autologin_timer_expired callback.
*/ */
function autologin_timer_expired(username) {
function autologin_timer_expired(username)
{
/* Stub. Does nothing. */ /* Stub. Does nothing. */
} }
@ -112,54 +128,34 @@
/* Functions local to this greeter */ /* Functions local to this greeter */
/*********************************************************************/ /*********************************************************************/
/* /**
* clear_messages * clear_messages
*/ */
function clear_messages() {
function clear_messages()
{
messages = document.getElementById("messages"); messages = document.getElementById("messages");
messages.innerHTML = ""; messages.innerHTML = "";
messages.style.visibility = "hidden"; messages.style.visibility = "hidden";
} }
/* /**
* Kickoff the authentication process * Kickoff the authentication process
*/ */
function start_authentication() {
function start_authentication()
{
clear_messages(); clear_messages();
lightdm.authenticate(); // start with null userid, have pam prompt for userid. lightdm.start_authentication(); // start with null userid, have pam prompt for userid.
} }
/* /**
* handle the input from the entry field. * handle the input from the entry field.
*/ */
function handle_input() {
function handle_input()
{
entry = document.getElementById("entry"); entry = document.getElementById("entry");
lightdm.respond(entry.value); lightdm.respond(entry.value);
} }
</script> </script>
</head> <script src="../antergos/js/mock.js"></script>
<script>
<body>
<img style="float: right;" onclick="javascript:lightdm.shutdown();" src="power_button.png" />
<div class="topBox"></div>
<div class="inputBox">
<table id="input_table" width="100%">
<tr>
<td id="prompt" width="45%" align="right"></td>
<td width="55%"><form action="javascript: handle_input()"><input id="entry"></form></td>
</tr>
</table>
</div>
<div class="messageBox" id="messages"></div>
<script type="text/javascript">
start_authentication(); start_authentication();
</script> </script>
</body> </body>
</html> </html>

Loading…
Cancel
Save