@@ -8061,7 +8061,7 @@ def wait_for_element_visible(
8061
8061
original_selector = selector
8062
8062
selector, by = self.__recalculate_selector(selector, by)
8063
8063
if self.__is_shadow_selector(selector):
8064
- return self.__wait_for_shadow_element_visible (selector, timeout)
8064
+ return self.__get_shadow_element (selector, timeout)
8065
8065
return page_actions.wait_for_element_visible(
8066
8066
self.driver,
8067
8067
selector,
@@ -8478,7 +8478,7 @@ def wait_for_element(self, selector, by="css selector", timeout=None):
8478
8478
action = ["wf_el", selector, origin, time_stamp]
8479
8479
self.__extra_actions.append(action)
8480
8480
if self.__is_shadow_selector(selector):
8481
- return self.__wait_for_shadow_element_visible (selector, timeout)
8481
+ return self.__get_shadow_element (selector, timeout)
8482
8482
return page_actions.wait_for_element_visible(
8483
8483
self.driver, selector, by, timeout
8484
8484
)
@@ -12995,7 +12995,10 @@ def __get_shadow_element(
12995
12995
By.CSS_SELECTOR, value=selector_part
12996
12996
)
12997
12997
is_present = True
12998
- if must_be_visible:
12998
+ if (
12999
+ selector_part == selectors[-1]
13000
+ and must_be_visible
13001
+ ):
12999
13002
if not element.is_displayed():
13000
13003
raise Exception(
13001
13004
"Shadow Root element not visible!"
@@ -13010,7 +13013,11 @@ def __get_shadow_element(
13010
13013
By.CSS_SELECTOR, value=selector_part
13011
13014
)
13012
13015
is_present = True
13013
- if must_be_visible and not element.is_displayed():
13016
+ if (
13017
+ selector_part == selectors[-1]
13018
+ and must_be_visible
13019
+ and not element.is_displayed()
13020
+ ):
13014
13021
raise Exception(
13015
13022
"Shadow Root element not visible!"
13016
13023
)
0 commit comments