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