11
11
from typing import List , Union
12
12
13
13
from pynput .keyboard import Controller , Key
14
- from pynput .mouse import Button
15
- from pynput .mouse import Controller as MouseController
14
+ from pynput .mouse import Button , Controller as MouseController
16
15
from pypom import Page
17
16
from selenium .common import NoAlertPresentException
18
17
from selenium .common .exceptions import (
@@ -560,9 +559,7 @@ def triple_click(self, reference: Union[str, tuple, WebElement], labels=[]) -> P
560
559
"""Actions helper: perform triple-click on a given element"""
561
560
return self .multi_click (3 , reference , labels )
562
561
563
- def control_click (
564
- self , reference : Union [str , tuple , WebElement ], labels = []
565
- ) -> Page :
562
+ def control_click (self , reference : Union [str , tuple , WebElement ], labels = []) -> Page :
566
563
"""Actions helper: perform control-click on given element"""
567
564
element = self .fetch (reference , labels )
568
565
if self .sys_platform () == "Darwin" :
@@ -572,7 +569,7 @@ def control_click(
572
569
self .actions .key_down (mod_key ).click (element ).key_up (mod_key ).perform ()
573
570
return self
574
571
575
- def middle_click (self , reference : Union [str , tuple , WebElement ], labels = []):
572
+ def middle_click (self , reference : Union [str , tuple , WebElement ], labels = []):
576
573
"""Perform a middle mouse click on desired element"""
577
574
with self .driver .context (self .driver .CONTEXT_CONTENT ):
578
575
self .driver .maximize_window ()
@@ -587,23 +584,14 @@ def middle_click(self, reference: Union[str, tuple, WebElement], labels=[]):
587
584
outer_height = self .driver .execute_script ("return window.outerHeight;" )
588
585
chrome_height = outer_height - inner_height
589
586
590
- element_x = (
591
- window_position ["x" ]
592
- + element_location ["x" ]
593
- + (element_size ["width" ] / 2 )
594
- )
595
- element_y = (
596
- window_position ["y" ]
597
- + element_location ["y" ]
598
- + (element_size ["height" ] / 2 )
599
- + chrome_height
600
- )
587
+ element_x = window_position ['x' ] + element_location ['x' ] + (element_size ['width' ] / 2 )
588
+ element_y = window_position ['y' ] + element_location ['y' ] + (element_size ['height' ] / 2 ) + chrome_height
601
589
mouse .position = (element_x , element_y )
602
590
603
591
time .sleep (1 )
604
592
mouse .click (Button .middle , 1 )
605
593
return self
606
-
594
+
607
595
def context_click (
608
596
self , reference : Union [str , tuple , WebElement ], labels = []
609
597
) -> Page :
0 commit comments