Changeset 26020 in webkit


Ignore:
Timestamp:
Oct 3, 2007 9:31:13 AM (17 years ago)
Author:
zecke
Message:

2007-10-02 Cosimo Cecchi <cosimoc@svn.gnome.org>

Reviewed by Mark.

http://bugs.webkit.org/show_bug.cgi?id=15299
Fix "hovering_over_link" signal being fired every time mouse moves.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::ChromeClient): (WebKit::ChromeClient::mouseDidMoveOverElement):
  • WebCoreSupport/ChromeClientGtk.h:
Location:
trunk/WebKit/gtk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKit/gtk/ChangeLog

    r26019 r26020  
     12007-10-02  Cosimo Cecchi  <cosimoc@svn.gnome.org>
     2
     3        Reviewed by Mark.
     4
     5        http://bugs.webkit.org/show_bug.cgi?id=15299
     6        Fix "hovering_over_link" signal being fired every time mouse moves.
     7
     8        * WebCoreSupport/ChromeClientGtk.cpp:
     9        (WebKit::ChromeClient::ChromeClient):
     10        (WebKit::ChromeClient::mouseDidMoveOverElement):
     11        * WebCoreSupport/ChromeClientGtk.h:
     12
    1132007-09-21  Sean Egan  <seanegan@gmail.com>
    214
  • trunk/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp

    r25818 r26020  
    4444ChromeClient::ChromeClient(WebKitGtkPage* page)
    4545    : m_webPage(page)
     46    , m_didSendLinkSignal(false)
    4647{
    4748}
     
    274275{
    275276    // check if the element is a link...
    276     KURL url = hit.absoluteLinkURL();
    277     if(!url.isEmpty()) {
    278         CString titleString = hit.title().utf8();
    279         DeprecatedCString urlString = url.prettyURL().utf8();
    280         g_signal_emit_by_name(m_webPage, "hovering_over_link", titleString.data(), urlString.data());
    281     } else
     277    bool isLink = hit.isLiveLink();
     278    if (isLink && !m_didSendLinkSignal) {
     279        KURL url = hit.absoluteLinkURL();
     280        if (!url.isEmpty()) {
     281            CString titleString = hit.title().utf8();
     282            DeprecatedCString urlString = url.prettyURL().utf8();
     283            g_signal_emit_by_name(m_webPage, "hovering_over_link", titleString.data(), urlString.data());
     284            m_didSendLinkSignal = true;
     285        }
     286    } else if (!isLink && m_didSendLinkSignal) {
    282287        g_signal_emit_by_name(m_webPage, "hovering_over_link", 0, 0);
     288        m_didSendLinkSignal = false;
     289    }
    283290}
    284291
  • trunk/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h

    r24978 r26020  
    104104    private:
    105105        WebKitGtkPage* m_webPage;
     106        bool m_didSendLinkSignal;
    106107    };
    107108}
Note: See TracChangeset for help on using the changeset viewer.