Skip to content

Commit f497508

Browse files
committed
Merge branch 'WD_1.X_dev' of https://portal-ua.globallogic.com/git/wd into WD_1.X_dev
2 parents 5b79a84 + f46b89b commit f497508

23 files changed

+1495
-163
lines changed

do_if_modified.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
print ' do_if_modified <bin_file> <input_file> <output_file>'
88
exit()
99

10-
action_process = sys.argv[1]
11-
input_file = sys.argv[2]
12-
output_file = sys.argv[3]
10+
action_process = os.path.abspath(sys.argv[1])
11+
input_file = os.path.abspath(sys.argv[2])
12+
output_file = os.path.abspath(sys.argv[3])
1313

1414
need_update = True
1515

generate_wdversion.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
versionfile = open (filename, 'w')
99
versionfile.write("namespace webdriver {\n")
1010
versionfile.write("extern const char kProductName[] = \"WebDriver-cisco-cmt\";\n")
11-
versionfile.write("extern const char kVersionNumber[] = \"1.1.0\";\n")
11+
versionfile.write("extern const char kVersionNumber[] = \"1.2.0\";\n")
1212
versionfile.write("extern const char kBuildTime[] = __TIME__;\n")
1313
versionfile.write("extern const char kBuildDate[] = __DATE__;\n")
1414
versionfile.write("extern const char kLastChanges[] = \"" + data.strip() + "\";\n")
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#ifndef WEBDRIVER_GRAPHICS_WEB_VIEW_ENUMERATOR_H_
2+
#define WEBDRIVER_GRAPHICS_WEB_VIEW_ENUMERATOR_H_
3+
4+
#include <string>
5+
#include <vector>
6+
#include <set>
7+
8+
#include "webdriver_view_enumerator.h"
9+
10+
namespace webdriver {
11+
12+
/// class for QDeclarativeWebView enumerator
13+
class GraphicsWebViewEnumeratorImpl : public AbstractViewEnumeratorImpl {
14+
public:
15+
virtual void EnumerateViews(Session* session, std::set<ViewId>* views) const;
16+
};
17+
18+
} // namespace webdriver
19+
20+
#endif // WEBDRIVER_GRAPHICS_WEB_VIEW_ENUMERATOR_H_
Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
#ifndef WEBDRIVER_GRAPHICS_WEB_VIEW_EXECUTOR_H
2+
#define WEBDRIVER_GRAPHICS_WEB_VIEW_EXECUTOR_H
3+
4+
#include <string>
5+
#include <vector>
6+
#include <map>
7+
8+
#include "base/memory/scoped_ptr.h"
9+
#include "webdriver_view_executor.h"
10+
#include "webdriver_error.h"
11+
12+
#include <QtCore/QDebug>
13+
14+
class QGraphicsWebView;
15+
16+
namespace webdriver {
17+
18+
class QWebkitProxy;
19+
20+
class GraphicsWebViewCmdExecutorCreator : public ViewCmdExecutorCreator {
21+
public:
22+
static const ViewType GRAPHICS_WEB_VIEW_TYPE;
23+
24+
GraphicsWebViewCmdExecutorCreator();
25+
virtual ~GraphicsWebViewCmdExecutorCreator();
26+
27+
virtual ViewCmdExecutor* CreateExecutor(Session* session, ViewId viewId) const;
28+
virtual bool CanHandleView(Session* session, ViewId viewId, ViewType* viewType = NULL) const;
29+
private:
30+
31+
DISALLOW_COPY_AND_ASSIGN(GraphicsWebViewCmdExecutorCreator);
32+
};
33+
34+
#define NOT_SUPPORTED_IMPL {*error = new Error(kCommandNotSupported, "Current view doesnt support this command.");}
35+
36+
class GraphicsWebViewCmdExecutor : public ViewCmdExecutor {
37+
public:
38+
explicit GraphicsWebViewCmdExecutor(Session* session, ViewId viewId);
39+
virtual ~GraphicsWebViewCmdExecutor();
40+
41+
virtual void CanHandleUrl(const std::string& url, bool* can, Error **error);
42+
virtual void GetTitle(std::string* title, Error **error);
43+
virtual void GetWindowName(std::string* name, Error ** error);
44+
virtual void GetBounds(Rect *bounds, Error **error);
45+
virtual void SetBounds(const Rect& bounds, Error** error) NOT_SUPPORTED_IMPL;
46+
virtual void Maximize(Error** error) NOT_SUPPORTED_IMPL;
47+
virtual void GetScreenShot(std::string* png, Error** error);
48+
virtual void GoForward(Error** error);
49+
virtual void GoBack(Error** error);
50+
virtual void Reload(Error** error);
51+
virtual void GetSource(std::string* source, Error** error);
52+
virtual void SendKeys(const string16& keys, Error** error);
53+
virtual void SendKeys(const ElementId& element, const string16& keys, Error** error);
54+
virtual void Close(Error** error) NOT_SUPPORTED_IMPL;
55+
virtual void MouseDoubleClick(Error** error);
56+
virtual void MouseButtonUp(Error** error);
57+
virtual void MouseButtonDown(Error** error);
58+
virtual void MouseClick(MouseButton button, Error** error);
59+
virtual void MouseMove(const int x_offset, const int y_offset, Error** error);
60+
virtual void MouseMove(const ElementId& element, int x_offset, const int y_offset, Error** error);
61+
virtual void MouseMove(const ElementId& element, Error** error);
62+
virtual void ClickElement(const ElementId& element, Error** error);
63+
virtual void GetAttribute(const ElementId& element, const std::string& key, base::Value** value, Error** error);
64+
virtual void ClearElement(const ElementId& element, Error** error);
65+
virtual void IsElementDisplayed(const ElementId& element, bool ignore_opacity, bool* is_displayed, Error** error);
66+
virtual void IsElementEnabled(const ElementId& element, bool* is_enabled, Error** error);
67+
virtual void ElementEquals(const ElementId& element1, const ElementId& element2, bool* is_equal, Error** error);
68+
virtual void GetElementLocation(const ElementId& element, Point* location, Error** error);
69+
virtual void GetElementLocationInView(const ElementId& element, Point* location, Error** error);
70+
virtual void GetElementTagName(const ElementId& element, std::string* tag_name, Error** error);
71+
virtual void IsOptionElementSelected(const ElementId& element, bool* is_selected, Error** error);
72+
virtual void SetOptionElementSelected(const ElementId& element, bool selected, Error** error);
73+
virtual void GetElementSize(const ElementId& element, Size* size, Error** error);
74+
virtual void ElementSubmit(const ElementId& element, Error** error);
75+
virtual void GetElementText(const ElementId& element, std::string* element_text, Error** error);
76+
virtual void GetElementCssProperty(const ElementId& element, const std::string& property, base::Value** value, Error** error);
77+
virtual void FindElement(const ElementId& root_element, const std::string& locator, const std::string& query, ElementId* element, Error** error);
78+
virtual void FindElements(const ElementId& root_element, const std::string& locator, const std::string& query, std::vector<ElementId>* elements, Error** error);
79+
virtual void ActiveElement(ElementId* element, Error** error);
80+
virtual void SwitchTo(Error** error);
81+
virtual void SwitchToFrameWithNameOrId(const std::string& name_or_id, Error** error);
82+
virtual void SwitchToFrameWithIndex(int index, Error** error);
83+
virtual void SwitchToFrameWithElement(const ElementId& element, Error** error);
84+
virtual void SwitchToTopFrame(Error** error);
85+
virtual void SwitchToTopFrameIfCurrentFrameInvalid(Error** error);
86+
virtual void NavigateToURL(const std::string& url, bool sync, Error** error);
87+
virtual void GetURL(std::string* url, Error** error);
88+
virtual void ExecuteScript(const std::string& script, const base::ListValue* const args, base::Value** value, Error** error);
89+
virtual void ExecuteAsyncScript(const std::string& script, const base::ListValue* const args, base::Value** value, Error** error);
90+
virtual void GetAppCacheStatus(int* status, Error** error);
91+
virtual void GetCookies(const std::string& url, base::ListValue** cookies, Error** error);
92+
virtual void SetCookie(const std::string& url, base::DictionaryValue* cookie_dict, Error** error);
93+
virtual void DeleteCookie(const std::string& url, const std::string& cookie_name, Error** error);
94+
virtual void GetStorageKeys(StorageType type, base::ListValue** keys, Error** error);
95+
virtual void SetStorageItem(StorageType type, const std::string& key, const std::string& value, Error** error);
96+
virtual void ClearStorage(StorageType type, Error** error);
97+
virtual void GetStorageItem(StorageType type, const std::string& key, std::string* value, Error** error);
98+
virtual void RemoveStorageItem(StorageType type, const std::string& key, std::string* value, Error** error);
99+
virtual void GetStorageSize(StorageType type, int* size, Error** error);
100+
virtual void GetGeoLocation(base::DictionaryValue** geolocation, Error** error) NOT_SUPPORTED_IMPL;
101+
virtual void SetGeoLocation(const base::DictionaryValue* geolocation, Error** error) NOT_SUPPORTED_IMPL;
102+
virtual void TouchClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
103+
virtual void TouchDoubleClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
104+
virtual void TouchDown(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
105+
virtual void TouchUp(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
106+
virtual void TouchMove(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
107+
virtual void TouchLongClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
108+
virtual void TouchScroll(const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
109+
virtual void TouchScroll(const ElementId &element, const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
110+
virtual void TouchFlick(const int &xSpeed, const int &ySpeed, Error **error) NOT_SUPPORTED_IMPL;
111+
virtual void TouchFlick(const ElementId &element, const int &xoffset, const int &yoffset, const int &speed, Error **error) NOT_SUPPORTED_IMPL;
112+
virtual void GetBrowserLog(base::ListValue** browserLog, Error **error);
113+
virtual void GetPlayerState(const ElementId& element, PlayerState*, Error**);
114+
virtual void SetPlayerState(const ElementId& element, PlayerState, Error**);
115+
virtual void GetPlayerVolume(const ElementId& element, double*, Error**);
116+
virtual void SetPlayerVolume(const ElementId& element, double, Error**);
117+
virtual void GetPlayingPosition(const ElementId& element, double*, Error**);
118+
virtual void SetPlayingPosition(const ElementId& element, double, Error**);
119+
virtual void SetMute(const ElementId& element, bool, Error**);
120+
virtual void GetMute(const ElementId& element, bool*, Error**);
121+
virtual void SetPlaybackSpeed(const ElementId& element, double, Error**);
122+
virtual void GetPlaybackSpeed(const ElementId& element, double*, Error**);
123+
virtual void VisualizerSource(std::string* source, Error** error);
124+
virtual void VisualizerShowPoint(Error** error);
125+
virtual void GetAlertMessage(std::string* text, Error** error) NOT_SUPPORTED_IMPL;
126+
virtual void SetAlertPromptText(const std::string& alert_prompt_text, Error** error) NOT_SUPPORTED_IMPL;
127+
virtual void AcceptOrDismissAlert(bool accept, Error** error) NOT_SUPPORTED_IMPL;
128+
virtual void SetOrientation(const std::string &orientation, Error **error) NOT_SUPPORTED_IMPL;
129+
virtual void GetOrientation(std::string *orientation, Error **error);
130+
131+
protected:
132+
QGraphicsWebView* getView(const ViewId& viewId, Error** error);
133+
134+
private:
135+
scoped_ptr<QWebkitProxy> webkitProxy_;
136+
QGraphicsWebView* view_;
137+
138+
DISALLOW_COPY_AND_ASSIGN(GraphicsWebViewCmdExecutor);
139+
};
140+
141+
} // namespace webdriver
142+
143+
#endif // WEBDRIVER_GRAPHICS_WEB_VIEW_EXECUTOR_H
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#ifndef WEBDRIVER_QT_GRAPHICS_WEB_VIEW_H_
2+
#define WEBDRIVER_QT_GRAPHICS_WEB_VIEW_H_
3+
4+
#include <string>
5+
6+
#include "webdriver_view_id.h"
7+
8+
#include <QtCore/QPointer>
9+
10+
#include <QtCore/QtGlobal>
11+
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
12+
#include <QtWebKitWidgets/QGraphicsWebView>
13+
#else
14+
#include <QtWebKit/QGraphicsWebView>
15+
#endif
16+
17+
namespace webdriver {
18+
19+
class GraphicsWebViewHandle : public ViewHandle {
20+
public:
21+
GraphicsWebViewHandle();
22+
GraphicsWebViewHandle(QGraphicsWebView* view);
23+
24+
virtual bool is_valid() const { return !view_.isNull(); };
25+
virtual bool equals(const ViewHandle* other) const;
26+
QGraphicsWebView* get() { return view_.data(); };
27+
28+
protected:
29+
QPointer<QGraphicsWebView> view_;
30+
//private:
31+
virtual ~GraphicsWebViewHandle() {};
32+
};
33+
34+
} // namespace webdriver
35+
36+
#endif // WEBDRIVER_QT_GRAPHICS_WEB_VIEW_H_

inc/extension_qt/q_view_executor.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@
1313
#include <QtCore/QDebug>
1414
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
1515
#include <QtWidgets/QWidget>
16-
#include <QtGui/QTouchDevice>
16+
#include <QtGui/QTouchDevice>
1717
#else
1818
#include <QtGui/QWidget>
1919
#endif
20+
#include <QtGui/QTouchEvent>
2021

2122
namespace webdriver {
2223

@@ -48,7 +49,9 @@ class QViewCmdExecutor : public ViewCmdExecutor {
4849

4950
protected:
5051
QWidget* getView(const ViewId& viewId, Error** error);
51-
52+
QTouchEvent::TouchPoint createTouchPoint(Qt::TouchPointState state, QPointF &point);
53+
QTouchEvent* createSimpleTouchEvent(QEvent::Type eventType, Qt::TouchPointStates touchPointStates, QPointF point);
54+
QTouchEvent* createTouchEvent(QEvent::Type eventType, Qt::TouchPointStates touchPointStates, const QList<QTouchEvent::TouchPoint> &touchPoints);
5255
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
5356
QTouchDevice touchDevice;
5457
#endif

inc/extension_qt/qml_web_view_executor.h

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -100,16 +100,16 @@ class QmlWebViewCmdExecutor : public ViewCmdExecutor {
100100
virtual void GetStorageSize(StorageType type, int* size, Error** error);
101101
virtual void GetGeoLocation(base::DictionaryValue** geolocation, Error** error) NOT_SUPPORTED_IMPL;
102102
virtual void SetGeoLocation(const base::DictionaryValue* geolocation, Error** error) NOT_SUPPORTED_IMPL;
103-
virtual void TouchClick(const ElementId& element, Error **error);
104-
virtual void TouchDoubleClick(const ElementId& element, Error **error);
105-
virtual void TouchDown(const int &x, const int &y, Error **error);
106-
virtual void TouchUp(const int &x, const int &y, Error **error);
107-
virtual void TouchMove(const int &x, const int &y, Error **error);
108-
virtual void TouchLongClick(const ElementId& element, Error **error);
109-
virtual void TouchScroll(const int &xoffset, const int &yoffset, Error **error);
110-
virtual void TouchScroll(const ElementId &element, const int &xoffset, const int &yoffset, Error **error);
111-
virtual void TouchFlick(const int &xSpeed, const int &ySpeed, Error **error);
112-
virtual void TouchFlick(const ElementId &element, const int &xoffset, const int &yoffset, const int &speed, Error **error);
103+
virtual void TouchClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
104+
virtual void TouchDoubleClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
105+
virtual void TouchDown(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
106+
virtual void TouchUp(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
107+
virtual void TouchMove(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
108+
virtual void TouchLongClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
109+
virtual void TouchScroll(const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
110+
virtual void TouchScroll(const ElementId &element, const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
111+
virtual void TouchFlick(const int &xSpeed, const int &ySpeed, Error **error) NOT_SUPPORTED_IMPL;
112+
virtual void TouchFlick(const ElementId &element, const int &xoffset, const int &yoffset, const int &speed, Error **error) NOT_SUPPORTED_IMPL;
113113
virtual void GetBrowserLog(base::ListValue** browserLog, Error **error);
114114
virtual void GetPlayerState(const ElementId& element, PlayerState*, Error**);
115115
virtual void SetPlayerState(const ElementId& element, PlayerState, Error**);

inc/extension_qt/widget_view_executor.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -128,16 +128,16 @@ class QWidgetViewCmdExecutor : public QViewCmdExecutor {
128128
virtual void GetStorageSize(StorageType type, int* size, Error** error) NOT_SUPPORTED_IMPL;
129129
virtual void GetGeoLocation(base::DictionaryValue** geolocation, Error** error) NOT_SUPPORTED_IMPL;
130130
virtual void SetGeoLocation(const base::DictionaryValue* geolocation, Error** error) NOT_SUPPORTED_IMPL;
131-
virtual void TouchClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
132-
virtual void TouchDoubleClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
133-
virtual void TouchDown(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
134-
virtual void TouchUp(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
135-
virtual void TouchMove(const int &x, const int &y, Error **error) NOT_SUPPORTED_IMPL;
136-
virtual void TouchLongClick(const ElementId& element, Error **error) NOT_SUPPORTED_IMPL;
131+
virtual void TouchClick(const ElementId& element, Error **error);
132+
virtual void TouchDoubleClick(const ElementId& element, Error **error);
133+
virtual void TouchDown(const int &x, const int &y, Error **error);
134+
virtual void TouchUp(const int &x, const int &y, Error **error);
135+
virtual void TouchMove(const int &x, const int &y, Error **error);
136+
virtual void TouchLongClick(const ElementId& element, Error **error);
137137
virtual void TouchScroll(const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
138-
virtual void TouchScroll(const ElementId &element, const int &xoffset, const int &yoffset, Error **error) NOT_SUPPORTED_IMPL;
138+
virtual void TouchScroll(const ElementId &element, const int &xoffset, const int &yoffset, Error **error);
139139
virtual void TouchFlick(const int &xSpeed, const int &ySpeed, Error **error) NOT_SUPPORTED_IMPL;
140-
virtual void TouchFlick(const ElementId &element, const int &xoffset, const int &yoffset, const int &speed, Error **error) NOT_SUPPORTED_IMPL;
140+
virtual void TouchFlick(const ElementId &element, const int &xoffset, const int &yoffset, const int &speed, Error **error);
141141
virtual void GetPlayerState(const ElementId& element, PlayerState*, Error**error);
142142
virtual void SetPlayerState(const ElementId& element, PlayerState, Error**error);
143143
virtual void GetPlayerVolume(const ElementId& element, double*, Error**error);

src/Test/GraphicsWebViewTest.cc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#include "GraphicsWebViewTest.h"
2+
3+
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
4+
#include <QtWebKitWidgets/QWebView>
5+
#else
6+
#include <QtWebKit/QWebView>
7+
#endif
8+
9+
GraphicsWebViewTestWindows::GraphicsWebViewTestWindows(QWidget *parent) :
10+
QGraphicsView(parent) {
11+
this->setWindowTitle("Test Widget");
12+
13+
QGraphicsScene *pScene = new QGraphicsScene();
14+
QGraphicsWebView *pWebView = new QGraphicsWebView();
15+
pScene->addItem(pWebView);
16+
17+
this->setScene(pScene);
18+
}
19+
20+
GraphicsWebViewTestWindows::~GraphicsWebViewTestWindows() {}
21+

src/Test/GraphicsWebViewTest.h

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#ifndef GRAPHICS_WEB_VIEW_TEST_H
2+
#define GRAPHICS_WEB_VIEW_TEST_H
3+
4+
#include "CommonQtTestHeaders.h"
5+
6+
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
7+
#include <QtWebKitWidgets/QGraphicsWebView>
8+
#include <QtWidgets/QGraphicsView>
9+
#else
10+
#include <QtWebKit/QGraphicsWebView>
11+
#include <QtGui/QGraphicsView>
12+
#endif
13+
14+
class GraphicsWebViewTestWindows : public QGraphicsView
15+
{
16+
Q_OBJECT
17+
public:
18+
explicit GraphicsWebViewTestWindows(QWidget *parent = 0);
19+
~GraphicsWebViewTestWindows();
20+
};
21+
22+
#endif // GRAPHICS_WEB_VIEW_TEST_H

0 commit comments

Comments
 (0)