#331 Add the I3 test suite
Opened 2 months ago by lruzicka. Modified 12 hours ago

file modified
+2 -1
@@ -4,6 +4,7 @@ 

  

  use base 'distribution';

  use Cwd;

+ use i3;

  

  # Fedora distribution class

  
@@ -63,7 +64,7 @@ 

  # If this should change in the future, we would need to enhance this routine.

  sub x11_start_program {

      my ($self, $program, $timeout, $options) = @_;

-     send_key "alt-f2";

+     send_key(get_var("DESKTOP") eq "i3" ? "alt-d" : "alt-f2");

      assert_screen "desktop_runner";

      type_string $program, 20;

      sleep 5;    # because of KDE dialog - SUSE guys are doing the same!

file added
+24
@@ -0,0 +1,24 @@ 

+ package i3;

+ 

+ use strict;

+ 

+ use base 'Exporter';

+ use Exporter;

+ 

+ use testapi;

+ use utils;

+ 

+ our @EXPORT = qw/create_user_i3_config/;

+ 

+ sub create_user_i3_config {

+     my %args = @_;

+     my $login = $args{login};

+ 

+     assert_script_run("mkdir -p /home/$login/.config/i3/");

+     # ensure that no alias of cp prevents an existing config from being overwritten

+     assert_script_run("/usr/bin/cp -f /etc/i3/config /home/$login/.config/i3/config");

+     assert_script_run("sed -i '/i3-config-wizard/d' /home/$login/.config/i3/config");

+     assert_script_run "chown -R $login:$login /home/$login/.config";

+     assert_script_run "restorecon -vr /home/$login/.config";

+ }

+ 

file modified
+31 -13
@@ -4,6 +4,7 @@ 

  

  use base 'Exporter';

  use Exporter;

+ use i3;

  

  use lockapi;

  use testapi qw(is_serial_terminal :DEFAULT);
@@ -813,12 +814,23 @@ 

  sub handle_welcome_screen {

      # handle the 'welcome' screen on GNOME and KDE since F38. shared

      # in a few places

-     if (check_screen "getting_started", 45) {

+     my %args = @_;

+     my $timeout = $args{timeout} || 45;

+     if (check_screen "getting_started", $timeout) {

          if (get_var("DESKTOP") eq "kde") {

              # just closing it seems to result in it running again on

              # next boot, so let's click Skip

              click_lastmatch;

          }

+         elsif (get_var("DESKTOP") eq "i3") {

+             # Press enter to start config, then move one line down

+             # and press enter once more to confirm.

+             send_key("ret");

+             sleep(1);

+             send_key("down");

+             sleep(1);

+             send_key("ret");

+         }

          else {

              send_key "alt-f4";

              # for GNOME 40, alt-f4 doesn't work
@@ -1108,6 +1120,7 @@ 

              last;

          }

      }

+ 

      if ($activematched) {

          # make sure we got to inactive after active

          die "never reached apps_menu_button_inactive!" unless (match_has_tag "apps_menu_button_inactive");
@@ -1372,18 +1385,23 @@ 

      my $app = shift;

      # To overcome BZ2097208, let's move the mouse out of the way

      # and give the launcher some time to take the correct focus.

-     if (get_var("DESKTOP") eq "kde") {

-         diag("Moving the mouse away from the launcher.");

-         mouse_set(1, 1);

+     if (get_var("DESKTOP") eq "i3") {

+         send_key("alt-d");

+     }

+     else {

+         if (get_var("DESKTOP") eq "kde") {

+             diag("Moving the mouse away from the launcher.");

+             mouse_set(1, 1);

+         }

+         wait_screen_change { send_key 'super'; };

+         # srsly KDE y u so slo

+         wait_still_screen 3;

+         type_very_safely $app;

+         # Wait for KDE to place focus correctly.

+         wait_still_screen 2;

+         send_key 'ret';

+         wait_still_screen 3;

      }

-     wait_screen_change { send_key 'super'; };

-     # srsly KDE y u so slo

-     wait_still_screen 3;

-     type_very_safely $app;

-     # Wait for KDE to place focus correctly.

-     wait_still_screen 2;

-     send_key 'ret';

-     wait_still_screen 3;

  }

  

  sub tell_source {
@@ -1639,7 +1657,7 @@ 

      }

      elsif ($desktop eq "gnome") {

          # Start the terminal to set up backgrounds.

-         menu_launch_type "terminal";

+         menu_launch_type("terminal");

          # wait to be sure it's fully open

          wait_still_screen(stilltime => 5, similarity_level => 38);

          # When the application opens, run command in it to set the background to black

@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "width": 30,

+       "height": 18,

+       "ypos": 508,

+       "xpos": 475,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "firefox_addon_add"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "width": 30,

+       "type": "match",

+       "xpos": 483,

+       "ypos": 511,

+       "height": 18

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "firefox_addon_add"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "xpos": 520,

+       "type": "match",

+       "width": 62,

+       "height": 17,

+       "ypos": 508

+     },

+     {

+       "width": 20,

+       "ypos": 73,

+       "height": 19,

+       "type": "match",

+       "xpos": 951

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "firefox_addon_success"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "ypos": 511,

+       "xpos": 528,

+       "height": 17,

+       "type": "match",

+       "width": 62

+     },

+     {

+       "width": 20,

+       "type": "match",

+       "xpos": 951,

+       "ypos": 75,

+       "height": 19

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "firefox_addon_success"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "xpos": 555,

+       "ypos": 24,

+       "width": 38,

+       "height": 17,

+       "type": "match"

+     },

+     {

+       "xpos": 513,

+       "ypos": 3,

+       "width": 64,

+       "height": 13,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "apps_run_blivetgui"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "xpos": 762,

+       "ypos": 4,

+       "width": 51,

+       "height": 12,

+       "type": "match"

+     },

+     {

+       "xpos": 870,

+       "ypos": 23,

+       "width": 67,

+       "height": 20,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "apps_run_mousepad"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "ypos": 3,

+       "xpos": 2,

+       "height": 13,

+       "type": "match",

+       "width": 112

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "apps_run_terminal"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "width": 52,

+       "ypos": 3,

+       "xpos": 2,

+       "height": 14

+     },

+     {

+       "xpos": 128,

+       "ypos": 26,

+       "width": 57,

+       "height": 15,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "apps_run_terminal"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,29 @@ 

+ {

+   "area": [

+     {

+       "xpos": 493,

+       "ypos": 300,

+       "width": 143,

+       "height": 17,

+       "type": "match"

+     },

+     {

+       "width": 201,

+       "type": "match",

+       "height": 16,

+       "xpos": 514,

+       "ypos": 401

+     },

+     {

+       "xpos": 519,

+       "ypos": 434,

+       "height": 14,

+       "width": 214,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "getting_started"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,29 @@ 

+ {

+   "area": [

+     {

+       "xpos": 492,

+       "ypos": 283,

+       "width": 142,

+       "height": 13,

+       "type": "match"

+     },

+     {

+       "xpos": 514,

+       "ypos": 364,

+       "width": 201,

+       "height": 16,

+       "type": "match"

+     },

+     {

+       "xpos": 519,

+       "ypos": 391,

+       "width": 214,

+       "height": 14,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "getting_started"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,31 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "width": 16,

+       "height": 17,

+       "ypos": 748,

+       "xpos": 2

+     },

+     {

+       "height": 14,

+       "ypos": 751,

+       "xpos": 408,

+       "type": "match",

+       "width": 15

+     },

+     {

+       "height": 14,

+       "xpos": 460,

+       "ypos": 750,

+       "width": 18,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3-bar",

+     "apps_menu_button",

+     "apps_menu_button_inactive"

+   ]

+ }

empty or binary file added
@@ -0,0 +1,31 @@ 

+ {

+   "area": [

+     {

+       "xpos": 0,

+       "type": "match",

+       "width": 16,

+       "ypos": 751,

+       "height": 17

+     },

+     {

+       "height": 14,

+       "width": 15,

+       "ypos": 752,

+       "type": "match",

+       "xpos": 434

+     },

+     {

+       "type": "match",

+       "xpos": 486,

+       "height": 14,

+       "width": 18,

+       "ypos": 751

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3-bar",

+     "apps_menu_button",

+     "apps_menu_button_inactive"

+   ]

+ }

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "xpos": 343,

+       "ypos": 3,

+       "width": 62,

+       "height": 15,

+       "type": "match"

+     },

+     {

+       "xpos": 7,

+       "ypos": 716,

+       "width": 123,

+       "height": 23,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "blivet_gui_application"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,29 @@ 

+ {

+   "area": [

+     {

+       "ypos": 0,

+       "xpos": 1,

+       "height": 17,

+       "type": "match",

+       "width": 44

+     },

+     {

+       "ypos": 2,

+       "xpos": 998,

+       "height": 18,

+       "type": "match",

+       "width": 25

+     },

+     {

+       "xpos": 370,

+       "ypos": 5,

+       "width": 24,

+       "height": 15,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "desktop_runner"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "xpos": 0,

+       "ypos": 0,

+       "width": 44,

+       "height": 17,

+       "type": "match"

+     },

+     {

+       "xpos": 999,

+       "ypos": 0,

+       "width": 25,

+       "height": 18,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "desktop_runner"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,25 @@ 

+ {

+   "area": [

+     {

+       "height": 41,

+       "ypos": 369,

+       "xpos": 460,

+       "type": "match",

+       "width": 130

+     },

+     {

+       "xpos": 599,

+       "ypos": 425,

+       "height": 24,

+       "width": 53,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_screen",

+     "graphical_login_input",

+     "graphical_login",

+     "lightdm_login_screen"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,25 @@ 

+ {

+   "area": [

+     {

+       "ypos": 369,

+       "width": 130,

+       "height": 41,

+       "type": "match",

+       "xpos": 460

+     },

+     {

+       "type": "match",

+       "height": 24,

+       "xpos": 599,

+       "width": 53,

+       "ypos": 424

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_screen",

+     "graphical_login_input",

+     "graphical_login",

+     "lightdm_login_screen"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,25 @@ 

+ {

+   "area": [

+     {

+       "xpos": 460,

+       "ypos": 369,

+       "width": 130,

+       "height": 41,

+       "type": "match"

+     },

+     {

+       "xpos": 599,

+       "ypos": 424,

+       "width": 53,

+       "height": 24,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_screen",

+     "graphical_login_input",

+     "graphical_login",

+     "lightdm_login_screen"

+   ]

+ }

empty or binary file added
@@ -0,0 +1,26 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "width": 180,

+       "height": 17,

+       "ypos": 7,

+       "xpos": 4

+     },

+     {

+       "click_point": {

+         "ypos": 7.5,

+         "xpos": 36.5

+       },

+       "type": "match",

+       "ypos": 9,

+       "width": 73,

+       "xpos": 891,

+       "height": 15

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3-logout-bar"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,26 @@ 

+ {

+   "area": [

+     {

+       "xpos": 4,

+       "ypos": 5,

+       "width": 180,

+       "height": 17,

+       "type": "match"

+     },

+     {

+       "xpos": 891,

+       "ypos": 7,

+       "width": 73,

+       "height": 15,

+       "type": "match",

+       "click_point": {

+         "xpos": 36.5,

+         "ypos": 7.5

+       }

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3-logout-bar"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,19 @@ 

+ {

+   "area": [

+     {

+       "ypos": 623,

+       "click_point": {

+         "xpos": 28,

+         "ypos": 10.5

+       },

+       "type": "match",

+       "xpos": 738,

+       "height": 21,

+       "width": 56

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "printing_print"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,19 @@ 

+ {

+   "area": [

+     {

+       "xpos": 763,

+       "ypos": 601,

+       "width": 56,

+       "height": 21,

+       "type": "match",

+       "click_point": {

+         "xpos": 28,

+         "ypos": 10.5

+       }

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "printing_print"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "height": 18,

+       "type": "match",

+       "xpos": 116,

+       "ypos": 18,

+       "width": 328

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "printing_check_sentence"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,23 @@ 

+ {

+   "area": [

+     {

+       "height": 14,

+       "type": "match",

+       "ypos": 2,

+       "width": 38,

+       "xpos": 2

+     },

+     {

+       "type": "match",

+       "ypos": 33,

+       "xpos": 163,

+       "width": 37,

+       "height": 13

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "apps_run_terminal",

+     "i3_dunst_no_notification"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "height": 19,

+       "xpos": 713,

+       "ypos": 60,

+       "width": 285,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_dunst_foo_notification"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 720,

+       "type": "match",

+       "ypos": 58,

+       "width": 74,

+       "height": 35

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_dunst_foo_notification"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "height": 19,

+       "ypos": 29,

+       "width": 285,

+       "type": "match",

+       "xpos": 702

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_dunst_foo_notification"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,29 @@ 

+ {

+   "area": [

+     {

+       "ypos": 2,

+       "xpos": 0,

+       "height": 16,

+       "type": "match",

+       "width": 679

+     },

+     {

+       "type": "match",

+       "width": 373,

+       "height": 128,

+       "ypos": 396,

+       "xpos": 328

+     },

+     {

+       "xpos": 497,

+       "ypos": 42,

+       "height": 23,

+       "width": 132,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_split"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,22 @@ 

+ {

+   "area": [

+     {

+       "ypos": 0,

+       "height": 47,

+       "width": 100,

+       "xpos": 630,

+       "type": "match"

+     },

+     {

+       "xpos": 309,

+       "ypos": 2,

+       "width": 69,

+       "height": 40,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_split"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,29 @@ 

+ {

+   "area": [

+     {

+       "width": 679,

+       "height": 16,

+       "ypos": 0,

+       "type": "match",

+       "xpos": 0

+     },

+     {

+       "ypos": 535,

+       "height": 128,

+       "width": 373,

+       "type": "match",

+       "xpos": 328

+     },

+     {

+       "xpos": 728,

+       "ypos": 7,

+       "width": 132,

+       "height": 23,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_split"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "height": 55,

+       "ypos": 2,

+       "xpos": 0,

+       "type": "match",

+       "width": 117

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_stacked"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "ypos": 2,

+       "width": 117,

+       "height": 55,

+       "xpos": 0,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_stacked"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 0,

+       "ypos": 0,

+       "width": 133,

+       "height": 52,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_stacked"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "height": 18,

+       "xpos": 0,

+       "ypos": 2,

+       "width": 824,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_tabbed"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "xpos": 460,

+       "height": 46,

+       "width": 112,

+       "ypos": 0

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_tabbed"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 0,

+       "ypos": 0,

+       "width": 824,

+       "height": 18,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "i3_windows_tabbed"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,19 @@ 

+ {

+   "area": [

+     {

+       "xpos": 467,

+       "type": "match",

+       "ypos": 258,

+       "width": 89,

+       "height": 26,

+       "click_point": {

+         "xpos": 44.5,

+         "ypos": 13

+       }

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_jack"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,19 @@ 

+ {

+   "area": [

+     {

+       "xpos": 467,

+       "ypos": 347,

+       "width": 66,

+       "height": 23,

+       "type": "match",

+       "click_point": {

+         "xpos": 33,

+         "ypos": 11.5

+       }

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_jim"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 360,

+       "ypos": 407,

+       "width": 293,

+       "height": 22,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_wrong_password"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,33 @@ 

+ {

+   "area": [

+     {

+       "xpos": 966,

+       "height": 19,

+       "width": 54,

+       "ypos": 4,

+       "type": "match",

+       "click_point": {

+         "ypos": 9.5,

+         "xpos": 42

+       }

+     },

+     {

+       "width": 89,

+       "type": "match",

+       "xpos": 358,

+       "ypos": 321,

+       "height": 91

+     },

+     {

+       "width": 56,

+       "type": "match",

+       "xpos": 597,

+       "ypos": 424,

+       "height": 25

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,40 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "width": 76,

+       "height": 85,

+       "ypos": 322,

+       "xpos": 366

+     },

+     {

+       "height": 21,

+       "ypos": 426,

+       "xpos": 599,

+       "type": "match",

+       "width": 54

+     },

+     {

+       "height": 21,

+       "xpos": 861,

+       "width": 82,

+       "ypos": 85,

+       "type": "match",

+       "click_point": {

+         "xpos": 41,

+         "ypos": 10.5

+       }

+     },

+     {

+       "width": 59,

+       "type": "match",

+       "xpos": 965,

+       "ypos": 1,

+       "height": 25

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu-reboot"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 663,

+       "ypos": 428,

+       "width": 51,

+       "height": 21,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu-reboot-confirm"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,40 @@ 

+ {

+   "area": [

+     {

+       "xpos": 366,

+       "ypos": 324,

+       "width": 76,

+       "height": 85,

+       "type": "match"

+     },

+     {

+       "xpos": 599,

+       "ypos": 425,

+       "width": 54,

+       "height": 21,

+       "type": "match"

+     },

+     {

+       "xpos": 855,

+       "ypos": 77,

+       "width": 82,

+       "height": 21,

+       "type": "match",

+       "click_point": {

+         "xpos": 41,

+         "ypos": 10.5

+       }

+     },

+     {

+       "xpos": 965,

+       "ypos": 0,

+       "width": 59,

+       "height": 25,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu-reboot"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 659,

+       "ypos": 428,

+       "width": 65,

+       "height": 20,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu-shutdown-confirm"

+   ]

+ } 

\ No newline at end of file

@@ -0,0 +1,33 @@ 

+ {

+   "area": [

+     {

+       "xpos": 333,

+       "ypos": 311,

+       "width": 76,

+       "height": 27,

+       "type": "match"

+     },

+     {

+       "xpos": 263,

+       "ypos": 309,

+       "width": 63,

+       "height": 64,

+       "type": "match"

+     },

+     {

+       "xpos": 675,

+       "ypos": 429,

+       "width": 70,

+       "height": 17,

+       "type": "match",

+       "click_point": {

+         "xpos": 35,

+         "ypos": 8.5

+       }

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu-shutdown-confirm"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,33 @@ 

+ {

+   "area": [

+     {

+       "xpos": 966,

+       "ypos": 3,

+       "width": 54,

+       "height": 19,

+       "type": "match",

+       "click_point": {

+         "xpos": 42,

+         "ypos": 9.5

+       }

+     },

+     {

+       "xpos": 358,

+       "ypos": 323,

+       "width": 89,

+       "height": 91,

+       "type": "match"

+     },

+     {

+       "xpos": 597,

+       "ypos": 423,

+       "width": 56,

+       "height": 25,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_power_menu"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,33 @@ 

+ {

+   "area": [

+     {

+       "type": "match",

+       "width": 51,

+       "ypos": 426,

+       "xpos": 600,

+       "height": 21

+     },

+     {

+       "width": 43,

+       "xpos": 624,

+       "height": 47,

+       "type": "match",

+       "click_point": {

+         "ypos": 23.5,

+         "xpos": 21.5

+       },

+       "ypos": 320

+     },

+     {

+       "height": 90,

+       "ypos": 321,

+       "xpos": 364,

+       "type": "match",

+       "width": 81

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_user_selection"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,33 @@ 

+ {

+   "area": [

+     {

+       "xpos": 600,

+       "ypos": 442,

+       "width": 51,

+       "height": 21,

+       "type": "match"

+     },

+     {

+       "xpos": 624,

+       "ypos": 303,

+       "width": 43,

+       "height": 47,

+       "type": "match",

+       "click_point": {

+         "xpos": 21.5,

+         "ypos": 23.5

+       }

+     },

+     {

+       "xpos": 364,

+       "ypos": 306,

+       "width": 81,

+       "height": 90,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "lightdm_user_selection"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {

+       "xpos": 465,

+       "ypos": 273,

+       "width": 87,

+       "height": 23,

+       "type": "match"

+     }

+   ],

+   "properties": [],

+   "tags": [

+     "login_jack"

+   ]

+ } 

\ No newline at end of file

empty or binary file added
@@ -0,0 +1,15 @@ 

+ {

+   "area": [

+     {