Splits interface and implementation; all client calls are forwarded
to an abstract WebViewProvider interface, and the existing implementation
moved into the WebViewClassic implementor of this interface.
Originally taken from a snapshot from the development branch, by:
git diff HEAD 9a4c328a54cc05e5 | git apply
- but then rebased to keep up to date with master
Interdepends on webkit and Browser changes:
https://android-git.corp.google.com/g/158979https://android-git.corp.google.com/g/167911
Change-Id: I91403f32654ff308934e95c832d17b292a7d9b2e
1. Remove mDeferMultiTouch in WebView, it was for testing only but
we don't need it now since we always pass MultiTouch to WebKit.
2. Remove the use of mDeferMultiTouch in DRT tests.
3. Correct the index of getX(Y) for the second touch point in the
debug string of MotionEvent.
Change-Id: Ib63cfc5935af1a169ed26b2b138f74908492bc18
Currently layout test list is passed between two processes in
intent, which does not work for large lists. This change store
the list in external storage folder (per app based, actual
location determined by framework) instead.
Change-Id: Ib175f766159f5e4f831d6b9ace9f1c4caef7298d
This factors out a new Point class and a new
createViewPointFromContentCoordinates() method. This will allow Point
and the conversion method to be re-used with mouse events.
Change-Id: I2d689d0ffa0ad7ba01d0e90f78c812604ab96234
I've manually checked the existing LayoutTests for false positives.
There are non-test .php files, but they're all in "resources"
subdirectories, so they should be caught by isTestDir(). Added an
extra @warning to isTestFile() just in case.
Bug: 3164771
Change-Id: Ib282acf46f6e839439ce521c4b2cb5820fcd263c
This is required now that doing network requests on the main thread
throws NetworkOnMainThreadException.
Also updates TestsListPreloaderThread to create the FileFilter lazily
and removes a superfluous FileFilter param from the Summarizer
constructor.
Change-Id: If15fddac934cd8be611f6693b25837657abbddc3
This is required for tests that test PageCache behaviour, eg
- fast/dom/DeviceMotion/no-page-cache.html
- fast/dom/DeviceOrientation/no-page-cache.html
- fast/dom/Geolocation/no-page-cache.html
Change-Id: Ie5862f6c86718142c949be81a85358ca6fac628a
If we fail to read from any of the possible expected result paths, we should
not record an expected result path.
Change-Id: Ica96b791c14a7755154be4ec9480be4d13f47a19
pass on the serial number onto adb command so that it don't get
confused when multiple devices are connected
Change-Id: I0b16f9da941d77425bcc5f782393f8800e035871
Without this change, any use of AppCache fails after the test
http/tests/appcache/max-size.html has been run. The test in question
passes, but seems to leave the database in a corrupted state, causing
all future database transactions to fail. The only fix is to remove
the database file.
This behaviour is only observed with DumpRenderTree2, not
DumpRenderTree, so I don't think this is a WebView problem. I'm not
sure what the root cause is, but I think it make sense to submit this
fix now in order to get the LayoutTests stable with DumpRenderTree2.
Change-Id: I763c09406e66839676b839e3cdeba3b9427c1cb9
* changes:
Provide a useful message in DumpRenderTree2 GUI when the host server is not running
Prevent DumpRenderTree2 from crashing when the host server is not running
Since the UI uses multi-touch for zooming, the event is passed to webkit
only when the webpage doesn't allow zooming.
1. Updated the data structure TouchEventData in WebViewCore.java
to take multiple points and used it everywhere.
2. Added a passMultiTouchToWebkit() function to do what its name means.
3. Added the multi-point touch support to dumprendertree.
Change-Id: Iafc1aa7b21a587ad26efd2f124b9a66316297ab8
This is required to make sure that the WebCore thread's message
handlers are ready to receive settings.
Change-Id: I2c4df95e3b7409535b739ada957d93a7e6cd78d6
We use a printf style approach when setting the run command in the
command string to be executed. When doing so, the printf must be
applied to only the relevant part of the string. This avoids problems
in the case that other parts of the string contain special character
sequences, such as '%s' in a custom log directive.
Change-Id: I87df773a2872320386a34cb6a5041a9e0ba6f31e
It avoids OOM issues by dumping the memory to the DB every
few hundred tests and then reading them in chunks when
generating summaries, etc.
Change-Id: I5f63d960d456f17e9f2189230a7ae0ca5607ce51
Currently DumpRenderTree2 serves HTTP tests on http://localhost:8080.
Some of the tests hardcode 'http://127.0.0.1:8000' for resources, so
we must use this scheme and port for the requests to be same-origin.
This fixes LayoutTest http/tests/appcache/credential-url.html
Change-Id: I2a9c402fc7b0e0b62eb4a278d67ac0e63ef96e8b
When adding JavaScript interfaces to a WebView, they must be passed to
the WebView constructor, rather than to
WebView.addJavascriptInterface() if they are to be used immediately
without the risk of race conditions.
This fixes LayoutTest
http/tests/appcache/crash-when-navigating-away-then-back.html
This was fixed for DumpRenderTree in
https://android-git.corp.google.com/g/23804
Change-Id: I1581d6d6cfc1b35be1ec2f2e5b5b944da2b4b935
Currently, DumpRenderTree2 asigns the following result codes
{PASS, FAIL_RESULT_DIFFERS, FAIL_NO_EXPECTED_RESULT, FAIL_TIMED_OUT,
FAIL_CRASHED}
This is not strictly correct, as a test may fail for any of three
reasons - crashing, timing out, or the the result not being as
expected. Therefore, it's possible for a test to fail even if the
result is as expected.
This patch updates AbstractResult to handle each of the three reasons
for failure separately. We then test all three to determine if the
test has passed.
This allows us to correctly report whether or not the result differs
from expected for a failing test.
Change-Id: I7adcfe72c4dd0bd3de2e1b868d9807be6eb5bddf