Patched to Drupal 8.4.8 level. See https://www.drupal.org/sa-core-2018-004 and patch...
[yaffs-website] / vendor / jcalderonzumba / gastonjs / src / Browser / BrowserWindowTrait.php
1 <?php
2
3 namespace Zumba\GastonJS\Browser;
4
5 /**
6  * Class BrowserWindowTrait
7  * @package Zumba\GastonJS\Browser
8  */
9 trait BrowserWindowTrait {
10   /**
11    * Returns the current window handle name in the browser
12    * @param string $name
13    * @return mixed
14    */
15   public function windowHandle($name = null) {
16     return $this->command('window_handle', $name);
17   }
18
19   /**
20    * Returns all the window handles present in the browser
21    * @return array
22    */
23   public function windowHandles() {
24     return $this->command('window_handles');
25   }
26
27   /**
28    * Change the browser focus to another window
29    * @param $windowHandleName
30    * @return mixed
31    */
32   public function switchToWindow($windowHandleName) {
33     return $this->command('switch_to_window', $windowHandleName);
34   }
35
36   /**
37    * Opens a new window on the browser
38    * @return mixed
39    */
40   public function openNewWindow() {
41     return $this->command('open_new_window');
42   }
43
44   /**
45    * Closes a window on the browser by a given handler name
46    * @param $windowHandleName
47    * @return mixed
48    */
49   public function closeWindow($windowHandleName) {
50     return $this->command('close_window', $windowHandleName);
51   }
52
53   /**
54    * Gets the current request window name
55    * @return string
56    * @throws \Zumba\GastonJS\Exception\BrowserError
57    * @throws \Exception
58    */
59   public function windowName() {
60     return $this->command('window_name');
61   }
62
63   /**
64    * Zoom factor for a web page
65    * @param $zoomFactor
66    * @return mixed
67    */
68   public function setZoomFactor($zoomFactor) {
69     return $this->command('set_zoom_factor', $zoomFactor);
70   }
71
72   /**
73    * Gets the window size
74    * @param $windowHandleName
75    * @return mixed
76    */
77   public function windowSize($windowHandleName) {
78     return $this->command('window_size', $windowHandleName);
79   }
80
81 }