This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository lightdm-efl-greeter.

View the commit online.

commit 5712d4d383bcbc6573def6fe620652337cc7f750
Author: Swagtoy <m...@ow.swag.toys>
AuthorDate: Mon Jun 30 17:43:31 2025 -0400

    Handle termination and use a cursor
    
    Actually usable now!
---
 src/greeter.c | 31 +++++++++++++++++++++++++++----
 1 file changed, 27 insertions(+), 4 deletions(-)

diff --git a/src/greeter.c b/src/greeter.c
index e550bce..a242865 100644
--- a/src/greeter.c
+++ b/src/greeter.c
@@ -1,11 +1,9 @@
 #include "lightdm/greeter.h"
 #include <Elementary.h>
 #include <Ecore_X.h>
+#include <signal.h>
 #include "Ecore_Common.h"
 #include "Evas.h"
-#include "elm_box_eo.legacy.h"
-#include "elm_entry_eo.legacy.h"
-#include "evas_table_eo.legacy.h"
 #include "gdk/gdk.h"
 #include "gio/gio.h"
 #include "glib.h"
@@ -172,6 +170,15 @@ autologin_timer_expired_cb(LightDMGreeter *ldm, const gchar *text, LightDMPrompt
 	//PAMConversationMessage *message_obj = g_new(PAMConversationMessage, 1);
 }
 
+static void
+sigterm_cb(int catch)
+{
+	gtk_main_quit();
+	//elm_shutdown();
+	elm_exit();
+	exit(EXIT_SUCCESS);
+}
+
 static Evas_Object*
 build_login_prompt(Evas_Object *parent)
 {
@@ -281,11 +288,12 @@ int
 main(int argc, char **argv)
 {
 	Evas_Object *o, *ob;
+	char buf[PATH_MAX];
 	// HACK: No way to set this without setenv
 	setenv("ELM_AUTO_NORENDER_WITHDRAWN", "0", 1);
 	_elm_startup_time = ecore_time_unix_get();
 	elm_init(argc, argv);
-	//elm_app_info_set(elm_main, "lightdm-efl-greeter", "checkme");
+	elm_app_info_set(main, "lightdm-efl-greeter", "checkme");
 	gtk_init(&argc, &argv);
 	greeter = lightdm_greeter_new();
 	g_signal_connect(greeter, LIGHTDM_GREETER_SIGNAL_SHOW_PROMPT, G_CALLBACK(show_prompt_cb), NULL);
@@ -295,10 +303,23 @@ main(int argc, char **argv)
 	if (!lightdm_greeter_connect_to_daemon_sync(greeter, NULL))
 		no_lightdm = true;
 	
+	signal(SIGINT, sigterm_cb);
+	signal(SIGTERM, sigterm_cb);
+	
 	//lightdm_greeter_authenticate(greeter, NULL, NULL);
 	
 	win =
 		E_SHOW(elm_win_util_standard_add("lightdm-efl-greeter-root", "Lightdm"));
+	elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
+	elm_win_autodel_set(win, EINA_TRUE);
+	
+	
+	snprintf(buf, sizeof(buf), "%s/objects/cursors.edj", elm_app_data_dir_get());
+	elm_theme_extension_add(NULL, buf);
+	elm_config_cursor_engine_only_set(EINA_TRUE);
+	elm_object_cursor_set(win, "left_ptr");
+	//elm_object_cursor_style_set(win, "hand1");
+	
 	root = E_SHOW(elm_table_add(win));
 	//elm_box_padding_set(root, 12, 12);
 	//elm_box_homogeneous_set(root, EINA_FALSE);
@@ -349,6 +370,8 @@ main(int argc, char **argv)
 	//ecore_timer_add(0.01, glib_hack, loop);
 	elm_run();
 	
+	sigterm_cb(0);
+	
 	//g_main_loop_quit(loop);
 	elm_shutdown();
 	return EXIT_SUCCESS;

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to