Reviewed by Darin, Ken.
authorharrison <harrison@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 19 Mar 2005 00:34:07 +0000 (00:34 +0000)
committerharrison <harrison@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 19 Mar 2005 00:34:07 +0000 (00:34 +0000)
        <rdar://problem/3735625> AX: add AXPress action if an element has an onclick handler

        * khtml/dom/html_form.cpp:
        (HTMLInputElement::click):
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::click):
        (HTMLElementImpl::accessKeyAction):
        * khtml/html/html_elementimpl.h:
        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLFormElementImpl::submitClick):
        (DOM::HTMLButtonElementImpl::click):
        (DOM::HTMLButtonElementImpl::accessKeyAction):
        (DOM::HTMLInputElementImpl::click):
        (DOM::HTMLInputElementImpl::accessKeyAction):
        (DOM::HTMLInputElementImpl::defaultEventHandler):
        (DOM::HTMLLabelElementImpl::accessKeyAction):
        (DOM::HTMLSelectElementImpl::accessKeyAction):
        (DOM::HTMLTextAreaElementImpl::accessKeyAction):
        * khtml/html/html_formimpl.h:
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::defaultEventHandler):
        (HTMLAnchorElementImpl::accessKeyAction):
        * khtml/html/html_inlineimpl.h:
        * khtml/rendering/render_form.cpp:
        (RenderFileButton::click):
        * khtml/rendering/render_form.h:
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::defaultEventHandler):
        * khtml/xml/dom_elementimpl.h:
        (DOM::ElementImpl::accessKeyAction):
        * kwq/DOMHTML.mm:
        (-[DOMHTMLInputElement click]):
        * kwq/KWQButton.h:
        * kwq/KWQButton.mm:
        (QButton::click):
        * kwq/KWQFileButton.h:
        * kwq/KWQFileButton.mm:
        (KWQFileButton::click):

        Add accessKeyAction parameter about whether to limit to HTMLElementImpl subclasses that JavaScript wants, or to apply to others as well.

        Add click() parameter about whether to send the mousedown and mouseup events in addition to the click event.

        * kwq/KWQAccObject.mm:
        (-[KWQAccObject mouseButtonListener]):
        Locate a mousedown, mouseup, or click handler in the current element and its ancestors.

        (-[KWQAccObject actionElement]):
        (-[KWQAccObject accessibilityIsIgnored]):
        (-[KWQAccObject accessibilityPerformAction:]):
        Consider mouseButtonListener.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8923 268f45cc-cd09-0410-ab3c-d52691b4dbfc

18 files changed:
WebCore/ChangeLog-2005-08-23
WebCore/khtml/dom/html_form.cpp
WebCore/khtml/html/html_elementimpl.cpp
WebCore/khtml/html/html_elementimpl.h
WebCore/khtml/html/html_formimpl.cpp
WebCore/khtml/html/html_formimpl.h
WebCore/khtml/html/html_inlineimpl.cpp
WebCore/khtml/html/html_inlineimpl.h
WebCore/khtml/rendering/render_form.cpp
WebCore/khtml/rendering/render_form.h
WebCore/khtml/xml/dom_docimpl.cpp
WebCore/khtml/xml/dom_elementimpl.h
WebCore/kwq/DOMHTML.mm
WebCore/kwq/KWQAccObject.mm
WebCore/kwq/KWQButton.h
WebCore/kwq/KWQButton.mm
WebCore/kwq/KWQFileButton.h
WebCore/kwq/KWQFileButton.mm

index b811b7d1d88ec1052f726de7679597ff95aec66e..04ee33f25579817a7f568fba8878ba0e42c71ff1 100644 (file)
@@ -1,3 +1,59 @@
+2005-03-18  David Harrison  <harrison@apple.com>
+
+        Reviewed by Darin, Ken.
+
+        <rdar://problem/3735625> AX: add AXPress action if an element has an onclick handler
+
+        * khtml/dom/html_form.cpp:
+        (HTMLInputElement::click):
+        * khtml/html/html_elementimpl.cpp:
+        (HTMLElementImpl::click):
+        (HTMLElementImpl::accessKeyAction):
+        * khtml/html/html_elementimpl.h:
+        * khtml/html/html_formimpl.cpp:
+        (DOM::HTMLFormElementImpl::submitClick):
+        (DOM::HTMLButtonElementImpl::click):
+        (DOM::HTMLButtonElementImpl::accessKeyAction):
+        (DOM::HTMLInputElementImpl::click):
+        (DOM::HTMLInputElementImpl::accessKeyAction):
+        (DOM::HTMLInputElementImpl::defaultEventHandler):
+        (DOM::HTMLLabelElementImpl::accessKeyAction):
+        (DOM::HTMLSelectElementImpl::accessKeyAction):
+        (DOM::HTMLTextAreaElementImpl::accessKeyAction):
+        * khtml/html/html_formimpl.h:
+        * khtml/html/html_inlineimpl.cpp:
+        (HTMLAnchorElementImpl::defaultEventHandler):
+        (HTMLAnchorElementImpl::accessKeyAction):
+        * khtml/html/html_inlineimpl.h:
+        * khtml/rendering/render_form.cpp:
+        (RenderFileButton::click):
+        * khtml/rendering/render_form.h:
+        * khtml/xml/dom_docimpl.cpp:
+        (DocumentImpl::defaultEventHandler):
+        * khtml/xml/dom_elementimpl.h:
+        (DOM::ElementImpl::accessKeyAction):
+        * kwq/DOMHTML.mm:
+        (-[DOMHTMLInputElement click]):
+        * kwq/KWQButton.h:
+        * kwq/KWQButton.mm:
+        (QButton::click):
+        * kwq/KWQFileButton.h:
+        * kwq/KWQFileButton.mm:
+        (KWQFileButton::click):
+        
+        Add accessKeyAction parameter about whether to limit to HTMLElementImpl subclasses that JavaScript wants, or to apply to others as well.
+        
+        Add click() parameter about whether to send the mousedown and mouseup events in addition to the click event.
+        
+        * kwq/KWQAccObject.mm:
+        (-[KWQAccObject mouseButtonListener]):
+        Locate a mousedown, mouseup, or click handler in the current element and its ancestors.
+        
+        (-[KWQAccObject actionElement]):
+        (-[KWQAccObject accessibilityIsIgnored]):
+        (-[KWQAccObject accessibilityPerformAction:]):
+        Consider mouseButtonListener.
+
 2005-03-18  John Sullivan  <sullivan@apple.com>
 
         Reviewed by Darin.
index 420d953799ec90418568ba9d23cc442fbf42c674..ea6caa8b54373c219233df09de7915a4da0f9a62 100644 (file)
@@ -543,7 +543,7 @@ void HTMLInputElement::select(  )
 void HTMLInputElement::click(  )
 {
     if(impl)
-       ((HTMLInputElementImpl *)impl)->click(  );
+       ((HTMLInputElementImpl *)impl)->click( false );
 }
 
 // --------------------------------------------------------------------------
index 62c50a05d5f5bb3f2adc43a1206e506291d0c226..bfe4b94c0bbaf9fe4ab497e31511fed7af83a1c4 100644 (file)
@@ -1073,15 +1073,38 @@ void HTMLElementImpl::setContentEditable(const DOMString &enabled) {
         setAttribute(ATTR_CONTENTEDITABLE, enabled.isEmpty() ? "true" : enabled);
 }
 
-void HTMLElementImpl::click()
+void HTMLElementImpl::click(bool sendMouseEvents)
 {
     int x = 0;
     int y = 0;
-    if (renderer())
-        renderer()->absolutePosition(x,y);
+    RenderObject *r = renderer();
+    if (r)
+        r->absolutePosition(x,y);
+
+    // send mousedown and mouseup before the click, if requested
+    if (sendMouseEvents) {
+        QMouseEvent pressEvt(QEvent::MouseButtonPress, QPoint(x,y), Qt::LeftButton, 0);
+        dispatchMouseEvent(&pressEvt, EventImpl::MOUSEDOWN_EVENT);
+        QMouseEvent upEvent(QEvent::MouseButtonRelease, QPoint(x,y), Qt::LeftButton, 0);
+        dispatchMouseEvent(&upEvent, EventImpl::MOUSEUP_EVENT);
+    }
+    
     // always send click
-    QMouseEvent evt(QEvent::MouseButtonRelease, QPoint(x,y), Qt::LeftButton, 0);
-    dispatchMouseEvent(&evt, EventImpl::KHTML_CLICK_EVENT);
+    QMouseEvent clickEvent(QEvent::MouseButtonRelease, QPoint(x,y), Qt::LeftButton, 0);
+    dispatchMouseEvent(&clickEvent, EventImpl::KHTML_CLICK_EVENT);
+}
+
+// accessKeyAction is used by the accessibility support code
+// to send events to elements that our JavaScript caller does
+// does not.  The elements JS is interested in have subclasses
+// that override this method to direct the click appropriately.
+// Here in the base class, then, we only send the click if
+// the caller wants it to go to any HTMLElementImpl, and we say
+// to send the mouse events in addition to the click.
+void HTMLElementImpl::accessKeyAction(bool sendToAnyElement)
+{
+    if (sendToAnyElement)
+        click(true);
 }
 
 DOMString HTMLElementImpl::toString() const
index 8adbbbcf5ddb7a08fb847a465ccce6387ff22f93..bf8270650d4daec8efbaaaa8c2f2269ba396c563 100644 (file)
@@ -165,7 +165,8 @@ public:
     virtual void setContentEditable(HTMLAttributeImpl* attr);
     virtual void setContentEditable(const DOMString &enabled);
 
-    virtual void click();
+    virtual void click(bool sendMouseEvents);
+    virtual void accessKeyAction(bool sendToAnyElement);
     
     CSSMutableStyleDeclarationImpl* inlineStyleDecl() const { return m_inlineStyleDecl; }
     virtual CSSMutableStyleDeclarationImpl* additionalAttributeStyleDecl();
index 82fb5a550ed59666fd3661c16774c5a932b9334d..52dc3f811025b668d0e893f103f8a0bcb859116a 100644 (file)
@@ -195,7 +195,7 @@ void HTMLFormElementImpl::submitClick()
             HTMLInputElementImpl *element = static_cast<HTMLInputElementImpl *>(formElements[i]);
             if (element->isSuccessfulSubmitButton() && element->renderer()) {
                 submitFound = true;
-                element->click();
+                element->click(false);
                 break;
             }
         }
@@ -1184,22 +1184,24 @@ bool HTMLButtonElementImpl::appendFormData(FormDataList& encoding, bool /*multip
     return true;
 }
 
-void HTMLButtonElementImpl::click()
+void HTMLButtonElementImpl::click(bool sendMouseEvents)
 {
 #if APPLE_CHANGES
     QWidget *widget;
     if (renderer() && (widget = static_cast<RenderWidget *>(renderer())->widget())) {
         // using this method gives us nice Cocoa user interface feedback
-        static_cast<QButton *>(widget)->click();
+        static_cast<QButton *>(widget)->click(sendMouseEvents);
     }
     else
 #endif
-        HTMLGenericFormElementImpl::click();
+        HTMLGenericFormElementImpl::click(sendMouseEvents);
 }
 
-void HTMLButtonElementImpl::accessKeyAction()
+void HTMLButtonElementImpl::accessKeyAction(bool sendToAnyElement)
 {   
-    click();
+    // send the mouse button events iff the
+    // caller specified sendToAnyElement
+    click(sendToAnyElement);
 }
 
 // -------------------------------------------------------------------------
@@ -1419,7 +1421,7 @@ void HTMLInputElementImpl::select(  )
     }
 }
 
-void HTMLInputElementImpl::click()
+void HTMLInputElementImpl::click(bool sendMouseEvents)
 {
     switch (inputType()) {
         case HIDDEN:
@@ -1435,21 +1437,21 @@ void HTMLInputElementImpl::click()
             QWidget *widget;
             if (renderer() && (widget = static_cast<RenderWidget *>(renderer())->widget())) {
                 // using this method gives us nice Cocoa user interface feedback
-                static_cast<QButton *>(widget)->click();
+                static_cast<QButton *>(widget)->click(sendMouseEvents);
                 break;
             }
         }
 #endif
-            HTMLGenericFormElementImpl::click();
+            HTMLGenericFormElementImpl::click(sendMouseEvents);
             break;
         case FILE:
 #if APPLE_CHANGES
             if (renderer()) {
-                static_cast<RenderFileButton *>(renderer())->click();
+                static_cast<RenderFileButton *>(renderer())->click(sendMouseEvents);
                 break;
             }
 #endif
-            HTMLGenericFormElementImpl::click();
+            HTMLGenericFormElementImpl::click(sendMouseEvents);
             break;
         case IMAGE:
         case ISINDEX:
@@ -1459,12 +1461,12 @@ void HTMLInputElementImpl::click()
         case RANGE:
 #endif
         case TEXT:
-            HTMLGenericFormElementImpl::click();
+            HTMLGenericFormElementImpl::click(sendMouseEvents);
             break;
     }
 }
 
-void HTMLInputElementImpl::accessKeyAction()
+void HTMLInputElementImpl::accessKeyAction(bool sendToAnyElement)
 {
     switch (inputType()) {
         case HIDDEN:
@@ -1488,9 +1490,12 @@ void HTMLInputElementImpl::accessKeyAction()
 #if APPLE_CHANGES
         case RANGE:
 #endif
-            // focus and click
+            // focus
             focus();
-            click();
+
+            // send the mouse button events iff the
+            // caller specified sendToAnyElement
+            click(sendToAnyElement);
             break;
     }
 }
@@ -2084,7 +2089,7 @@ void HTMLInputElementImpl::defaultEventHandler(EventImpl *evt)
                 // Simulate mouse click for enter or spacebar for these types of elements.
                 // The AppKit already does this for spacebar for some, but not all, of them.
                 if (key == "U+000020" || key == "Enter") {
-                    click();
+                    click(false);
                     evt->setDefaultHandled();
                 }
                 break;
@@ -2177,11 +2182,11 @@ ElementImpl *HTMLLabelElementImpl::formElement()
     return getDocument()->getElementById(formElementId);
 }
 
-void HTMLLabelElementImpl::accessKeyAction()
+void HTMLLabelElementImpl::accessKeyAction(bool sendToAnyElement)
 {
     ElementImpl *element = formElement();
     if (element)
-        element->accessKeyAction();
+        element->accessKeyAction(sendToAnyElement);
 }
 
 // -------------------------------------------------------------------------
@@ -2674,7 +2679,7 @@ void HTMLSelectElementImpl::defaultEventHandler(EventImpl *evt)
 
 #endif // APPLE_CHANGES
 
-void HTMLSelectElementImpl::accessKeyAction()
+void HTMLSelectElementImpl::accessKeyAction(bool sendToAnyElement)
 {
     focus();
 }
@@ -3152,7 +3157,7 @@ bool HTMLTextAreaElementImpl::isEditable()
     return true;
 }
 
-void HTMLTextAreaElementImpl::accessKeyAction()
+void HTMLTextAreaElementImpl::accessKeyAction(bool sendToAnyElement)
 {
     focus();
 }
index 429839608e53ef99af4210d52ba2ec8d20fc3e34..342a5ed19a2687cd4b20b12aedda11629366d139 100644 (file)
@@ -234,8 +234,8 @@ public:
     virtual bool isActivatedSubmit() const;
     virtual void setActivatedSubmit(bool flag);
 
-    virtual void click();
-    virtual void accessKeyAction();
+    virtual void click(bool sendMouseEvents);
+    virtual void accessKeyAction(bool sendToAnyElement);
     
 protected:
     DOMString m_value;
@@ -330,8 +330,8 @@ public:
 
     void select();
     
-    virtual void click();
-    virtual void accessKeyAction();
+    virtual void click(bool sendMouseEvents);
+    virtual void accessKeyAction(bool sendToAnyElement);
 
     virtual bool mapToEntry(NodeImpl::Id attr, MappedAttributeEntry& result) const;
     virtual void parseHTMLAttribute(HTMLAttributeImpl *attr);
@@ -403,7 +403,7 @@ public:
 
     virtual void parseHTMLAttribute(HTMLAttributeImpl *attr);
 
-    virtual void accessKeyAction();
+    virtual void accessKeyAction(bool sendToAnyElement);
 
     /**
      * the form element this label is associated to.
@@ -504,7 +504,7 @@ public:
     virtual void defaultEventHandler(EventImpl *evt);
 #endif
 
-    virtual void accessKeyAction();
+    virtual void accessKeyAction(bool sendToAnyElement);
 
 private:
     void recalcListItems();
@@ -654,7 +654,7 @@ public:
 
     virtual bool isEditable();
     
-    virtual void accessKeyAction();
+    virtual void accessKeyAction(bool sendToAnyElement);
     
 protected:
     int m_rows;
index 3509b4d5d59ac7f8d82cd9979b0657ee24b666f9..324e636527032264084f4b321002f7275ac53da4 100644 (file)
@@ -139,7 +139,7 @@ void HTMLAnchorElementImpl::defaultEventHandler(EventImpl *evt)
             if (k->qKeyEvent()) {
                 k->qKeyEvent()->accept();
                 evt->setDefaultHandled();
-                click();
+                click(false);
                 return;
             }
         }
@@ -232,9 +232,11 @@ void HTMLAnchorElementImpl::parseHTMLAttribute(HTMLAttributeImpl *attr)
     }
 }
 
-void HTMLAnchorElementImpl::accessKeyAction()
+void HTMLAnchorElementImpl::accessKeyAction(bool sendToAnyElement)
 {
-    click();
+    // send the mouse button events iff the
+    // caller specified sendToAnyElement
+    click(sendToAnyElement);
 }
 
 bool HTMLAnchorElementImpl::isURLAttribute(AttributeImpl *attr) const
index dc39549a57ebf03f51f22b3a16c4a9ba82b8906f..dcbeedfb254c222b084a7c682b54793d44d56fc6 100644 (file)
@@ -44,7 +44,7 @@ public:
     virtual Id id() const;
     virtual void parseHTMLAttribute(HTMLAttributeImpl *attr);
     virtual void defaultEventHandler(EventImpl *evt);
-    virtual void accessKeyAction();
+    virtual void accessKeyAction(bool fullAction);
     virtual bool isURLAttribute(AttributeImpl *attr) const;
 protected:
     bool m_hasTarget : 1;
index 857384a05a92bdbb73a9f14660ae3e96464713bf..ce2584fdac140af30e3a64f12e8e52383c69a943 100644 (file)
@@ -961,9 +961,9 @@ void RenderFileButton::select()
 
 #if APPLE_CHANGES
 
-void RenderFileButton::click()
+void RenderFileButton::click(bool sendMouseEvents)
 {
-    static_cast<KWQFileButton *>(widget())->click();
+    static_cast<KWQFileButton *>(widget())->click(sendMouseEvents);
 }
 
 #endif
index e3f3b936719fe4c03d3473e757725977e88791ec..19dc3bacb55b8eb6fcfa6a77e687f4d4dca51b93 100644 (file)
@@ -323,7 +323,7 @@ public:
 #endif
 
 #if APPLE_CHANGES
-    void click();
+    void click(bool sendMouseEvents);
 #endif
 
 public slots:
index f94c004efb24b94d8d6b0ea851cd33f8b246a175..7fce2137448d8584c4d49ca4fabde1740ce75c8f 100644 (file)
@@ -2647,7 +2647,7 @@ void DocumentImpl::defaultEventHandler(EventImpl *evt)
             QString key = kevt->qKeyEvent()->unmodifiedText().lower();
             ElementImpl *elem = getElementByAccessKey(key);
             if (elem) {
-                elem->accessKeyAction();
+                elem->accessKeyAction(false);
                 evt->setDefaultHandled();
             }
         }
index d20b990e77b5221476893100e2281908e67c38b0..f3faf097314730f0e9941a609cd6b5ffaf9c740c 100644 (file)
@@ -208,7 +208,7 @@ public:
     void dispatchAttrRemovalEvent(AttributeImpl *attr);
     void dispatchAttrAdditionEvent(AttributeImpl *attr);
 
-    virtual void accessKeyAction() {};
+    virtual void accessKeyAction(bool sendToAnyEvent) { };
 
     virtual DOMString toString() const;
 
index 8990d0ef54fe375e2bba9739752e263d8cff1e92..59cad0bea15cf851f29e625ed5619eebc75b9185 100644 (file)
@@ -1466,7 +1466,7 @@ using DOM::NodeImpl;
 
 - (void)click
 {
-    [self _inputElementImpl]->click();
+    [self _inputElementImpl]->click(false);
 }
 
 @end
index 0b1822fe4064ee1b84d66e228f41c81576c87d85..80a0dafc0a599ee9b75ae0f4f50f271b0ae5e4f1 100644 (file)
@@ -45,10 +45,12 @@ extern "C" AXUIElementRef NSAccessibilityCreateAXUIElementRef(id element);
 
 #import "dom_docimpl.h"
 #import "dom_elementimpl.h"
+#import "html_elementimpl.h"
 #import "html_formimpl.h"
 #import "html_inlineimpl.h"
 #import "html_imageimpl.h"
 #import "dom_string.h"
+#import "dom2_eventsimpl.h"
 #import "dom2_range.h"
 #import "htmlattrs.h"
 #import "htmltags.h"
@@ -77,6 +79,7 @@ using DOM::HTMLAnchorElementImpl;
 using DOM::HTMLAreaElementImpl;
 using DOM::HTMLCollection;
 using DOM::HTMLCollectionImpl;
+using DOM::HTMLElementImpl;
 using DOM::HTMLInputElementImpl;
 using DOM::HTMLMapElementImpl;
 using DOM::Node;
@@ -187,12 +190,34 @@ extern "C" void NSAccessibilityUnregisterUniqueIdForUIElement(id element);
     return m_renderer->isImage() && static_cast<RenderImage*>(m_renderer)->isImageButton();
 }
 
+-(ElementImpl *)mouseButtonListener
+{
+    // FIXME: Do the continuation search like anchorElement does
+    NodeImpl* elt = m_renderer->element();
+    for ( ; elt; elt = elt->parentNode()) {
+        if (elt->getHTMLEventListener(DOM::EventImpl::KHTML_CLICK_EVENT))
+            return static_cast<HTMLAnchorElementImpl*>(elt);
+            
+        if (elt->getHTMLEventListener(DOM::EventImpl::MOUSEDOWN_EVENT))
+            return static_cast<HTMLAnchorElementImpl*>(elt);
+            
+        if (elt->getHTMLEventListener(DOM::EventImpl::MOUSEUP_EVENT))
+            return static_cast<HTMLAnchorElementImpl*>(elt);
+    }
+    
+    return NULL;
+}
+
 -(ElementImpl *)actionElement
 {
     if ([self isImageButton])
         return static_cast<ElementImpl*>(m_renderer->element());
 
-    return [self anchorElement];
+    ElementImpl * elt = [self anchorElement];
+    if (!elt)
+        elt = [self mouseButtonListener];
+
+    return elt;
 }
 
 -(KWQAccObject*)firstChild
@@ -502,6 +527,9 @@ extern "C" void NSAccessibilityUnregisterUniqueIdForUIElement(id element);
         // FIXME: should use startOfDocument and endOfDocument (or rangeForDocument?) here
         VisiblePosition startVisiblePosition = m_renderer->positionForCoordinates (0, 0);
         VisiblePosition endVisiblePosition   = m_renderer->positionForCoordinates (LONG_MAX, LONG_MAX);
+        if (startVisiblePosition.isNull() || endVisiblePosition.isNull())
+            return nil;
+            
         QString qString   = plainText(makeRange(startVisiblePosition, endVisiblePosition));
         
         // transform it to a CFString and return that
@@ -608,7 +636,7 @@ static QRect boundingBoxRect(RenderObject* obj)
         return NO;
 
     if (m_renderer->isBlockFlow() && m_renderer->childrenInline())
-        return !static_cast<RenderBlock*>(m_renderer)->firstLineBox();
+        return !static_cast<RenderBlock*>(m_renderer)->firstLineBox() && ![self mouseButtonListener];
 
     return (!m_renderer->isListMarker() && !m_renderer->isCanvas() && 
             !m_renderer->isImage() &&
@@ -744,7 +772,7 @@ static QRect boundingBoxRect(RenderObject* obj)
             }
         }
 
-        actionElement->accessKeyAction();
+        actionElement->accessKeyAction(true);
     }
 }
 
index 0a596d028ee7ed7d5b160446e8ca98a7965fda81..2edb0ba52402c91c1a25ca183a8cfd15119acdd5 100644 (file)
@@ -41,7 +41,7 @@ public:
     void setWritingDirection(QPainter::TextDirection);
     
     virtual void clicked();
-    virtual void click();
+    virtual void click(bool sendMouseEvents);
 
     // QWidget overrides
     virtual void setFont(const QFont &);
index 15856b05d2e1861683d658571f9e292b8eda7136..a64b5acca95166ea43b281428e7269bcd68d7839 100644 (file)
@@ -310,7 +310,7 @@ void QButton::clicked()
     KWQ_UNBLOCK_EXCEPTIONS;
 }
 
-void QButton::click()
+void QButton::click(bool sendMouseEvents)
 {
     KWQ_BLOCK_EXCEPTIONS;
 
index 0d7bf2665352f73ae8688409997ac127581a9d5d..940ebd6b368f3b709d6ae8d76276204d4f1fc45d 100644 (file)
@@ -41,7 +41,7 @@ public:
     ~KWQFileButton();
     
     void setFilename(const QString &);
-    void click();
+    void click(bool sendMouseEvents);
     
     QSize sizeForCharacterWidth(int characters) const;
     QRect frameGeometry() const;
index 518a2943fd0178ba9165763ac66326c7ccca7c03..895eb163d3f6ecaa9cb7a81d9d9ee9d0d9c02f4e 100644 (file)
@@ -75,7 +75,7 @@ void KWQFileButton::setFilename(const QString &f)
     KWQ_UNBLOCK_EXCEPTIONS;
 }
 
-void KWQFileButton::click()
+void KWQFileButton::click(bool sendMouseEvents)
 {
     NSView <WebCoreFileButton> *button = getView();