44import io .appium .java_client .android .AndroidDriver ;
55import io .appium .java_client .ios .IOSDriver ;
66import org .openqa .selenium .*;
7+ import org .openqa .selenium .chrome .ChromeDriver ;
8+ import org .openqa .selenium .firefox .FirefoxDriver ;
9+ import org .openqa .selenium .phantomjs .PhantomJSDriver ;
710import org .openqa .selenium .remote .RemoteWebDriver ;
811
912import java .io .File ;
@@ -39,6 +42,18 @@ public WebDriver getDriver() {
3942 return driver ;
4043 }
4144
45+ public boolean isChromeDriver () {
46+ return (driver instanceof ChromeDriver ) || ((RemoteWebDriver ) driver ).getCapabilities ().getBrowserName ().toLowerCase ().equals ("chrome" );
47+ }
48+
49+ public boolean isFirefoxDriver () {
50+ return (driver instanceof FirefoxDriver ) || ((RemoteWebDriver ) driver ).getCapabilities ().getBrowserName ().toLowerCase ().equals ("firefox" );
51+ }
52+
53+ public boolean isPhantomJSDriver () {
54+ return (driver instanceof PhantomJSDriver );
55+ }
56+
4257 public boolean isAppiumAndroidContext () {
4358 return driver instanceof AndroidDriver ;
4459 }
@@ -92,7 +107,7 @@ private String getZoomScript() {
92107 private long retrievePageHeight () {
93108 if (!isAppiumContext ()) {
94109 if (getZoom ().equals ("100%" )) {
95- return (long ) executeScript ("if (window .innerHeight) {return window .innerHeight;} if (document.documentElement && document.documentElement.clientHeight) {return document.documentElement.clientHeight;}if (document.body) {return document.body.clientHeight;}" );
110+ return (long ) executeScript ("if (self .innerHeight) {return self .innerHeight;} if (document.documentElement && document.documentElement.clientHeight) {return document.documentElement.clientHeight;}if (document.body) {return document.body.clientHeight;}" );
96111 } else {
97112 return (long ) executeScript ("return document.getElementsByTagName('body')[0].offsetHeight" );
98113 }
@@ -108,7 +123,7 @@ private long retrievePageHeight() {
108123 private long retrievePageWidth () {
109124 if (!isAppiumContext ()) {
110125 if (getZoom ().equals ("100%" )) {
111- String script = "if (window .innerWidth) {return window .innerWidth;} if (document.documentElement && document.documentElement.clientWidth) {return document.documentElement.clientWidth;}if (document.body) {return document.body.clientWidth;}" ;
126+ String script = "if (self .innerWidth) {return self .innerWidth;} if (document.documentElement && document.documentElement.clientWidth) {return document.documentElement.clientWidth;}if (document.body) {return document.body.clientWidth;}" ;
112127 return (long ) executeScript (script );
113128 } else {
114129 return (long ) executeScript ("return document.getElementsByTagName('body')[0].offsetWidth" );
@@ -117,7 +132,7 @@ private long retrievePageWidth() {
117132 if (isAppiumNativeMobileContext () || isAppiumIOSContext ()) {
118133 return driver .manage ().window ().getSize ().getWidth ();
119134 } else {
120- return (long ) executeScript ("if (self.innerWidth) {return self.outerWidth ;} if (document.documentElement && document.documentElement.clientWidth) {return document.documentElement.clientWidth;}if (document.body) {return document.body.clientWidth;}" );
135+ return (long ) executeScript ("if (self.innerWidth) {return self.innerWidth ;} if (document.documentElement && document.documentElement.clientWidth) {return document.documentElement.clientWidth;}if (document.body) {return document.body.clientWidth;}" );
121136 }
122137 }
123138 }
0 commit comments