]> git.saurik.com Git - wxWidgets.git/commitdiff
wxHtmlHelpWindow: Fix contents panel syncing with view.
authorVáclav Slavík <vslavik@fastmail.fm>
Wed, 6 Jun 2012 17:18:15 +0000 (17:18 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Wed, 6 Jun 2012 17:18:15 +0000 (17:18 +0000)
Simply opened page notification code. Fix it to really highlight the
page currently visible, instead of the previous one.

Fixes #14320.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/html/helpwnd.cpp

index eff2294cca743930379e41da153e8bdccc9ade26..a8e58cbf5fb7c1ba39751940d99fb134e02eacfc 100644 (file)
@@ -120,15 +120,13 @@ public:
         SetStandardFonts();
     }
 
-    void OnLink(wxHtmlLinkEvent& ev)
+    virtual bool LoadPage(const wxString& location)
     {
-        const wxMouseEvent *e = ev.GetLinkInfo().GetEvent();
-        if (e == NULL || e->LeftUp())
-            m_Window->NotifyPageChanged();
+        if ( !wxHtmlWindow::LoadPage(location) )
+            return false;
 
-        // skip the event so that normal processing (i.e. following the link)
-        // is done:
-        ev.Skip();
+        m_Window->NotifyPageChanged();
+        return true;
     }
 
     // Returns full location with anchor (helper)
@@ -150,13 +148,8 @@ private:
     wxHtmlHelpWindow *m_Window;
 
     wxDECLARE_NO_COPY_CLASS(wxHtmlHelpHtmlWindow);
-    DECLARE_EVENT_TABLE()
 };
 
-BEGIN_EVENT_TABLE(wxHtmlHelpHtmlWindow, wxHtmlWindow)
-    EVT_HTML_LINK_CLICKED(wxID_ANY, wxHtmlHelpHtmlWindow::OnLink)
-END_EVENT_TABLE()
-
 
 //---------------------------------------------------------------------------
 // wxHtmlHelpWindow::m_mergedIndex
@@ -716,7 +709,6 @@ bool wxHtmlHelpWindow::Display(const wxString& x)
     if (!url.empty())
     {
         m_HtmlWin->LoadPage(url);
-        NotifyPageChanged();
         return true;
     }
 
@@ -729,7 +721,6 @@ bool wxHtmlHelpWindow::Display(const int id)
     if (!url.empty())
     {
         m_HtmlWin->LoadPage(url);
-        NotifyPageChanged();
         return true;
     }
 
@@ -792,7 +783,6 @@ void wxHtmlHelpWindow::DisplayIndexItem(const wxHtmlHelpMergedIndexItem *it)
         if (!it->items[0]->page.empty())
         {
             m_HtmlWin->LoadPage(it->items[0]->GetFullPath());
-            NotifyPageChanged();
         }
     }
     else
@@ -829,7 +819,6 @@ void wxHtmlHelpWindow::DisplayIndexItem(const wxHtmlHelpMergedIndexItem *it)
         if (dlg.ShowModal() == wxID_OK)
         {
             m_HtmlWin->LoadPage(it->items[dlg.GetSelection()]->GetFullPath());
-            NotifyPageChanged();
         }
     }
 }
@@ -938,7 +927,6 @@ bool wxHtmlHelpWindow::KeywordSearch(const wxString& keyword,
                 if (it)
                 {
                     m_HtmlWin->LoadPage(it->GetFullPath());
-                    NotifyPageChanged();
                 }
                 break;
             }
@@ -1406,12 +1394,10 @@ void wxHtmlHelpWindow::OnToolbar(wxCommandEvent& event)
     {
         case wxID_HTML_BACK :
             m_HtmlWin->HistoryBack();
-            NotifyPageChanged();
             break;
 
         case wxID_HTML_FORWARD :
             m_HtmlWin->HistoryForward();
-            NotifyPageChanged();
             break;
 
         case wxID_HTML_UP :
@@ -1427,7 +1413,6 @@ void wxHtmlHelpWindow::OnToolbar(wxCommandEvent& event)
                     if (!it.page.empty())
                     {
                         m_HtmlWin->LoadPage(it.GetFullPath());
-                        NotifyPageChanged();
                     }
                 }
             }
@@ -1456,10 +1441,7 @@ void wxHtmlHelpWindow::OnToolbar(wxCommandEvent& event)
                     if (ind >= 0)
                     {
                         if (!it->page.empty())
-                        {
                             m_HtmlWin->LoadPage(it->GetFullPath());
-                            NotifyPageChanged();
-                        }
                     }
                 }
             }
@@ -1481,10 +1463,7 @@ void wxHtmlHelpWindow::OnToolbar(wxCommandEvent& event)
                     while (contents[idx].GetFullPath() == page) idx++;
 
                     if (!contents[idx].page.empty())
-                    {
                         m_HtmlWin->LoadPage(contents[idx].GetFullPath());
-                        NotifyPageChanged();
-                    }
                 }
             }
             break;
@@ -1749,7 +1728,6 @@ void wxHtmlHelpWindow::OnSearchSel(wxCommandEvent& WXUNUSED(event))
     {
         if (!it->page.empty())
             m_HtmlWin->LoadPage(it->GetFullPath());
-        NotifyPageChanged();
     }
 }
 
@@ -1768,7 +1746,6 @@ void wxHtmlHelpWindow::OnBookmarksSel(wxCommandEvent& WXUNUSED(event))
     if (!str.empty() && str != _("(bookmarks)") && idx != wxNOT_FOUND)
     {
        m_HtmlWin->LoadPage(m_BookmarksPages[(size_t)idx]);
-       NotifyPageChanged();
     }
 }