Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mozilla/geckodriver.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/marionette.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/marionette.rs b/src/marionette.rs
index 86cbeed..2cace6b 100644
--- a/src/marionette.rs
+++ b/src/marionette.rs
@@ -33,8 +33,8 @@ use webdriver::command::WebDriverCommand::{
ElementClick, ElementTap, ElementClear, ElementSendKeys,
ExecuteScript, ExecuteAsyncScript, GetCookies, GetCookie, AddCookie,
DeleteCookies, DeleteCookie, SetTimeouts, DismissAlert,
- AcceptAlert, GetAlertText, SendAlertText, TakeScreenshot, Extension,
- SetWindowPosition, GetWindowPosition};
+ AcceptAlert, GetAlertText, SendAlertText, TakeScreenshot, TakeElementScreenshot,
+ Extension, SetWindowPosition, GetWindowPosition};
use webdriver::command::{
NewSessionParameters, GetParameters, WindowSizeParameters, SwitchToWindowParameters,
SwitchToFrameParameters, LocatorParameters, JavascriptCommandParameters,
@@ -568,7 +568,7 @@ impl MarionetteSession {
IsSelected(_) | GetElementAttribute(_, _) | GetElementProperty(_, _) |
GetCSSValue(_, _) | GetElementText(_) |
GetElementTagName(_) | IsEnabled(_) | ExecuteScript(_) | ExecuteAsyncScript(_) |
- GetAlertText | TakeScreenshot => {
+ GetAlertText | TakeScreenshot | TakeElementScreenshot(_) => {
let value = try_opt!(resp.result.find("value"),
ErrorStatus::UnknownError,
"Failed to find value field");
@@ -934,6 +934,13 @@ impl MarionetteCommand {
data.insert("full".to_string(), Json::Boolean(false));
(Some("takeScreenshot"), Some(Ok(data)))
},
+ TakeElementScreenshot(ref e) => {
+ let mut data = BTreeMap::new();
+ data.insert("id".to_string(), e.id.to_json());
+ data.insert("highlights".to_string(), Json::Array(vec![]));
+ data.insert("full".to_string(), Json::Boolean(false));
+ (Some("takeScreenshot"), Some(Ok(data)))
+ },
Extension(ref extension) => {
match extension {
&GeckoExtensionCommand::GetContext => (Some("getContext"), None),