FontSizeDpi.diff:
- Compute font size from logical dpi: fonts have normal size now
- Add minimal font size option

ToolBarStyle.diff:
- Repect kde toolbar configuration (icons, text, text+icons)
- With text beside icons, only back button got text (we don't want a cluttered 
interface)
- With text under icons, urlbar is too fat bug can't find a way to fix it.

Cédric
diff --git a/src/bookmarks.cpp b/src/bookmarks.cpp
index 5f1ea39..89682ad 100644
--- a/src/bookmarks.cpp
+++ b/src/bookmarks.cpp
@@ -260,7 +260,6 @@ KActionMenu* BookmarkProvider::bookmarkActionMenu(QWidget *parent)
     m_bookmarkMenu = new BookmarkMenu(m_manager, m_owner, menu, m_actionCollection);
     KActionMenu *bookmarkActionMenu = new KActionMenu(parent);
     bookmarkActionMenu->setMenu(menu);
-    bookmarkActionMenu->setText(i18n("&Bookmarks"));
     return bookmarkActionMenu;
 }
 
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 7a9e3ad..dc60dc8 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -122,6 +122,9 @@ MainWindow::MainWindow()
     layout->addWidget(m_findBar);
     centralWidget->setLayout(layout);
 
+    // get Kde global settings (toolbar style for now)
+    getGlobalsConfig();
+
     // central widget
     setCentralWidget(centralWidget);
 
@@ -167,10 +170,27 @@ SidePanel *MainWindow::sidePanel()
 }
 
 
+void MainWindow::getGlobalsConfig()
+{
+    KConfig config("kdeglobals"); //Share with konqueror
+    KConfigGroup cg = config.group("Toolbar style");
+    QString toolButtonStyleString = cg.readEntry("ToolButtonStyle");
+    if (toolButtonStyleString == "IconOnly")
+        toolButtonStyle = Qt::ToolButtonIconOnly;
+    else if (toolButtonStyleString == "TextOnly")
+        toolButtonStyle = Qt::ToolButtonTextOnly;
+    else if (toolButtonStyleString == "TextBesideIcon")
+        toolButtonStyle = Qt::ToolButtonTextBesideIcon;
+    else if (toolButtonStyleString ==  "TextUnderIcon")
+         toolButtonStyle = Qt::ToolButtonTextUnderIcon;
+    else
+        toolButtonStyle = Qt::ToolButtonIconOnly;
+}
+
 void MainWindow::setupToolbars()
 {
     // ============ Main ToolBar  ================================
-    m_mainBar->setToolButtonStyle(Qt::ToolButtonIconOnly);
+    m_mainBar->setToolButtonStyle(toolButtonStyle);
     m_mainBar->setContextMenuPolicy(Qt::PreventContextMenu);
     m_mainBar->setFloatable(false);
     m_mainBar->setMovable(false);
@@ -181,6 +201,17 @@ void MainWindow::setupToolbars()
     m_mainBar->addAction( actionByName("stop_reload") );
     m_mainBar->addAction( actionByName(KStandardAction::name(KStandardAction::Home)) );
 
+    QAction *forward = actionCollection()->action(KStandardAction::name(KStandardAction::Forward));
+    QAction *home = actionCollection()->action(KStandardAction::name(KStandardAction::Home));
+    // disable text if text along side
+    if (toolButtonStyle == Qt::ToolButtonTextBesideIcon) 
+    {
+        forward->setToolTip(forward->text());
+        home->setToolTip(home->text());
+        forward->setText("");
+        home->setText("");
+    }
+
     // location bar
     KAction *urlBarAction = new KAction(this);
     urlBarAction->setDefaultWidget(m_view->urlBar());
@@ -195,6 +226,7 @@ void MainWindow::setupToolbars()
     m_bmBar->setContextMenuPolicy(Qt::CustomContextMenu);
     m_bmBar->setFloatable(false);
     m_bmBar->setMovable(false);
+    m_bmBar->setIconDimensions(16);
 
     Application::bookmarkProvider()->setupBookmarkBar(m_bmBar);
 }
@@ -393,6 +425,15 @@ void MainWindow::setupActions()
     // Bookmark Menu
     KActionMenu *bmMenu = Application::bookmarkProvider()->bookmarkActionMenu(this);
     bmMenu->setIcon(KIcon("bookmarks"));
+
+    //disable text for this icon if text along side
+    if (toolButtonStyle == Qt::ToolButtonTextBesideIcon)
+    {
+        bmMenu->setText("");
+        bmMenu->setToolTip(i18n("&Bookmarks"));
+    }
+    else    
+        bmMenu->setText(i18n("&Bookmarks"));
     bmMenu->setDelayed(false);
     actionCollection()->addAction(QLatin1String("bookmarksActionMenu"), bmMenu);
 }
@@ -400,7 +441,16 @@ void MainWindow::setupActions()
 
 void MainWindow::setupTools()
 {
-    KActionMenu *toolsMenu = new KActionMenu(KIcon("configure"), i18n("&Tools"), this);
+    //disable text for this icon if text along side
+    QString text;
+    if (toolButtonStyle == Qt::ToolButtonTextBesideIcon)
+        text="";
+    else
+        text=i18n("&Tools");
+
+    KActionMenu *toolsMenu = new KActionMenu(KIcon("configure"), text, this);
+
+    toolsMenu->setToolTip(i18n("&Tools"));
     toolsMenu->setDelayed(false);
 
     toolsMenu->addAction(actionByName(KStandardAction::name(KStandardAction::Open)));
@@ -830,7 +880,15 @@ void MainWindow::browserLoading(bool v)
         disconnect(m_stopReloadAction, SIGNAL(triggered(bool)), reload , SIGNAL(triggered(bool)));
         m_stopReloadAction->setIcon(KIcon("process-stop"));
         m_stopReloadAction->setToolTip(i18n("Stop loading the current page"));
-        m_stopReloadAction->setText(i18n("Stop"));
+        //disable text for this icon, as dynamic, it will make interface jump in/out
+        if (toolButtonStyle == Qt::ToolButtonTextBesideIcon)
+        {
+            m_stopReloadAction->setText("");
+            m_stopReloadAction->setToolTip(i18n("stop"));
+        }
+	else
+            m_stopReloadAction->setText(i18n("Stop"));
+
         connect(m_stopReloadAction, SIGNAL(triggered(bool)), stop, SIGNAL(triggered(bool)));
     }
     else
@@ -838,7 +896,14 @@ void MainWindow::browserLoading(bool v)
         disconnect(m_stopReloadAction, SIGNAL(triggered(bool)), stop , SIGNAL(triggered(bool)));
         m_stopReloadAction->setIcon(KIcon("view-refresh"));
         m_stopReloadAction->setToolTip(i18n("Reload the current page"));
-        m_stopReloadAction->setText(i18n("Reload"));
+        //disable text for this icon, as dynamic, it will make interface jump in/out
+        if (toolButtonStyle == Qt::ToolButtonTextBesideIcon)
+        {
+            m_stopReloadAction->setText("");
+            m_stopReloadAction->setToolTip(i18n("Reload"));
+        }
+        else
+            m_stopReloadAction->setText(i18n("Reload"));
         connect(m_stopReloadAction, SIGNAL(triggered(bool)), reload, SIGNAL(triggered(bool)));
 
     }
diff --git a/src/mainwindow.h b/src/mainwindow.h
index 5071cdb..6b4326b 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -78,6 +78,8 @@ private:
     void setupTools();
     void setupToolbars();
 
+    void getGlobalsConfig();
+
     void setupSidePanel();
     SidePanel *sidePanel();
 
@@ -168,6 +170,9 @@ private:
     
     QString m_lastSearch;
 
+
+    Qt::ToolButtonStyle toolButtonStyle;
+
     KPassivePopup *m_popup;
     QTimer *m_hidePopup;
 
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 7a9e3ad..3bdb541 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -469,10 +519,16 @@ void MainWindow::updateConfiguration()
     QWebSettings *defaultSettings = QWebSettings::globalSettings();
 
     int fnSize = ReKonfig::fontSize();
+    int minFnSize = ReKonfig::minFontSize();
+
+    // font size / dpi
+    float toPix = m_view->logicalDpiY()/72.0;
+    if (toPix < 96.0/72.0) toPix = 96.0/72.0;
 
     QFont standardFont = ReKonfig::standardFont();
     defaultSettings->setFontFamily(QWebSettings::StandardFont, standardFont.family());
-    defaultSettings->setFontSize(QWebSettings::DefaultFontSize, fnSize);
+    defaultSettings->setFontSize(QWebSettings::DefaultFontSize, fnSize*toPix);
+    defaultSettings->setFontSize(QWebSettings::MinimumFontSize, minFnSize*toPix);
 
     QFont fixedFont = ReKonfig::fixedFont();
     defaultSettings->setFontFamily(QWebSettings::FixedFont, fixedFont.family());
diff --git a/src/rekonq.kcfg b/src/rekonq.kcfg
index 5505e4b..7b72efa 100644
--- a/src/rekonq.kcfg
+++ b/src/rekonq.kcfg
@@ -68,6 +68,9 @@
     <entry name="fontSize" type="Int">
     <default>16</default>
     </entry>
+    <entry name="minFontSize" type="Int">
+    <default>11</default>
+    </entry>
   </group>
 
 <!-- Privacy Settings -->
diff --git a/src/settings_fonts.ui b/src/settings_fonts.ui
index 98efce1..3f9aa9e 100644
--- a/src/settings_fonts.ui
+++ b/src/settings_fonts.ui
@@ -67,6 +67,20 @@
         </item>
        </layout>
       </item>
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout2">
+        <item>
+         <widget class="QLabel" name="label_4">
+          <property name="text">
+           <string>Minimal font size:</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QSpinBox" name="kcfg_minFontSize"/>
+        </item>
+       </layout>
+      </item>
      </layout>
     </widget>
    </item>
@@ -91,6 +105,11 @@
    <extends>KComboBox</extends>
    <header>kfontcombobox.h</header>
   </customwidget>
+  <customwidget>
+   <class>KComboBox</class>
+   <extends>QComboBox</extends>
+   <header>kcombobox.h</header>
+  </customwidget>
  </customwidgets>
  <resources/>
  <connections/>
_______________________________________________
rekonq mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/rekonq

Reply via email to