summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mainwindow.cpp19
-rw-r--r--src/mainwindow.h1
2 files changed, 19 insertions, 1 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 2d0ed7dd..2aa67868 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -1292,6 +1292,14 @@ void MainWindow::setEncoding(QAction *qa)
QString currentCodec = qa->text().toLatin1();
currentCodec = currentCodec.remove('&');
kDebug() << "Setting codec: " << currentCodec;
+ if(currentCodec == QL1S("Default") )
+ {
+ kDebug() << "QWebSettings::globalSettings()->defaultTextEncoding() = " << QWebSettings::globalSettings()->defaultTextEncoding();
+ currentTab()->view()->settings()->setDefaultTextEncoding( QWebSettings::globalSettings()->defaultTextEncoding() );
+ currentTab()->view()->reload();
+ return;
+ }
+
currentTab()->view()->settings()->setDefaultTextEncoding(currentCodec);
currentTab()->view()->reload();
}
@@ -1318,6 +1326,8 @@ void MainWindow::populateEncodingMenu()
KMenu *otherMenu = new KMenu( QL1S("Other"), m_encodingMenu);
QAction *a;
+ bool isDefaultCodecUsed = true;
+
Q_FOREACH(const QString &codec, codecs)
{
@@ -1334,8 +1344,17 @@ void MainWindow::populateEncodingMenu()
a->setCheckable(true);
if (currentCodec == codec)
+ {
a->setChecked(true);
+ isDefaultCodecUsed = false;
+ }
}
+
+ a = new QAction( QL1S("Default"), this);
+ a->setCheckable(true);
+ a->setChecked(isDefaultCodecUsed);
+
+ m_encodingMenu->addAction( a );
m_encodingMenu->addMenu( isoMenu );
m_encodingMenu->addMenu( winMenu );
m_encodingMenu->addMenu( isciiMenu );
diff --git a/src/mainwindow.h b/src/mainwindow.h
index 8acbef56..c2a635a0 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -56,7 +56,6 @@ class QWebFrame;
class QSlider;
-
/**
* This class serves as the main window for rekonq.
* It handles the menus, toolbars, and status bars.