diff libgui/src/news-dock-widget.cc @ 17640:482222fe5b35

use QTextBrowser instead of QWebView to display community news * configure.ac: Don't check for QtWebKit. * news-dock-widget.h, news-dock-widget.cc (news_dock_widget): Use QTextBrowser to display news.
author John W. Eaton <jwe@octave.org>
date Fri, 11 Oct 2013 20:04:49 -0400
parents f5950975a172
children 8680768efa8a
line wrap: on
line diff
--- a/libgui/src/news-dock-widget.cc	Sat Oct 12 00:24:32 2013 +0200
+++ b/libgui/src/news-dock-widget.cc	Fri Oct 11 20:04:49 2013 -0400
@@ -26,7 +26,6 @@
 
 #include <iostream>
 
-#include <QVBoxLayout>
 #include <QThread>
 
 #include "news-dock-widget.h"
@@ -38,15 +37,16 @@
 #include "version.h"
 
 news_dock_widget::news_dock_widget (QWidget *p)
-  : octave_dock_widget (p), news_browser (new QWebView (p))
+  : octave_dock_widget (p), browser (new QTextBrowser (this))
 {
-  news_browser->setObjectName ("OctaveNews");
-
   setObjectName ("NewsDockWidget");
   setWindowIcon (QIcon (":/icons/logo.png"));
   set_title (tr ("Community News"));
 
-  setWidget (news_browser);
+  browser->setObjectName ("OctaveNews");
+  browser->setOpenExternalLinks (true);
+
+  setWidget (browser);
 
   load_news ();
 }
@@ -63,8 +63,8 @@
 
   reader->moveToThread (worker_thread);
 
-  connect (reader, SIGNAL (display_news_signal (const QString&, const QUrl&)),
-           this, SLOT (display_news (const QString&, const QUrl&)));
+  connect (reader, SIGNAL (display_news_signal (const QString&)),
+           this, SLOT (display_news (const QString&)));
 
   connect (worker_thread, SIGNAL (started (void)), reader, SLOT (process ()));
 
@@ -99,17 +99,17 @@
 </html>\n";
 
 void
-news_dock_widget::display_news (const QString& news, const QUrl& base_url)
+news_dock_widget::display_news (const QString& news)
 {
   if (news.contains ("this-is-the-gnu-octave-community-news-page"))
     {
-      news_browser->setHtml (news, base_url);
+      browser->setHtml (news);
 
       if (news.contains ("critical-news-event") && ! isVisible ())
         setVisible (true);
     }
   else
-    news_browser->setHtml (fixed_news);
+    browser->setHtml (fixed_news);
 }
 
 void
@@ -131,7 +131,7 @@
   if (octave_dot_org.good ())
     html_text = QString::fromStdString (buf.str ());
 
-  emit display_news_signal (html_text, QUrl (base_url));
+  emit display_news_signal (html_text);
 
   emit finished ();
 }