@@ -17,8 +17,8 @@ namespace GreeterCompositor {
1717 private static Pantheon . Desktop . ShellInterface wayland_pantheon_shell_interface;
1818 private static Pantheon . Desktop . PanelInterface wayland_pantheon_panel_interface;
1919 private static Pantheon . Desktop . WidgetInterface wayland_pantheon_widget_interface;
20- private static Pantheon . Desktop . GreeterInterface wayland_pantheon_greeter_interface;
2120 private static Pantheon . Desktop . ExtendedBehaviorInterface wayland_pantheon_extended_behavior_interface;
21+ private static Pantheon . Desktop . GreeterInterface wayland_pantheon_greeter_interface;
2222 private static Wl . Global shell_global;
2323
2424 public void init_pantheon_shell (Meta .Context context ) {
@@ -50,22 +50,22 @@ namespace GreeterCompositor {
5050 destroy_widget_surface,
5151 };
5252
53- wayland_pantheon_greeter_interface = {
54- destroy_greeter_surface,
55- init_greeter,
56- };
57-
5853 wayland_pantheon_extended_behavior_interface = {
5954 destroy_extended_behavior_surface,
6055 set_keep_above,
6156 make_centered,
6257 focus_extended_behavior,
6358 };
6459
60+ wayland_pantheon_greeter_interface = {
61+ destroy_greeter_surface,
62+ make_greeter,
63+ };
64+
6565 PanelSurface . quark = GLib . Quark . from_string (" -gala-wayland-panel-surface-data" );
6666 WidgetSurface . quark = GLib . Quark . from_string (" -gala-wayland-widget-surface-data" );
67- GreeterSurface . quark = GLib . Quark . from_string (" -gala-wayland-greeter-surface-data" );
6867 ExtendedBehaviorSurface . quark = GLib . Quark . from_string (" -gala-wayland-extended-behavior-surface-data" );
68+ GreeterSurface . quark = GLib . Quark . from_string (" -gala-wayland-greeter-surface-data" );
6969
7070 shell_global = Wl . Global . create (wl_disp, ref Pantheon . Desktop . ShellInterface . iface, 1 , (client, version, id) = > {
7171 unowned var resource = client. create_resource (ref Pantheon . Desktop . ShellInterface . iface, (int ) version, id);
@@ -111,15 +111,15 @@ namespace GreeterCompositor {
111111 }
112112 }
113113
114- public class GreeterSurface : GLib .Object {
114+ public class ExtendedBehaviorSurface : GLib .Object {
115115 public static GLib . Quark quark = 0 ;
116116 public unowned GLib . Object ? wayland_surface;
117117
118- public GreeterSurface (GLib .Object wayland_surface ) {
118+ public ExtendedBehaviorSurface (GLib .Object wayland_surface ) {
119119 this . wayland_surface = wayland_surface;
120120 }
121121
122- ~GreeterSurface () {
122+ ~ExtendedBehaviorSurface () {
123123 if (wayland_surface != null ) {
124124 wayland_surface. steal_qdata< unowned GLib . Object > (quark);
125125 }
@@ -130,15 +130,15 @@ namespace GreeterCompositor {
130130 }
131131 }
132132
133- public class ExtendedBehaviorSurface : GLib .Object {
133+ public class GreeterSurface : GLib .Object {
134134 public static GLib . Quark quark = 0 ;
135135 public unowned GLib . Object ? wayland_surface;
136136
137- public ExtendedBehaviorSurface (GLib .Object wayland_surface ) {
137+ public GreeterSurface (GLib .Object wayland_surface ) {
138138 this . wayland_surface = wayland_surface;
139139 }
140140
141- ~ExtendedBehaviorSurface () {
141+ ~GreeterSurface () {
142142 if (wayland_surface != null ) {
143143 wayland_surface. steal_qdata< unowned GLib . Object > (quark);
144144 }
@@ -353,23 +353,6 @@ namespace GreeterCompositor {
353353 BlurManager . get_instance (). remove_blur (window);
354354 }
355355
356- internal static void init_greeter (Wl .Client client , Wl .Resource resource ) {
357- unowned GreeterSurface ? greeter_surface = resource. get_user_data< GreeterSurface > ();
358- if (greeter_surface. wayland_surface == null ) {
359- warning (" Window tried to init greeter but wayland surface is null." );
360- return ;
361- }
362-
363- Meta . Window ? window;
364- greeter_surface. wayland_surface. get (" window" , out window, null );
365- if (window == null ) {
366- warning (" Window tried to init greeter but wayland surface had no associated window." );
367- return ;
368- }
369-
370- ShellClientsManager . get_instance (). init_greeter (window);
371- }
372-
373356 internal static void focus_extended_behavior (Wl .Client client , Wl .Resource resource ) {
374357 unowned ExtendedBehaviorSurface ? extended_behavior_surface = resource. get_user_data< ExtendedBehaviorSurface > ();
375358 if (extended_behavior_surface. wayland_surface == null ) {
@@ -421,6 +404,23 @@ namespace GreeterCompositor {
421404 ShellClientsManager . get_instance (). make_centered (window);
422405 }
423406
407+ internal static void make_greeter (Wl .Client client , Wl .Resource resource ) {
408+ unowned GreeterSurface ? greeter_surface = resource. get_user_data< GreeterSurface > ();
409+ if (greeter_surface. wayland_surface == null ) {
410+ warning (" Window tried to make greeter but wayland surface is null." );
411+ return ;
412+ }
413+
414+ Meta . Window ? window;
415+ greeter_surface. wayland_surface. get (" window" , out window, null );
416+ if (window == null ) {
417+ warning (" Window tried to make greeter but wayland surface had no associated window." );
418+ return ;
419+ }
420+
421+ ShellClientsManager . get_instance (). make_greeter (window);
422+ }
423+
424424 internal static void destroy_panel_surface (Wl .Client client , Wl .Resource resource ) {
425425 resource. destroy ();
426426 }
@@ -429,11 +429,11 @@ namespace GreeterCompositor {
429429 resource. destroy ();
430430 }
431431
432- internal static void destroy_greeter_surface (Wl .Client client , Wl .Resource resource ) {
432+ internal static void destroy_extended_behavior_surface (Wl .Client client , Wl .Resource resource ) {
433433 resource. destroy ();
434434 }
435435
436- internal static void destroy_extended_behavior_surface (Wl .Client client , Wl .Resource resource ) {
436+ internal static void destroy_greeter_surface (Wl .Client client , Wl .Resource resource ) {
437437 resource. destroy ();
438438 }
439439}
0 commit comments