Unity 8
launcher.py
1 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
2 #
3 # Unity Autopilot Test Suite
4 # Copyright (C) 2012, 2013, 2014, 2015 Canonical
5 #
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #
19 
20 import logging
21 
22 import autopilot.logging
23 import ubuntuuitoolkit
24 
25 import unity8
26 
27 
28 logger = logging.getLogger(__name__)
29 
30 
31 class Launcher(ubuntuuitoolkit.UbuntuUIToolkitCustomProxyObjectBase):
32 
33  """A helper that understands the Launcher."""
34 
35  @autopilot.logging.log_action(logger.debug)
36  def show(self):
37  """Show the launcher swiping it to the right."""
38  if not self.shown:
40  self.shown.wait_for(True)
41  else:
42  logger.debug('The launcher is already opened.')
43 
44  def _swipe_to_show_launcher(self):
45  view = self.get_root_instance().select_single('ShellView')
46  start_y = stop_y = view.y + view.height // 2
47 
48  start_x = view.x + 1
49  stop_x = start_x + self.panelWidth - 1
50 
51  self.pointing_device.drag(start_x, start_y, stop_x, stop_y)
52 
53  @autopilot.logging.log_action(logger.debug)
54  def click_dash_icon(self):
55  if self.shown:
56  dash_icon = self.select_single(
57  'QQuickImage', objectName='dashItem')
58  self.pointing_device.click_object(dash_icon)
59  else:
60  raise unity8.UnityException('The launcher is closed.')
61 
62  @autopilot.logging.log_action(logger.debug)
63  def click_application_launcher_icon(self, application_name):
64  launcher_delegate = self.select_single(
65  'LauncherDelegate', appId=application_name)
66  self.pointing_device.click_object(launcher_delegate)
def _swipe_to_show_launcher(self)
Definition: launcher.py:44