1
0
Kandrashin Denis 12 жил өмнө
parent
commit
e9d8227d24

+ 3 - 5
source/fb2code.cpp

@@ -463,11 +463,9 @@ FbCodeEdit::FbCodeEdit(QWidget *parent) : QPlainTextEdit(parent)
 
     zoomRatio = 1;
 
-    #ifdef Q_WS_WIN
-    setFont(QFont("Courier New", baseFontSize));
-    #else
-    setFont(QFont("Monospace", baseFontSize));
-    #endif
+    QFont f("Monospace", baseFontSize);
+    f.setStyleHint(f.TypeWriter, f.PreferDefault);
+    setFont(f);
 
     updateLineNumberAreaWidth(0);
     highlightCurrentLine();

+ 2 - 0
source/fb2main.cpp

@@ -166,6 +166,7 @@ void FbMainWindow::createActions()
 
     menu = menuBar()->addMenu(tr("&File"));
     tool = addToolBar(tr("File"));
+    tool->setIconSize(QSize(24, 24));
     tool->setMovable(false);
 
     act = new QAction(FbIcon("document-new"), tr("&New"), this);
@@ -501,6 +502,7 @@ void FbMainWindow::createActions()
     menu->addAction(act);
 
     toolEdit = tool = addToolBar(tr("Edit"));
+    tool->setIconSize(QSize(24, 24));
     tool->setMovable(false);
     tool->addSeparator();
     mainDock->setTool(tool);

+ 14 - 3
source/fb2page.cpp

@@ -36,7 +36,7 @@ FbTextPage::FbTextPage(QObject *parent)
     s->setAttribute(QWebSettings::PrivateBrowsingEnabled, true);
     s->setAttribute(QWebSettings::PluginsEnabled, false);
     s->setAttribute(QWebSettings::ZoomTextOnly, true);
-    s->setUserStyleSheetUrl(QUrl("qrc:style.css"));
+    s->setUserStyleSheetUrl(getStyleSheetUrl());
 
     QString html = block("body", block("section", p()));
     mainFrame()->setHtml(html, createUrl());
@@ -48,6 +48,19 @@ FbTextPage::FbTextPage(QObject *parent)
     connect(this, SIGNAL(selectionChanged()), SLOT(showStatus()));
 }
 
+QUrl FbTextPage::getStyleSheetUrl()
+{
+    QFile file(":style.css");
+    if (!file.open(QFile::ReadOnly)) return QUrl();
+
+    QTextStream in( &file );
+    in.setCodec( "UTF-8" );
+    in.setAutoDetectUnicode( true );
+
+    QString str = in.readAll().append("p:after{display:inline;content:'\\A0\\B6';color:gray;}");
+    return QString(str.toLatin1().toBase64()).prepend("data:text/css;charset=utf-8;base64,");
+}
+
 FbNetworkAccessManager *FbTextPage::manager()
 {
     return qobject_cast<FbNetworkAccessManager*>(networkAccessManager());
@@ -390,8 +403,6 @@ void FbTextPage::showStatus()
 void FbTextPage::loadFinished()
 {
     mainFrame()->addToJavaScriptWindowObject("logger", &m_logger);
-    QString style = "p:after{display:inline;content:'\\A0\\B6';color:gray;}";
-    mainFrame()->findFirstElement("html>head>style#inline").setInnerXml(style);
     body().select();
 }
 

+ 3 - 0
source/fb2page.hpp

@@ -84,6 +84,9 @@ private slots:
     void fixContents();
     void showStatus();
 
+private:
+    QUrl getStyleSheetUrl();
+
 private:
     FbActionMap m_actions;
     FbTextLogger m_logger;

+ 0 - 6
source/fb2read.cpp

@@ -213,12 +213,6 @@ void FbReadHandler::RootHandler::writeHeader()
         writer().writeEndElement();
     }
 
-    writer().writeStartElement("style");
-    writer().writeAttribute("type", "text/css");
-    writer().writeAttribute("id", "inline");
-    writer().writeCharacters("");
-    writer().writeEndElement();
-
     writer().writeEndElement();
 
     writer().writeStartElement("body");