aboutsummaryrefslogtreecommitdiff
path: root/src/greeter-list.vala
diff options
context:
space:
mode:
authorMihai Moldovan <ionic@ionic.de>2022-12-06 02:49:19 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2023-02-06 08:30:01 +0100
commit32d28d7bf2646fc7a0008937034246fcc96dbc8a (patch)
tree3cb1098e9925ee291b13d285c80f1233751ed1c2 /src/greeter-list.vala
parent600fbb680106b697c1801fcd67aa51477743a30d (diff)
downloadarctica-greeter-32d28d7bf2646fc7a0008937034246fcc96dbc8a.tar.gz
arctica-greeter-32d28d7bf2646fc7a0008937034246fcc96dbc8a.tar.bz2
arctica-greeter-32d28d7bf2646fc7a0008937034246fcc96dbc8a.zip
misc src/: make ArcticaGreeter a proper vala SingleInstance class.
This allows us to drop the rather awkward self-referencing static singleton member and use a standard vala/glib feature.
Diffstat (limited to 'src/greeter-list.vala')
-rw-r--r--src/greeter-list.vala37
1 files changed, 22 insertions, 15 deletions
diff --git a/src/greeter-list.vala b/src/greeter-list.vala
index 0cc3a1f..98c8b48 100644
--- a/src/greeter-list.vala
+++ b/src/greeter-list.vala
@@ -229,7 +229,8 @@ public abstract class GreeterList : FadableBox
public void cancel_authentication ()
{
- ArcticaGreeter.singleton.cancel_authentication ();
+ var greeter = new ArcticaGreeter ();
+ greeter.cancel_authentication ();
entry_selected (selected_entry.id);
}
@@ -483,7 +484,8 @@ public abstract class GreeterList : FadableBox
entry.destroy ();
/* Show a manual login if no users and no remote login entry */
- if (!have_entries () && !ArcticaGreeter.singleton.show_remote_login_hint ())
+ var greeter = new ArcticaGreeter ();
+ if (!have_entries () && !greeter.show_remote_login_hint ())
add_manual_entry ();
queue_draw ();
@@ -793,9 +795,10 @@ public abstract class GreeterList : FadableBox
protected void connect_to_lightdm ()
{
- ArcticaGreeter.singleton.show_message.connect (show_message_cb);
- ArcticaGreeter.singleton.show_prompt.connect (show_prompt_cb);
- ArcticaGreeter.singleton.authentication_complete.connect (authentication_complete_cb);
+ var greeter = new ArcticaGreeter ();
+ greeter.show_message.connect (show_message_cb);
+ greeter.show_prompt.connect (show_prompt_cb);
+ greeter.authentication_complete.connect (authentication_complete_cb);
}
protected void show_message_cb (string text, LightDM.MessageType type)
@@ -809,10 +812,11 @@ public abstract class GreeterList : FadableBox
/* Notify the greeter on what user has been logged */
if (get_selected_id () == "*other" && manual_name == null)
{
- if (ArcticaGreeter.singleton.test_mode)
+ var greeter = new ArcticaGreeter ();
+ if (greeter.test_mode)
manual_name = test_username;
else
- manual_name = ArcticaGreeter.singleton.authentication_user();
+ manual_name = greeter.authentication_user();
}
prompted = true;
@@ -841,10 +845,11 @@ public abstract class GreeterList : FadableBox
return;
bool is_authenticated;
- if (ArcticaGreeter.singleton.test_mode)
+ var greeter = new ArcticaGreeter ();
+ if (greeter.test_mode)
is_authenticated = test_is_authenticated;
else
- is_authenticated = ArcticaGreeter.singleton.is_authenticated();
+ is_authenticated = greeter.is_authenticated();
if (is_authenticated)
{
@@ -852,7 +857,7 @@ public abstract class GreeterList : FadableBox
if (prompted && !unacknowledged_messages)
{
login_complete ();
- if (ArcticaGreeter.singleton.test_mode)
+ if (greeter.test_mode)
start_session ();
else
{
@@ -905,16 +910,17 @@ public abstract class GreeterList : FadableBox
greeter_authenticating_user = get_selected_id ();
- if (ArcticaGreeter.singleton.test_mode)
+ var greeter = new ArcticaGreeter ();
+ if (greeter.test_mode)
test_start_authentication ();
else
{
if (get_selected_id () == "*other")
- ArcticaGreeter.singleton.authenticate ();
+ greeter.authenticate ();
else if (get_selected_id () == "*guest")
- ArcticaGreeter.singleton.authenticate_as_guest ();
+ greeter.authenticate_as_guest ();
else
- ArcticaGreeter.singleton.authenticate (get_selected_id ());
+ greeter.authenticate (get_selected_id ());
}
}
@@ -929,7 +935,8 @@ public abstract class GreeterList : FadableBox
private void start_session ()
{
- if (!ArcticaGreeter.singleton.start_session (get_lightdm_session (), background))
+ var greeter = new ArcticaGreeter ();
+ if (!greeter.start_session (get_lightdm_session (), background))
{
show_message (_("Failed to start session"), true);
start_authentication ();