Changeset 89744 in webkit


Ignore:
Timestamp:
Jun 25, 2011 10:44:20 AM (13 years ago)
Author:
robert@webkit.org
Message:

2011-06-20 Robert Hogan <robert@webkit.org>

Reviewed by Antonio Gomes.

[Qt] Duplicate entry in context menu
https://bugs.webkit.org/show_bug.cgi?id=62139

contextMenuController()->populate() is called from
ContextMenuController::handleContextMenuEvent() so
QWebPage::updatePositionDependentActions() does not need
to call it independently.

Related changesets:

http://trac.webkit.org/changeset/73535
http://trac.webkit.org/changeset/32389

  • Api/qwebpage.cpp: (QWebPage::updatePositionDependentActions):
  • tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::contextMenuCopy): (tst_QWebPage::contextMenuPopulatedOnce):
Location:
trunk/Source/WebKit/qt
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/qt/Api/qwebpage.cpp

    r89369 r89744  
    33063306    d->createMainFrame();
    33073307    WebCore::Frame* focusedFrame = d->page->focusController()->focusedOrMainFrame();
     3308
    33083309    HitTestResult result = focusedFrame->eventHandler()->hitTestResultAtPoint(focusedFrame->view()->windowToContents(pos), /*allowShadowContent*/ false);
    3309 
    33103310    if (result.scrollbar())
    33113311        d->hitTestResult = QWebHitTestResult();
    33123312    else
    33133313        d->hitTestResult = QWebHitTestResult(new QWebHitTestResultPrivate(result));
    3314 
    33153314    d->page->contextMenuController()->setHitTestResult(result);
    3316     d->page->contextMenuController()->populate();
    3317    
     3315
    33183316#if ENABLE(INSPECTOR)
    33193317    if (d->page->inspectorController()->enabled())
  • trunk/Source/WebKit/qt/ChangeLog

    r89682 r89744  
     12011-06-20  Robert Hogan  <robert@webkit.org>
     2
     3        Reviewed by Antonio Gomes.
     4
     5        [Qt] Duplicate entry in context menu
     6        https://bugs.webkit.org/show_bug.cgi?id=62139
     7
     8        contextMenuController()->populate() is called from
     9        ContextMenuController::handleContextMenuEvent() so
     10        QWebPage::updatePositionDependentActions() does not need
     11        to call it independently.
     12
     13        Related changesets:
     14         http://trac.webkit.org/changeset/73535
     15         http://trac.webkit.org/changeset/32389
     16
     17        * Api/qwebpage.cpp:
     18        (QWebPage::updatePositionDependentActions):
     19        * tests/qwebpage/tst_qwebpage.cpp:
     20        (tst_QWebPage::contextMenuCopy):
     21        (tst_QWebPage::contextMenuPopulatedOnce):
     22
    1232011-06-24  Dominic Cooney  <dominicc@chromium.org>
    224
  • trunk/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp

    r89560 r89744  
    9191    void cleanupTestCase();
    9292    void contextMenuCopy();
     93    void contextMenuPopulatedOnce();
    9394    void acceptNavigationRequest();
    9495    void geolocationRequestJS();
     
    29742975}
    29752976
     2977// https://bugs.webkit.org/show_bug.cgi?id=62139
     2978void tst_QWebPage::contextMenuPopulatedOnce()
     2979{
     2980    QWebView view;
     2981
     2982    view.setHtml("<input type=\"text\">");
     2983
     2984    QWebElement link = view.page()->mainFrame()->findFirstElement("input");
     2985    QPoint pos(link.geometry().center());
     2986    QContextMenuEvent event(QContextMenuEvent::Mouse, pos);
     2987    view.page()->swallowContextMenuEvent(&event);
     2988    view.page()->updatePositionDependentActions(pos);
     2989
     2990    QList<QMenu*> contextMenus = view.findChildren<QMenu*>();
     2991    QVERIFY(!contextMenus.isEmpty());
     2992    QMenu* contextMenu = contextMenus.first();
     2993    QVERIFY(contextMenu);
     2994
     2995    QList<QAction *> list = contextMenu->actions();
     2996    QStringList entries;
     2997    while (!list.isEmpty()) {
     2998        QString entry = list.takeFirst()->text();
     2999        QVERIFY(!entries.contains(entry));
     3000        entries << entry;
     3001    }
     3002}
     3003
    29763004void tst_QWebPage::deleteQWebViewTwice()
    29773005{
Note: See TracChangeset for help on using the changeset viewer.