2010-01-22 Tor Arne Vestbø Reviewed by Simon Hausmann. Make run-webkit-tests work under Cygwin for the Qt port setPathForRunningWebKitApp() is implemented for the Qt port by using qmake to query for the location of the Qt libraries. This requires the original environment (%ENV) to be untouched, so launchWithCurrentEnv() was refactored to launchWithEnv(), and the code in openDumpTool() to not use %ENV but a %CLEAN_ENV instead. This has the added benefit of getting rid of the temp variables used for storing the current env. openDumpTool() is also refactored a bit into platform-spesific, port-spesific, and generic environment variables. Checks for undef was added a few places to fix Perl concat warnings when run-webkit-tests is aborted. https://bugs.webkit.org/show_bug.cgi?id=33895 * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-02-04 Yuzo Fujishima Unreviewed. Add Yuzo to the committers list. * Scripts/webkitpy/committers.py: 2010-02-03 Dirk Pranke Rubber-stamped by Eric Seidel. Change "the Chromium name" to "the name of Google Inc." in the licenses https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/http_server_base.py: * Scripts/webkitpy/layout_tests/port/path_utils.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Dirk Pranke Rubber-stamped by Eric Siedel. Rename files as part of refactoring the layout_tests package. All the platform_utils* module, the path_utils.py module, and the http server and web socket server modules are moved into a new port/ package. https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/http_server.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/httpd2.pem: Removed. * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf: Removed. * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: Removed. * Scripts/webkitpy/layout_tests/port: Added. * Scripts/webkitpy/layout_tests/port/__init__.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils.py. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py. * Scripts/webkitpy/layout_tests/port/chromium_mac.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py. * Scripts/webkitpy/layout_tests/port/chromium_win.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py. * Scripts/webkitpy/layout_tests/port/http_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/http_server.py. * Scripts/webkitpy/layout_tests/port/http_server_base.py: Copied from Scripts/webkitpy/layout_tests/layout_package/http_server_base.py. * Scripts/webkitpy/layout_tests/port/httpd2.pem: Copied from Scripts/webkitpy/layout_tests/layout_package/httpd2.pem. * Scripts/webkitpy/layout_tests/port/lighttpd.conf: Copied from Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf. * Scripts/webkitpy/layout_tests/port/path_utils.py: Copied from Scripts/webkitpy/layout_tests/layout_package/path_utils.py. * Scripts/webkitpy/layout_tests/port/websocket_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/websocket_server.py. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Csaba Osztrogonác Rubber-stamped by Eric Seidel. Roll back r53559 and r54084 again, because roll out didn't solve flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: * Scripts/webkitperl/httpd.pm: Added. 2010-02-03 Csaba Osztrogonác Rubber-stamped by Eric Seidel. Roll out r53559 and r54084, because it might caused flakeyness on the Windows Test bots * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: * Scripts/webkitperl/httpd.pm: Removed. 2010-02-03 Csaba Osztrogonác Rubber-stamped by Ariya Hidayat. Roll back r53889 again, because roll out didn't solve flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * DumpRenderTree/win/EventSender.cpp: (buildModifierFlags): (mouseDownCallback): (mouseUpCallback): (keyDownCallback): 2010-02-03 Eric Seidel No review, just fixing copyrights. Concerns were expressed about "The Chromium Authors" being a valid legal entity for copyright assignment in the WebKit repository, so this change removes all "The Chromium Authors". I looked at the svn logs in src.chromium.org and failed to find any non-google contributions to these files, so they are all now marked as copyright "Google Inc" as all Google contributers assign copyright to "Google Inc" as part of their employment agreement. * Scripts/rebaseline-chromium-webkit-tests: * Scripts/run-chromium-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: * Scripts/webkitpy/layout_tests/layout_package/http_server.py: * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] QtLauncher, refactor argument handling in preparation of merge with QGVLauncher * QtLauncher/main.cpp: (LauncherApplication::urls): (LauncherApplication::isRobotized): (LauncherApplication::applyDefaultSettings): (LauncherApplication::LauncherApplication): (LauncherApplication::formatKeys): (LauncherApplication::enumToKeys): (fail): (LauncherApplication::handleUserOptions): (main): 2010-02-03 Csaba Osztrogonác Rubber-stamped by Ariya Hidayat. Rolling out r53889, because it might caused flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * DumpRenderTree/win/EventSender.cpp: (mouseDownCallback): (mouseUpCallback): (keyDownCallback): 2010-02-03 Csaba Osztrogonác Reviewed by Ariya Hidayat. [Qt] Fix pixel tests support. https://bugs.webkit.org/show_bug.cgi?id=27813 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open): (WebCore::DumpRenderTree::processLine): - Hash processing mechanism moved from DumpRenderTree::open to DumpRenderTree::processLine. (WebCore::DumpRenderTree::dump): Fixed and renamed variables. 2010-02-03 Kevin Watters Reviewed by Kevin Ollivier. [wx] Enable JIT compilation for wx. https://bugs.webkit.org/show_bug.cgi?id=34536 * wx/build/settings.py: 2010-02-02 Kevin Ollivier [wx] Build fix after introduction of pageNumberForElementById. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::pageNumberForElementById): 2010-02-02 Shu Chang Unreviewed. Add myself to list of committers. * Scripts/webkitpy/committers.py: 2010-02-02 Chris Jerdonek Reviewed by Shinichiro Hamaji. Moved filter-related check-webkit-style code into a separate filter module. https://bugs.webkit.org/show_bug.cgi?id=34408 This is preparatory refactoring for Bug 33684, which will allow file and folder-specific filter rules. * Scripts/webkitpy/style/checker.py: - Removed CategoryFilter class (moved to filter.py). * Scripts/webkitpy/style/checker_unittest.py: - Removed CategoryFilter unit tests (moved to filter_unittest.py). * Scripts/webkitpy/style/filter.py: Added. - Added CategoryFilter class (moved from checker.py). * Scripts/webkitpy/style/filter_unittest.py: Added. - Added CategoryFilter unit tests (moved from checker_unittest.py). * Scripts/webkitpy/style/unittests.py: - Added reference to filter_unittest.py. 2010-02-01 Chris Jerdonek Reviewed by Shinichiro Hamaji. Addressed FIXME in check-webkit-style so that the carriage-return check will work for patches. https://bugs.webkit.org/show_bug.cgi?id=34260 Also added support for limiting the number of errors reported per category, per file. * Scripts/webkitpy/style/checker.py: - Added new "whitespace/carriage_return" category from common.py. - Added MAX_REPORTS_PER_CATEGORY dictionary. - Added max_reports_per_category attribute to ProcessorOptions class. - Refactored StyleChecker._process_file(). * Scripts/webkitpy/style/checker_unittest.py: - Updated ProcessorOptionsTest tests. - Added test to check MAX_REPORTS_PER_CATEGORY. * Scripts/webkitpy/style/error_handlers.py: - Added support for suppressing the display of errors after reaching a per-category maximum (from max_reports_per_category). * Scripts/webkitpy/style/error_handlers_unittest.py: - Added test for suppressing error display. * Scripts/webkitpy/style/processors/common.py: Added. - Moved carriage-return check to new file. * Scripts/webkitpy/style/processors/common_unittest.py: Added. - Added unit tests for carriage-return check. * Scripts/webkitpy/style/unittests.py: - Added reference to common_unittest.py. 2010-02-01 Shinichiro Hamaji Reviewed by Eric Seidel. Provide a way to get page number with layoutTestController https://bugs.webkit.org/show_bug.cgi?id=33840 * DumpRenderTree/LayoutTestController.cpp: (pageNumberForElementByIdCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::pageNumberForElementById): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::pageNumberForElementById): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::pageNumberForElementById): 2010-02-01 Shinichiro Hamaji Unreviewed fix for an invalid function call. check-webkit-style: Remove filename parameter from all functions where no longer used https://bugs.webkit.org/show_bug.cgi?id=34249 * Scripts/webkitpy/style/checker.py: 2010-02-01 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT Provide global flag ability https://bugs.webkit.org/show_bug.cgi?id=34418 Add the globalFlag property to the Qt LayoutTestController to allow cross-domain indications. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::globalFlag): (LayoutTestController::setGlobalFlag): 2010-02-01 Brady Eidson Reviewed by Adele Peterson. Crash in Safari opening new tabs to "same page" and https://bugs.webkit.org/show_bug.cgi?id=34444 Add a mode (Mac-only for now) that exercises the WebView SPI _loadBackForwardListFromOtherView: * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (setNewWindowsCopyBackForwardListCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::newWindowsCopyBackForwardList): (LayoutTestController::setNewWindowsCopyBackForwardList): * DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:createWebViewWithRequest:]): 2010-02-01 Carol Szabo Unreviewed. Add myself to list of committers. * Scripts/webkitpy/committers.py: 2010-02-01 Nate Chapin Rubber-stamped by David Levin. Add myself to reviewer list. * Scripts/webkitpy/committers.py: 2010-01-31 Chris Jerdonek Reviewed by Shinichiro Hamaji. Moved style error handler code to their own classes, and related refactoring. Increased unit test code coverage of style error handling. https://bugs.webkit.org/show_bug.cgi?id=34379 * Scripts/check-webkit-style: - Minor change: added error_count variable. * Scripts/webkitpy/style/checker.py: - Renamed ProcessorOptions.should_report_error() to is_reportable(). - In the StyleChecker class-- - Removed _default_style_error_handler(). - Added _increment_error_count(). - Refactored to use DefaultStyleErrorHandler and PatchStyleErrorHandler constructors. * Scripts/webkitpy/style/checker_unittest.py: - In the StyleStyleCheckerTest class-- - Removed write_sample_error(). - Removed test_default_style_error_handler(). * Scripts/webkitpy/style/error_handlers.py: Added. - Added DefaultStyleErrorHandler class. - Added PatchStyleErrorHandler class. * Scripts/webkitpy/style/error_handlers_unittest.py: Added. - Added unit tests for DefaultStyleErrorHandler and PatchStyleErrorHandler. * Scripts/webkitpy/style/unittests.py: - Added error_handlers unit tests. 2010-01-29 Mark Rowe Rubber-stamped by Stephanie Lewis. Fix run-leaks with newer versions of the leaks tool. * Scripts/run-leaks: 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Top-level test drivers for running the Chromium port of run-webkit-tests and being able to rebaseline test results from the test bots. The files in the Scripts directory are simply wrappers around the files in webkitpy/layout_tests for convenience. https://bugs.webkit.org/show_bug.cgi?id=31498 * Scripts/rebaseline-chromium-webkit-tests: Added. * Scripts/run-chromium-webkit-tests: Added. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: Added. * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: Added. 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Add in the second block of python code for the Chromium port of run-webkit-tests. These files execute different diffs to classify the various types of failures from a test. * Scripts/webkitpy/layout_tests/test_types: Added. * Scripts/webkitpy/layout_tests/test_types/__init__.py: Added. * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: Added. * Scripts/webkitpy/layout_tests/test_types/image_diff.py: Added. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: Added. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: Added. 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Check in the first part of the Chromium Python port of the run-webkit-tests test driver. The files under layout_tests/layout_layout constitute most of the implementation; they can be roughly divided into code that parses the "test_expectations.txt" file that describes how we expect tests to pass or fail, platform-specific hooks for the different Chromium ports (in platform_utils*), code for parsing the output of the tests and generating results files and HTML and JSON for the dashboards, auxiliary scripts for starting and stopping HTTP and Web Socket servers, and then one of the actual driver files (test_shell_thread). Code for actually parsing test output for failures and the top-level driver scripts will follow shortly. https://bugs.webkit.org/show_bug.cgi?id=31498 * Scripts/webkitpy/layout_tests: Added. * Scripts/webkitpy/layout_tests/layout_package: Added. * Scripts/webkitpy/layout_tests/layout_package/__init__.py: Added. * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: Added. * Scripts/webkitpy/layout_tests/layout_package/http_server.py: Added. * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: Added. * Scripts/webkitpy/layout_tests/layout_package/httpd2.pem: Added. - scripts to start and stop apache. Note that the apache file generates a conf file dynamically, and we should switch to using the same static conf file that the regular run-webkit-tests uses, and we can also use the same httpd2.pem file. * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: Added. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: Added. - scripts to generate the JSON layout test dashboard and the flakiness dashboard * Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf: Added. - default configuration for LigHTTPd (used on Windows) * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: Added. - utility class that implements progress bars on the console to be displayed while the tests are running * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: Added. - various routines for manipulating paths and URIs * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: Added. - platform-specific aspects of the drivers (binary names, paths, process control, etc.) * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: Added. - code for parsing the 'test_expectations.txt' file to determine which tests are expected to fail (and how) on which platforms * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: Added. - code for handling different kinds of failures (generating output in the results, etc.) * Scripts/webkitpy/layout_tests/layout_package/test_files.py: Added. - code to gather the lists of tests * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: Added. - code to actually execute tests via TestShell and process the output * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: Added. - scripts to start and stop the pywebsocket server 2010-01-29 Dirk Pranke Reviewed by Eric Seidel. Check in a copy of the simplejson library; it will be used by the Chromium port of run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=31498 * simplejson: Added. * simplejson/LICENSE.txt: Added. * simplejson/README.txt: Added. * simplejson/__init__.py: Added. * simplejson/_speedups.c: Added. (ascii_escape_char): (ascii_escape_unicode): (ascii_escape_str): (py_encode_basestring_ascii): (init_speedups): * simplejson/decoder.py: Added. * simplejson/encoder.py: Added. * simplejson/jsonfilter.py: Added. * simplejson/scanner.py: Added. 2010-01-29 Dirk Pranke No review Add myself to the committers list * Scripts/webkitpy/committers.py: 2010-01-29 Jeremy Orlow Reviewed by Dimitri Glazkov. A first step towards the Indexed Database API https://bugs.webkit.org/show_bug.cgi?id=34342 Add indexed database API. * Scripts/build-webkit: 2010-01-29 Andras Becsi Reviewed by Alexey Proskuryakov. Correct openHTTPD() to print requests to stdout if run-webkit-httpd is used. This fixes a regression introduced in r53559. https://bugs.webkit.org/show_bug.cgi?id=34336 * Scripts/webkitperl/httpd.pm: 2010-01-28 Jon Honeycutt MSAA: Crash when posting a notification for a detached object https://bugs.webkit.org/show_bug.cgi?id=34309 Reviewed by Darin Adler. * DumpRenderTree/AccessibilityController.h: Declare new functions. Add new members to store the event hook and the mapping of accessibility elements to their JS callbacks. * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: (AccessibilityController::notificationReceived): Stubbed. (AccessibilityController::addNotificationListener): Stubbed. * DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::notificationReceived): Stubbed. (AccessibilityController::addNotificationListener): Stubbed. * DumpRenderTree/win/AccessibilityControllerWin.cpp: (AccessibilityController::AccessibilityController): Initialize the event hook. (AccessibilityController::~AccessibilityController): Remove the event hook. Unprotect all of the JS functions that are stored in the map. (logEventProc): Clean-up a variable. (stringEvent): Return a string description of the MSAA event code. (notificationListenerProc): Get the accessible object from the event, and query it for IAccessible. Call the AccessibilityController's notificationReceived(). (comparableObject): Use QueryService to obtain the IAccessibleComparable for the IServiceProvider. (AccessibilityController::notificationReceived): Iterate the map of objects that have registered for notification callbacks. Query each for IServiceProvider, then use comparableObject() to get an IAccessibleComparable. If we find an object matching the notified object, call its callback, passing the event that was received. (AccessibilityController::addNotificationListener): If we have not created the event hook, create it. Protect the JS callback function object, and add the object and its callback to our map. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::addNotificationListener): Call through to the AccessibilityController's addNotificationListener(). * DumpRenderTree/win/DumpRenderTreeWin.h: Add an extern declaration for the shared FrameLoadDelegate extern, so we can access it from AccessibilityController. * DumpRenderTree/win/FrameLoadDelegate.h: (FrameLoadDelegate::accessibilityController): Return the AccessibilityController. 2010-01-29 Shinichiro Hamaji Reviewed by Darin Adler. prepare-ChangeLog outputs useless messages for a nonexistent bug ID https://bugs.webkit.org/show_bug.cgi?id=34313 * Scripts/prepare-ChangeLog: 2010-01-29 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] Separate implementation from class definition. * QtLauncher/main.cpp: (LauncherWindow::webView): (LauncherWindow::LauncherWindow): (LauncherWindow::~LauncherWindow): (LauncherWindow::keyPressEvent): (LauncherWindow::grabZoomKeys): (LauncherWindow::sendTouchEvent): (LauncherWindow::eventFilter): (LauncherWindow::loadStarted): (LauncherWindow::loadFinished): (LauncherWindow::showLinkHover): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): (LauncherWindow::resetZoom): (LauncherWindow::toggleZoomTextOnly): (LauncherWindow::print): (LauncherWindow::screenshot): (LauncherWindow::setEditable): (LauncherWindow::dumpHtml): (LauncherWindow::selectElements): (LauncherWindow::setTouchMocking): (LauncherWindow::newWindow): (LauncherWindow::setupUI): 2010-01-29 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] On Maemo5, a click/touch in the location bar (when unfocused) should result in all text selected. * QtLauncher/locationedit.cpp: (LocationEdit::focusInEvent): * QtLauncher/locationedit.h: 2010-01-29 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Show progress reaching 100% for loads. * QtLauncher/locationedit.cpp: (LocationEdit::LocationEdit): (LocationEdit::setProgress): (LocationEdit::reset): (LocationEdit::paintEvent): * QtLauncher/locationedit.h: 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Disable the QtLauncher statusbar on Maemo https://bugs.webkit.org/show_bug.cgi?id=34330 * QtLauncher/main.cpp: (LauncherWindow::showLinkHover): (LauncherWindow::selectElements): 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Display page loading progress inside the QtLauncher location bar https://bugs.webkit.org/show_bug.cgi?id=34210 * QtLauncher/QtLauncher.pro: * QtLauncher/locationedit.cpp: Added. (LocationEdit::LocationEdit): (LocationEdit::setProgress): (LocationEdit::paintEvent): * QtLauncher/locationedit.h: Added. * QtLauncher/mainwindow.cpp: (MainWindow::buildUI): * QtLauncher/mainwindow.h: 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Add support for Maemo zoom keys in QtLauncher https://bugs.webkit.org/show_bug.cgi?id=34160 * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::~LauncherWindow): (LauncherWindow::keyPressEvent): (LauncherWindow::grabZoomKeys): 2010-01-29 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Implement the display() method of the layout test controller https://bugs.webkit.org/show_bug.cgi?id=34258 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::showPage): (WebCore::DumpRenderTree::hidePage): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::display): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-28 Kevin Ollivier [wx] Build fix for MSW, use ThreadingWin.cpp as the Windows pthreads implementation implements pthread_t in a way that makes it impossible to check its validity, which is needed by ThreadingPthreads.cpp. * DumpRenderTree/wscript: * wx/build/settings.py: 2010-01-28 Andras Becsi Adding myself to the committer list. No review needed. * Scripts/webkitpy/committers.py: 2010-01-28 Hayato Ito Reviewed by David Levin. Remove NULL char from input JS file because 'grep' fails if the file contains NULL char. https://bugs.webkit.org/show_bug.cgi?id=34252 * Scripts/make-script-test-wrappers: 2010-01-28 Kevin Ollivier [wx] Build fix after removal of the zlib image decoder. * wx/build/settings.py: 2010-01-28 Csaba Osztrogonác [Qt] Unreviewed, roll out r54000. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::display): 2010-01-28 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Implement the display() method of the layout test controller https://bugs.webkit.org/show_bug.cgi?id=34258 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::showPage): (WebCore::DumpRenderTree::hidePage): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::display): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Eliminated the filename parameter from functions in check-webkit-style's cpp.py where it is no longer used. https://bugs.webkit.org/show_bug.cgi?id=34249 * Scripts/webkitpy/style/processors/cpp.py: - Reduced number of occurrences of "filename" variable from approximately 200 to 120. * Scripts/webkitpy/style/processors/cpp_unittest.py: - Refactored unit tests as necessary to accommodate changes to cpp.py. - Fixed bug in CppStyleTestBase.perform_include_what_you_use() where the incorrect file extension was getting passed to cpp_style.check_language(). 2010-01-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. In check-webkit-style, eliminated the dependency of processors/cpp_unittest.py on checker.py. https://bugs.webkit.org/show_bug.cgi?id=34205 * Scripts/webkitpy/style/checker.py: - Addressed FIXME by removing STYLE_CATEGORIES data. - Added style_categories(). * Scripts/webkitpy/style/checker_unittest.py: - Minor changes. * Scripts/webkitpy/style/processors/cpp.py: - Added categories attribute to CppProcessor class (data was originally checker.STYLE_CATEGORIES). * Scripts/webkitpy/style/processors/cpp_unittest.py: - Addressed FIXME by eliminating "import" from checker.py. 2010-01-28 Anton Muhin Reviewed by Shinichiro Hamaji. Improve treatment of conditions and rest of the line for if, else, switch and alikes https://bugs.webkit.org/show_bug.cgi?id=34173 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-28 Joe Mason Reviewed by Adam Barth. Limit login retries to 5 https://bugs.webkit.org/show_bug.cgi?id=34193 * Scripts/webkitpy/bugzilla.py: 2010-01-27 Martin Robinson Adding myself to the committer list. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-27 George Wright Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=34216 Add missing include for wtf/Platform.h * DumpRenderTree/AccessibilityController.h: 2010-01-27 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT Provide worker thread ability to track counters https://bugs.webkit.org/show_bug.cgi?id=34221 Implement workerThreadCount() in LayoutTestController of Qt DRT Tests: fast/workers/dedicated-worker-lifecycle.html fast/workers/shared-worker-frame-lifecycle.html fast/workers/shared-worker-lifecycle.html fast/workers/worker-lifecycle.html * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::workerThreadCount): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring: Make the LauncherWindow depend less on the view, so that more code can be shared in near future. * QtLauncher/main.cpp: (LauncherWindow::sendTouchEvent): (LauncherWindow::loadFinished): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): (LauncherWindow::resetZoom): (LauncherWindow::toggleZoomTextOnly): (LauncherWindow::dumpHtml): (LauncherWindow::selectElements): (LauncherWindow::setupUI): 2010-01-27 Kinuko Yasuda Reviewed by Eric Seidel. Correctly handle the KeyLocation argument that has been introduced recently to test location-dependent key events in EventSender.keyDown. http://bugs.webkit.org/show_bug.cgi?id=28247 Test: fast/events/keydown-numpad-keys.html * DumpRenderTree/gtk/EventSender.cpp: (keyDownCallback): 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring: Move out code from the MainWindow (renamed to LauncherWindow) that is not depending on the view, and add it to a new class called MainWindow. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::eventFilter): (LauncherWindow::loadStarted): (LauncherWindow::loadFinished): (LauncherWindow::newWindow): (LauncherWindow::setupUI): (WebPage::createWindow): (main): * QtLauncher/mainwindow.cpp: Added. (MainWindow::MainWindow): (MainWindow::buildUI): (MainWindow::page): (MainWindow::setAddressUrl): (MainWindow::addCompleterEntry): (MainWindow::load): (MainWindow::changeLocation): (MainWindow::openFile): * QtLauncher/mainwindow.h: Added. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher, coding style fixes. * QtLauncher/main.cpp: (MainWindow::MainWindow): (MainWindow::sendTouchEvent): (MainWindow::eventFilter): (MainWindow::loadURL): (MainWindow::setupUI): (WebPage::createPlugin): 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring, separating the webview and adding a QGraphicsWebView based version. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (MainWindow::MainWindow): * QtLauncher/webpage.h: * QtLauncher/webview.cpp: Added. (createContextMenu): (WebViewGraphicsBased::mousePressEvent): (WebViewTraditional::mousePressEvent): (WebViewGraphicsBased::contextMenuEvent): (WebViewTraditional::contextMenuEvent): * QtLauncher/webview.h: Added. (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewTraditional::WebViewTraditional): 2010-01-27 Alexander Pavlov Adding myself as committer. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-27 Eric Seidel Reviewed by Darin Adler. webkit-patch needs an open-bugs command https://bugs.webkit.org/show_bug.cgi?id=30793 * Scripts/test-webkitpy: import OpenBugsTest * Scripts/webkit-patch: import OpenBugs * Scripts/webkitpy/commands/download_unittest.py: don't import unittest * Scripts/webkitpy/commands/early_warning_system_unittest.py: ditto * Scripts/webkitpy/commands/queries_unittest.py: ditto * Scripts/webkitpy/commands/queues_unittest.py: ditto * Scripts/webkitpy/commands/upload_unittest.py: ditto * Scripts/webkitpy/mock_bugzillatool.py: log when user.open_url is called. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann [Qt] QtLauncher refactoring, separating utility methods. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: * QtLauncher/utils.cpp: Added. (urlFromUserInput): * QtLauncher/utils.h: Added. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann [Qt] Refactor the code in the QtLauncher dealing with HTTP proxy. * QtLauncher/main.cpp: (MainWindow::MainWindow): * QtLauncher/webpage.cpp: (WebPage::WebPage): (WebPage::applyProxy): * QtLauncher/webpage.h: 2010-01-26 Jocelyn Turcotte Reviewed by Tor Arne Vestbø. [Qt] Corrects debug build of DumpRenderTree on Windows. * DumpRenderTree/qt/DumpRenderTree.pro: 2010-01-26 Daniel Bates Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=34070 Moves the try/catch for OSError exceptions in Executive.run_command to Credentials.read_credentials() so that the unit test webkitpy.scm_unittest.SCMClassTests.test_error_handlers can assert that Executive.run_command throws an OSError exception. * Scripts/webkitpy/credentials.py: * Scripts/webkitpy/executive.py: Moved try/catch for OSError to method Credentials.read_credentials(). * Scripts/webkitpy/executive_unittest.py: Removed tests that no longer apply: test_run_command_with_bad_command_check_return_code and test_run_command_with_bad_command_check_calls_error_handler. Added new test to assert that run_command throws OSError exceptions. 2010-01-26 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT WebHistory support https://bugs.webkit.org/show_bug.cgi?id=34167 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::webHistoryItemCount): (LayoutTestController::keepWebHistory): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-26 Kent Tamura Reviewed by Eric Seidel. [Win] Add modifiers parameter support to Windows DumpRenderTree https://bugs.webkit.org/show_bug.cgi?id=34068 Add support for functional name modifiers; "addSelectionKey" and "rangeSelectionKey", and modifiers parameter to eventSender.mouseDown() and eventSender.mouseUp(). This change is similar to r53498 for Mac. * DumpRenderTree/win/EventSender.cpp: (buildModifierFlags): New function to set MK_CONTROL or MK_SHIFT to WPARAM. (mouseDownCallback): Call buidlModifiersFlags(). (mouseUpCallback): ditto. (keyDownCallback): Add support for "addSelectionkey" and "rangeSelectionKey". 2010-01-26 Chris Jerdonek Reviewed by Eric Seidel. The Python autoinstall cache directory now only gets created in the directory containing autoinstall.py. https://bugs.webkit.org/show_bug.cgi?id=33365 * Scripts/webkitpy/autoinstall.py: - Also added a README file to the cache directory saying where it came from. 2010-01-26 Chris Jerdonek Reviewed by Eric Seidel. Moved the check-webkit-style processors into a new webkitpy/style/processors directory. https://bugs.webkit.org/show_bug.cgi?id=34060 * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: * Scripts/webkitpy/style/cpp_style.py: Removed. * Scripts/webkitpy/style/cpp_style_unittest.py: Removed. * Scripts/webkitpy/style/processors: Added. * Scripts/webkitpy/style/processors/__init__.py: Added. * Scripts/webkitpy/style/processors/cpp.py: Copied from WebKitTools/Scripts/webkitpy/style/cpp_style.py. * Scripts/webkitpy/style/processors/cpp_unittest.py: Copied from WebKitTools/Scripts/webkitpy/style/cpp_style_unittest.py. * Scripts/webkitpy/style/processors/text.py: Copied from WebKitTools/Scripts/webkitpy/style/text_style.py. * Scripts/webkitpy/style/processors/text_unittest.py: Copied from WebKitTools/Scripts/webkitpy/style/text_style_unittest.py. * Scripts/webkitpy/style/text_style.py: Removed. * Scripts/webkitpy/style/text_style_unittest.py: Removed. * Scripts/webkitpy/style/unittests.py: 2010-01-26 Kevin Ollivier [wx] Build fix, make sure stub function returns a value. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::counterValueForElementById): 2010-01-26 Steve Falkenburg Reviewed by Oliver Hunt. Windows build references non-existent include paths https://bugs.webkit.org/show_bug.cgi?id=34175 * DumpRenderTree/win/DumpRenderTree.vcproj: * DumpRenderTree/win/ImageDiff.vcproj: * DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj: 2010-01-26 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Separating out the UrlLoader from the QtLauncher in it's own implementation and header file. * QtLauncher/main.cpp: (main): * QtLauncher/urlloader.cpp: Added. (UrlLoader::UrlLoader): (UrlLoader::loadNext): (UrlLoader::init): (UrlLoader::getUrl): * QtLauncher/urlloader.h: Added. 2010-01-25 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored check-webkit-style by removing the file path parameter from the style error handler functions. https://bugs.webkit.org/show_bug.cgi?id=34031 * Scripts/webkitpy/style/checker.py: - Added _default_style_error_handler() to StyleChecker class. - Moved handle_style_error() to inside _default_style_error_handler(). * Scripts/webkitpy/style/checker_unittest.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/cpp_style.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/cpp_style_unittest.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/text_style.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/text_style_unittest.py: - Removed file path from calls to error handler. 2010-01-25 Jeremy Orlow Adding myself as reviewer. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-25 Chris Jerdonek Reviewed by Adam Barth. Improved prepare-ChangeLog so that it preserves the relative indentation of a git commit message. https://bugs.webkit.org/show_bug.cgi?id=34058 * Scripts/prepare-ChangeLog: - Also adjusted the script so that it does not add white space characters to empty lines. 2010-01-24 Eric Seidel No review, rolling out r53763. http://trac.webkit.org/changeset/53763 https://bugs.webkit.org/show_bug.cgi?id=33895 Broke 20+ tests on Windows. * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/mock_bugzillatool.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/executive.py: * Scripts/webkitpy/grammar.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/comments.py: * Scripts/webkitpy/committers.py: * Scripts/webkitpy/credentials.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. Make changelogs.py pass pep8. * Scripts/webkitpy/changelogs.py: 2010-01-23 Kenneth Rohde Christiansen [Qt] Unreviewed build fix * QtLauncher/QtLauncher.pro: * QtLauncher/webinspector.h: 2010-01-23 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] Move the WebInspector class to it's own header file. * QtLauncher/main.cpp: * QtLauncher/webinspector.h: Added. (WebInspector::WebInspector): (WebInspector::showEvent): (WebInspector::hideEvent): 2010-01-23 Robert Hogan Reviewed by Kenneth Rohde Christiansen. Qt DRT: respect window.close() and window.closed() Qt DRT needs to maintain a correct count of open windows for windowCount(). It also needs to delete windows that have been closed by window.close(). This fixes the following tests: plugins/destroy-during-npp-new.html fast/dom/Document/early-document-access.html fast/dom/Window/window-early-properties.html fast/events/open-window-from-another-frame.html fast/events/popup-blocking-click-in-iframe.html https://bugs.webkit.org/show_bug.cgi?id=32953 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): (WebCore::DumpRenderTree::windowCloseRequested): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-23 Dan Bernstein Reviewed by Mark Rowe. Added a user default for specifying a fallback frameworks path in case the bundle does not contain frameworks for the current Mac OS X version. * WebKitLauncher/main.m: (fallbackMacOSXVersion): Added. Looks up the fallback version in a dictionary keyed by the FallbackSystemVersions user default and returns it. (main): If a frameworks directory for the current system version is not found, try the fallback. 2010-01-22 Tor Arne Vestbø Reviewed by Simon Hausmann. Make run-webkit-tests work under Cygwin for the Qt port setPathForRunningWebKitApp() is implemented for the Qt port by using qmake to query for the location of the Qt libraries. This requires the original environment (%ENV) to be untouched, so launchWithCurrentEnv() was refactored to launchWithEnv(), and the code in openDumpTool() to not use %ENV but a %CLEAN_ENV instead. This has the added benefit of getting rid of the temp variables used for storing the current env. openDumpTool() is also refactored a bit into platform-spesific, port-spesific, and generic environment variables. Checks for undef was added a few places to fix Perl concat warnings when run-webkit-tests is aborted. https://bugs.webkit.org/show_bug.cgi?id=33895 * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-01-22 Kevin Watters Reviewed by Kevin Ollivier. [wx] Remove the Bakefile build system, which is no longer being used. https://bugs.webkit.org/show_bug.cgi?id=34022 * DumpRenderTree/wx/DumpRenderTree.bkl: Removed. * wx/browser/browser.bkl: Removed. * wx/build-wxwebkit: Removed. 2010-01-22 Gustavo Noronha Silva Reviewed by Simon Fraser. Reset zoom level to 1.0 when resetting view state. This is causing many tests to fail after svg/custom/text-zoom.xhtml changes the zoom level. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-01-22 Steve Falkenburg Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=34025 Enable client-based Geolocation abstraction for Mac, Windows AppleWebKit targets. * Scripts/build-webkit: 2010-01-22 Adam Barth Unreviewed. Arg. Someone renamed limit to output_limit on me. * Scripts/webkitpy/commands/queues.py: 2010-01-22 Adam Barth Rubber stamped by Eric Seidel. Make __init__.py and buildbot.py pass pep8 style checker. * Scripts/webkitpy/__init__.py: * Scripts/webkitpy/buildbot.py: 2010-01-21 Joe Mason Reviewed by Adam Barth. webkit-patch should retry on invalid password https://bugs.webkit.org/show_bug.cgi?id=33955 Ask for bugs.webkit.org authentication in a loop. * Scripts/webkitpy/bugzilla.py: 2010-01-22 Adam Barth Unreviewed. Don't call seek on a NoneType. * Scripts/webkitpy/statusserver.py: 2010-01-22 Petri Latvala Reviewed by David Levin. check-webkit-style breaks on files with unknown types https://bugs.webkit.org/show_bug.cgi?id=34001 For files with type FileType.NONE, dispatch_processor returns None. * Scripts/webkitpy/style/checker.py: Don't call process_file with a processor of value None. 2010-01-22 Adam Barth Reviewed by Eric Seidel. Make bugzilla.py and webkitport.py conform to pep8 https://bugs.webkit.org/show_bug.cgi?id=34015 This patch makes webkitport.py and bugzilla.py mostly conform to PEP8 style as enforced by pep8.py. I wasn't able to get rid of all the errors because I'm not sure how to wrap some lines properly. Also, there are a few deprication errors that I couldn't resolve easily. However, this is a massive improvement in compliance. * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/webkitport.py: 2010-01-22 Adam Barth Reviewed by Darin Adler. Limit length of EWS results to 5MB https://bugs.webkit.org/show_bug.cgi?id=34016 Hopefully this will fix the bug where the results link doesn't appear. Our current theory is that the results blob is too big and the server is rejecting the request with a 500 error. That causes us to re-try the post, but when we re-try the StringIO buffer has its seek pointer at the end. * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/statusserver.py: 2010-01-22 Chris Jerdonek Reviewed by Adam Barth. Made check-webkit-style able to check patches when script not run from source root. Also consolidated external references to a single file. https://bugs.webkit.org/show_bug.cgi?id=33791 * Scripts/check-webkit-style: - Changed to import style_references.py. * Scripts/webkitpy/style/__init__.py: - Removed __path__ hack that allowed searching Scripts/ directory. * Scripts/webkitpy/style/checker.py: - Changed to import style_references.py. * Scripts/webkitpy/style_references.py: Added. 2010-01-22 Dmitry Titov Reviewed by Maciej Stachowiak. Fix the leak of ThreadIdentifiers in threadMap across threads. https://bugs.webkit.org/show_bug.cgi?id=32689 Add a new test to verify the ThreadIdentifiers are not reused across threads. The test runs in the beginning of DumpRenderTree and spawns 2 non-WTF treads sequentially, waiting for the previous thread to terminate before starting the next. The treads use WTF::currentThread() in their thread function. Without a fix, this causes both threads to have the same ThreadIdentifier which triggers ASSERT in thread function. It also starts another thread using WTF. Without the fix, this finds pthread handle from previous threads in the WTF threadMap and asserts in WTF::establishIdentifierForPthreadHandle(). The test practically does not affect the DRT run time because the threads end immediately. * DumpRenderTree/mac/DumpRenderTree.mm: (runThread): Test thread function. (testThreadIdentifierMap): (dumpRenderTree): 2010-01-22 Kent Tamura Reviewed by Maciej Stachowiak. Fix a bug that mouseDown:withModifiers: is never called. https://bugs.webkit.org/show_bug.cgi?id=33989 * DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): 2010-01-22 Kenneth Rohde Christiansen Rubberstamped by Antti Koivisto. [Qt] Separate out the WebPage class into it's own cpp/header files. Also, removed the assumption that the view is a QWebView, in preparation of a merger of the two Qt WebKit launchers. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (WebView::mousePressEvent): * QtLauncher/webpage.cpp: Added. (WebPage::supportsExtension): (WebPage::extension): (WebPage::acceptNavigationRequest): (WebPage::openUrlInDefaultBrowser): * QtLauncher/webpage.h: Added. (WebPage::WebPage): 2010-01-21 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored to move file name and file-reading related code from cpp_style.py and text_style.py to checker.py. https://bugs.webkit.org/show_bug.cgi?id=33775 * Scripts/check-webkit-style: - Updates caused by changes to checker.py. * Scripts/webkitpy/style/checker.py: - Added SKIPPED_FILES_WITH_WARNING list. - Added SKIPPED_FILES_WITHOUT_WARNING list. - Added FileType class. - Added ProcessorDispatcher class. - In StyleChecker class: - Renamed process_patch() to check_patch(). - Renamed process_file() to check_file(). - Added _process_file(). - Related refactoring. - Addressed check_patch() FIXME to share code with process_file(). * Scripts/webkitpy/style/checker_unittest.py: - Added ProcessorDispatcherSkipTest class. - Added ProcessorDispatcherDispatchTest class. - Added StyleCheckerCheckFileTest class. * Scripts/webkitpy/style/cpp_style.py: - Renamed process_file_data() to _process_lines. - Removed process_file() (moved logic to checker.py). - Removed can_handle() (moved logic to checker.py). - Added CppProcessor class. - Removed is_exempt() (moved logic to checker.py). - Added process_file_data() back as a wrapper function. * Scripts/webkitpy/style/cpp_style_unittest.py: - Removed test_can_handle(). - Removed test_is_exempt(). - Added CppProcessorTest class. * Scripts/webkitpy/style/text_style.py: - Added TextProcessor class. - Removed process_file(). - Removed can_handle(). * Scripts/webkitpy/style/text_style_unittest.py: - Removed test_can_handle(). - Added TextProcessorTest class. 2010-01-21 Chris Jerdonek Reviewed by David Kilzer. Create a unit-tested subroutine to parse patch files created by svn-create-patch. https://bugs.webkit.org/show_bug.cgi?id=33475 * Scripts/VCSUtils.pm: - Added parseDiff(). - Added parsePatch(). * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: Added. - Added unit tests for parseDiff(). * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Total number of tests now computed dynamically. * Scripts/webkitperl/VCSUtils_unittest/parsePatch.pl: Added. - Added unit tests for parsePatch(). 2010-01-21 Kevin Ollivier [wx] Build fix, add new directory to dir list. * wx/build/settings.py: 2010-01-21 Adam Barth Reviewed by Eric Seidel. Make the EWS transactional https://bugs.webkit.org/show_bug.cgi?id=33978 Now if the EWS gets interrupted in the middle of processing a patch, the bots will re-process the patch. * Scripts/test-webkitpy: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/commands/queues_unittest.py: * Scripts/webkitpy/patchcollection.py: * Scripts/webkitpy/patchcollection_unittest.py: Added. 2010-01-21 Adam Barth Unreviewed. Add missing "ago" for style in the status bubble. * QueueStatusServer/templates/statusbubble.html: 2010-01-21 Adam Barth Reviewed by David Levin. [style-queue] should not complain about identifier names with underscores under WebKit/gtk/webkit/ https://bugs.webkit.org/show_bug.cgi?id=33356 White list unix_hacker_style names in WebKit/gtk/webkit because these are used in the GTK+ API. * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-21 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] add setDomainRelaxationForbiddenForURLScheme in Qt DRT https://bugs.webkit.org/show_bug.cgi?id=33945 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setDomainRelaxationForbiddenForURLScheme): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-21 Simon Hausmann No review, rolling out 53615 as it causes two crashes on the bot. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-21 Robert Hogan Reviewed by Simon Hausmann. Qt DRT: respect window.close() and window.closed() Qt DRT needs to maintain a correct count of open windows for windowCount(). It also needs to delete windows that have been closed by window.close(). This fixes the following tests: plugins/destroy-during-npp-new.html fast/dom/Document/early-document-access.html fast/dom/Window/window-early-properties.html fast/events/open-window-from-another-frame.html fast/events/popup-blocking-click-in-iframe.html https://bugs.webkit.org/show_bug.cgi?id=32953 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): (WebCore::DumpRenderTree::windowCloseRequested): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-20 Eric Seidel No review, rolling out r53593. http://trac.webkit.org/changeset/53593 https://bugs.webkit.org/show_bug.cgi?id=33496 Re-rollout this patch, the commit-queue should not have landed it again, but it did due to land-diff and rollout both not clearing flags. * Scripts/webkitpy/commands/early_warning_system.py: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/queueengine.py: * Scripts/webkitpy/scm.py: * Scripts/webkitpy/scm_unittest.py: 2010-01-20 Eric Seidel Reviewed by Adam Barth. webkit-commit-queue status page is confusing https://bugs.webkit.org/show_bug.cgi?id=33496 This should improve the status page by removing more Fail messages. To do this, I re-factored the CommitQueue and the AbstractReviewQueues to behave more like one another. This meant moving where the failure reporting was done. Previously the AbstractReviewQueue always used the parent process to report the error, while CommitQueue used the subprocess when possible, and the parent only reported errors that we didn't know how to handle (bugs in the commit-queue itself). Now the AbstractReviewQueue follow's the commit-queue's model. This got rid of a try-block in both implementations and required teaching handle_script_error in each to post Fail messages to the status server instead of calling exit(1). This will also make the style-queue share more bug posting logic with other queues: https://bugs.webkit.org/show_bug.cgi?id=33871 * Scripts/webkitpy/commands/early_warning_system.py: - Don't exit(1) as that will cause the calling queue to also report Fail to the status server. Implementors of handle_script_error are expected to update the status server if needed, but only exit if the error could not be handled. So we instead pass patch_has_failed_this_queue=True to _update_status_for_script_error in the case that this was a real failure. _update_status_for_script_error knows how to post the Fail message to the status server. - Teach _update_status_for_script_error how to post Fail messages to the status server. * Scripts/webkitpy/commands/queues.py: - Remove the try block from process_work_item since the caller already has one. - Only CC watchers on failure to cut down on commit-queue generated mail. - handle_unexpected_error needs to mark _did_fail now that the try block is gone from process_work_item. - Abstract _format_script_error_output_for_bug to share code between all queues. - The new _format_script_error_output_for_bug allows the style-queue to share the posting limit with other queues, as well as support linking to the full output. - Rename _can_build_and_test to _current_checkout_builds_and_passes_tests to better explain what revision it's testing. - Move logging out of _can_build_and_test and make the logs explain what revision we're testing. - handle_script_error now posts Fail instead of the try block in process_work_item handling it. * Scripts/webkitpy/queueengine.py: - QueueEngine is no longer used just by the commit-queue, update the logging to say "processing" instead of landing. * Scripts/webkitpy/scm.py: - Add new checkout_revision function. * Scripts/webkitpy/scm_unittest.py: - Test our new checkout_revision function. 2010-01-20 Fumitoshi Ukai Reviewed by Alexey Proskuryakov. WebSocket: Missing Request-URI, when no tralling slash in host https://bugs.webkit.org/show_bug.cgi?id=33689 Update pywebsocket to 0.4.7.1, which supports alias for resource name, so that we could test for ws://127.0.0.1:8880 * Scripts/run-webkit-tests: * Scripts/run-webkit-websocketserver: * pywebsocket/mod_pywebsocket/dispatch.py: * pywebsocket/mod_pywebsocket/handshake.py: * pywebsocket/mod_pywebsocket/standalone.py: * pywebsocket/setup.py: * pywebsocket/test/test_dispatch.py: * pywebsocket/test/test_handshake.py: 2010-01-20 Eric Seidel No review, rolling out r53537. http://trac.webkit.org/changeset/53537 https://bugs.webkit.org/show_bug.cgi?id=33496 Added a failure condition to the commit-queue and looks to have broken the EWS bots * Scripts/webkitpy/commands/early_warning_system.py: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/queueengine.py: * Scripts/webkitpy/scm.py: * Scripts/webkitpy/scm_unittest.py: 2010-01-20 Jon Honeycutt MSAA: accSelect() is not implemented https://bugs.webkit.org/show_bug.cgi?id=33918 Reviewed by Darin Adler. * DumpRenderTree/AccessibilityUIElement.cpp: (takeFocusCallback): Call the object's takeFocus() function. (takeSelectionCallback): Call its takeSelection() function. (addSelectionCallback): Call its addSelection() function. (removeSelectionCallback): Call its removeSelection() function. (AccessibilityUIElement::getJSClass): Add new functions to the JS class definition. * DumpRenderTree/AccessibilityUIElement.h: Declare new functions. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::takeFocus): Stubbed. (AccessibilityUIElement::takeSelection): Stubbed. (AccessibilityUIElement::addSelection): Stubbed. (AccessibilityUIElement::removeSelection): Stubbed. * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::takeFocus): Stubbed. (AccessibilityUIElement::takeSelection): Stubbed. (AccessibilityUIElement::addSelection): Stubbed. (AccessibilityUIElement::removeSelection): Stubbed. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::takeFocus): Call the object's accSelect() function, passing the appropriate flag. (AccessibilityUIElement::takeSelection): Ditto. (AccessibilityUIElement::addSelection): Ditto. (AccessibilityUIElement::removeSelection): Ditto. 2010-01-20 Andras Becsi Reviewed by Alexey Proskuryakov. Extract Apache handling to httpd.pm module and use the provided functionality in scripts where Apache is needed. The module httpd.pm stores the PID of Apache in a variable and cleans up the PID directory after Apache properly shut down. Catching INT and TERM signals allows the scripts to close Apache and clean up its PID directory even if the testing was interrupted. https://bugs.webkit.org/show_bug.cgi?id=33153 * Scripts/webkitperl/httpd.pm: Added. * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: 2010-01-20 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Make DumpRenderTree build on Windows * DumpRenderTree/qt/DumpRenderTree.pro: * DumpRenderTree/qt/DumpRenderTreeQt.cpp: * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/main.cpp: 2010-01-20 Steve Block Reviewed by Eric Seidel. Fix commit bot to land patches in order of the bug last modification date. https://bugs.webkit.org/show_bug.cgi?id=33395 * Scripts/webkitpy/bugzilla.py: Modified. Added 'order=Last+Changed' to bugzilla commit queue URL. 2010-01-20 Adam Barth Reviewed by Eric Seidel. Teach check-webkit-style about WebKit/gtk/tests https://bugs.webkit.org/show_bug.cgi?id=33892 Removes false positives found in https://bugs.webkit.org/show_bug.cgi?id=30883 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-20 Adam Barth Reviewed by Eric Seidel. Teach check-webkit-style about QGVLauncher https://bugs.webkit.org/show_bug.cgi?id=33890 Remove false positives found in https://bugs.webkit.org/show_bug.cgi?id=33708 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-20 Eric Seidel Reviewed by Adam Barth. webkit-commit-queue status page is confusing https://bugs.webkit.org/show_bug.cgi?id=33496 This should improve the status page by removing more Fail messages. To do this, I re-factored the CommitQueue and the AbstractReviewQueues to behave more like one another. This meant moving where the failure reporting was done. Previously the AbstractReviewQueue always used the parent process to report the error, while CommitQueue used the subprocess when possible, and the parent only reported errors that we didn't know how to handle (bugs in the commit-queue itself). Now the AbstractReviewQueue follow's the commit-queue's model. This got rid of a try-block in both implementations and required teaching handle_script_error in each to post Fail messages to the status server instead of calling exit(1). This will also make the style-queue share more bug posting logic with other queues: https://bugs.webkit.org/show_bug.cgi?id=33871 * Scripts/webkitpy/commands/early_warning_system.py: - Don't exit(1) as that will cause the calling queue to also report Fail to the status server. Implementors of handle_script_error are expected to update the status server if needed, but only exit if the error could not be handled. So we instead pass patch_has_failed_this_queue=True to _update_status_for_script_error in the case that this was a real failure. _update_status_for_script_error knows how to post the Fail message to the status server. - Teach _update_status_for_script_error how to post Fail messages to the status server. * Scripts/webkitpy/commands/queues.py: - Remove the try block from process_work_item since the caller already has one. - Only CC watchers on failure to cut down on commit-queue generated mail. - handle_unexpected_error needs to mark _did_fail now that the try block is gone from process_work_item. - Abstract _format_script_error_output_for_bug to share code between all queues. - The new _format_script_error_output_for_bug allows the style-queue to share the posting limit with other queues, as well as support linking to the full output. - Rename _can_build_and_test to _current_checkout_builds_and_passes_tests to better explain what revision it's testing. - Move logging out of _can_build_and_test and make the logs explain what revision we're testing. - handle_script_error now posts Fail instead of the try block in process_work_item handling it. * Scripts/webkitpy/queueengine.py: - QueueEngine is no longer used just by the commit-queue, update the logging to say "processing" instead of landing. * Scripts/webkitpy/scm.py: - Add new checkout_revision function. * Scripts/webkitpy/scm_unittest.py: - Test our new checkout_revision function. 2010-01-20 Adam Barth Reviewed by Darin Adler. Exempt JavaScriptCore/qt/api from style checks https://bugs.webkit.org/show_bug.cgi?id=33879 Apparently there is a JavaScriptCore API for Qt as well as a WebKit API. * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-19 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Don't use QSocketNotifier in the DRT for reading stdin QSocketNotifier is not available on Windows. Instead we read stdin synchronously after each test using signals and slots. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/main.cpp: 2010-01-19 Adam Barth Rubber stamped by Eric Seidel. Move chromium-ews back to building release only to make the EWS faster. * Scripts/webkitpy/commands/early_warning_system.py: 2010-01-17 Jon Honeycutt MSAA: The child