diff options
Diffstat (limited to 'daemon/gdm-simple-slave.c')
-rw-r--r-- | daemon/gdm-simple-slave.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/daemon/gdm-simple-slave.c b/daemon/gdm-simple-slave.c index a0650e36..42f4a1b0 100644 --- a/daemon/gdm-simple-slave.c +++ b/daemon/gdm-simple-slave.c @@ -485,6 +485,16 @@ on_default_language_name_changed (GdmSession *session, } static void +on_default_layout_name_changed (GdmSession *session, + const char *text, + GdmSimpleSlave *slave) +{ + g_debug ("GdmSimpleSlave: Default layout name changed: %s", text); + + gdm_greeter_server_default_layout_name_changed (slave->priv->greeter_server, text); +} + +static void on_default_session_name_changed (GdmSession *session, const char *text, GdmSimpleSlave *slave) @@ -619,6 +629,11 @@ create_new_session (GdmSimpleSlave *slave) slave); g_signal_connect (slave->priv->session, + "default-layout-name-changed", + G_CALLBACK (on_default_layout_name_changed), + slave); + + g_signal_connect (slave->priv->session, "default-session-name-changed", G_CALLBACK (on_default_session_name_changed), slave); @@ -713,6 +728,14 @@ on_greeter_language_selected (GdmGreeterServer *greeter_server, } static void +on_greeter_layout_selected (GdmGreeterServer *greeter_server, + const char *text, + GdmSimpleSlave *slave) +{ + gdm_session_select_layout (GDM_SESSION (slave->priv->session), text); +} + +static void on_greeter_user_selected (GdmGreeterServer *greeter_server, const char *text, GdmSimpleSlave *slave) @@ -847,6 +870,10 @@ run_greeter (GdmSimpleSlave *slave) G_CALLBACK (on_greeter_language_selected), slave); g_signal_connect (slave->priv->greeter_server, + "layout-selected", + G_CALLBACK (on_greeter_layout_selected), + slave); + g_signal_connect (slave->priv->greeter_server, "user-selected", G_CALLBACK (on_greeter_user_selected), slave); |