Add testRunner.cancelAllActiveNotifications to cancel all active notifications.

This is to be used from automated GC leak testing to avoid false-positives from documents referenced from un-closed notifications.

BUG=270000

Review URL: https://chromiumcodereview.appspot.com/22852029

git-svn-id: svn://svn.chromium.org/blink/trunk@156684 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add Python compiler to run-bindings-tests

This adds Python checks to run-bindings-tests.
This means we can guarantee that the compilers are in sync!
We also can skip test IDLs that aren't fully implemented.

We may want to split this CL up (CG fixes separate from adding Python
to tests), if it's too much for one go.

This also refactors main.py in run-bindings-tests (to make adding easier),
and fixes some inconsistencies and bugs in the Perl and Python CGs.

The inconsistencies are mostly blank lines (easy fix, but rebaseline),
but there is one significant one, and it was an unnoticed bug, due to
path handling.

Namely, the "own class" header include was *wrong* in all tests;
it read like:
>include "bindings/bindings/tests/idls/TestInterfaceEmpty.h"
...with a duplicated "bindings".
Also in normal bindings code we had the ugly "bindings/../core".
This is because there was a hard-coded assumption that the scripts
were being called from "bindings" (via GYP), but run-bindings-tests
actually runs from a different directory, hence the discrepancy.

I fixed this by doing the path handling properly, and now it's correct,
clean, and consistent.

I've added one test here, TestInterfaceEmpty.idl, just so the Python
code actually runs on *something*. We can activate or add future tests
as we implement them, and it'll help review, but I wanted to keep this
CL as compact as possible.

Review URL: https://chromiumcodereview.appspot.com/23232007

git-svn-id: svn://svn.chromium.org/blink/trunk@156685 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Refactoring: Move the following InputType member functions to InputTypeUI, and InputType inherits InputTypeUI.

    bool sizeShouldIncludeDecoration(int defaultSize, int& preferredSize) const
    void handleClickEvent(MouseEvent*)
    void handleMouseDownEvent(MouseEvent*)
    PassOwnPtr<ClickHandlingState> willDispatchClick()
    void didDispatchClick(Event*, const ClickHandlingState&)
    void handleDOMActivateEvent(Event*)
    void handleKeydownEvent(KeyboardEvent*)
    void handleKeypressEvent(KeyboardEvent*)
    void handleKeyupEvent(KeyboardEvent*)
    void handleBeforeTextInsertedEvent(BeforeTextInsertedEvent*)
    void handleTouchEvent(TouchEvent*)
    void forwardEvent(Event*)
    bool shouldSubmitImplicitly(Event*)
    PassRefPtr<HTMLFormElement> formForSubmission() const
    bool hasCustomFocusLogic() const
    void handleFocusEvent(Element* oldFocusedElement, FocusDirection)
    void handleBlurEvent()
    void subtreeHasChanged()
    bool hasTouchEventHandler() const
    void blur()
    RenderObject* createRenderer(RenderStyle*) const
    PassRefPtr<RenderStyle> customStyleForRenderer(PassRefPtr<RenderStyle>)
    void attach()
    void minOrMaxAttributeChanged()
    void stepAttributeChanged()
    void altAttributeChanged()
    void srcAttributeChanged()
    void updateInnerTextValue()
    void attributeChanged()
    void multipleAttributeChanged()
    void disabledAttributeChanged()
    void readonlyAttributeChanged()
    void requiredAttributeChanged()
    void valueAttributeChanged()
    void listAttributeTargetChanged()
    void updateClearButtonVisibility()

As for shouldSubmitImplicitly and hasCustomFocusLogic, InputTypeUI
provides implementations which do nothing, rather than have common
behavior because the InputTypeUI implementation will be used for no-op
UI.

BUG=274205
TEST=none; should have no behavior changes.

Review URL: https://chromiumcodereview.appspot.com/23345006

git-svn-id: svn://svn.chromium.org/blink/trunk@156687 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Enable part pseudo element to override styles declared in a shadow tree.

Changed compareRules logic about CascadeScope and always use 0 CascadeScope for rules from part pseduo elements.

W3C spec: https://www.w3.org/Bugs/Public/show_bug.cgi?id=23045

BUG=273138
TEST=fast/dom/shadow/part-override-style-in-shadow-tree.html

Review URL: https://chromiumcodereview.appspot.com/23004019

git-svn-id: svn://svn.chromium.org/blink/trunk@156688 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add toWebViewImpl(), and use it.

We can avoid static_cast by this change.
Unlike other toClassName functions, we can't add an assertion to confirm the
speicified WebView is actually a WebViewImpl. It's always true.

BUG=none
TEST=none; no behavior changes.

Review URL: https://chromiumcodereview.appspot.com/22893059

git-svn-id: svn://svn.chromium.org/blink/trunk@156689 bbb929c8-8fbe-4397-9dbb-9b2b20218538