[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198
zoltan at webkit.org
zoltan at webkit.org
Mon Feb 21 00:08:46 UTC 2011
The following commit has been merged in the webkit-1.3 branch:
commit 393233c8b66bca863f256d0fa273670e2efd68a8
Author: zoltan at webkit.org <zoltan at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Jan 28 13:06:31 2011 +0000
[Qt] Add Zoom Text Only action to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=53297
Reviewed by Andreas Kling.
Add Zoom Text Only action to MiniBrowser's view menu, change zoom levels to avoid unnecessary divides.
* MiniBrowser/qt/BrowserWindow.cpp:
(BrowserWindow::BrowserWindow):
(BrowserWindow::zoomIn):
(BrowserWindow::zoomOut):
(BrowserWindow::resetZoom):
(BrowserWindow::toggleZoomTextOnly):
(BrowserWindow::applyZoom):
* MiniBrowser/qt/BrowserWindow.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76930 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Tools/ChangeLog b/Tools/ChangeLog
index a293085..d139548 100644
--- a/Tools/ChangeLog
+++ b/Tools/ChangeLog
@@ -1,3 +1,21 @@
+2011-01-28 Zoltan Horvath <zoltan at webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Add Zoom Text Only action to MiniBrowser
+ https://bugs.webkit.org/show_bug.cgi?id=53297
+
+ Add Zoom Text Only action to MiniBrowser's view menu, change zoom levels to avoid unnecessary divides.
+
+ * MiniBrowser/qt/BrowserWindow.cpp:
+ (BrowserWindow::BrowserWindow):
+ (BrowserWindow::zoomIn):
+ (BrowserWindow::zoomOut):
+ (BrowserWindow::resetZoom):
+ (BrowserWindow::toggleZoomTextOnly):
+ (BrowserWindow::applyZoom):
+ * MiniBrowser/qt/BrowserWindow.h:
+
2011-01-28 Adam Barth <abarth at webkit.org>
Reviewed by Eric Seidel.
diff --git a/Tools/MiniBrowser/qt/BrowserWindow.cpp b/Tools/MiniBrowser/qt/BrowserWindow.cpp
index e63f1bd..0097a30 100644
--- a/Tools/MiniBrowser/qt/BrowserWindow.cpp
+++ b/Tools/MiniBrowser/qt/BrowserWindow.cpp
@@ -36,11 +36,12 @@ static QWKPage* newPageFunction(QWKPage* page)
QGraphicsWKView::BackingStoreType BrowserWindow::backingStoreTypeForNewWindow = QGraphicsWKView::Simple;
-QVector<int> BrowserWindow::m_zoomLevels;
+QVector<qreal> BrowserWindow::m_zoomLevels;
BrowserWindow::BrowserWindow(QWKContext* context)
- : m_currentZoom(100) ,
- m_browser(new BrowserView(backingStoreTypeForNewWindow, context))
+ : m_isZoomTextOnly(false)
+ , m_currentZoom(1)
+ , m_browser(new BrowserView(backingStoreTypeForNewWindow, context))
{
setAttribute(Qt::WA_DeleteOnClose);
@@ -64,6 +65,9 @@ BrowserWindow::BrowserWindow(QWKContext* context)
QAction* zoomIn = viewMenu->addAction("Zoom &In", this, SLOT(zoomIn()));
QAction* zoomOut = viewMenu->addAction("Zoom &Out", this, SLOT(zoomOut()));
QAction* resetZoom = viewMenu->addAction("Reset Zoom", this, SLOT(resetZoom()));
+ QAction* zoomText = viewMenu->addAction("Zoom Text Only", this, SLOT(toggleZoomTextOnly(bool)));
+ zoomText->setCheckable(true);
+ zoomText->setChecked(false);
zoomIn->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_Plus));
zoomOut->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_Minus));
@@ -89,9 +93,9 @@ BrowserWindow::BrowserWindow(QWKContext* context)
// the zoom values are chosen to be like in Mozilla Firefox 3
if (!m_zoomLevels.count()) {
- m_zoomLevels << 30 << 50 << 67 << 80 << 90;
- m_zoomLevels << 100;
- m_zoomLevels << 110 << 120 << 133 << 150 << 170 << 200 << 240 << 300;
+ m_zoomLevels << 0.3 << 0.5 << 0.67 << 0.8 << 0.9;
+ m_zoomLevels << 1;
+ m_zoomLevels << 1.1 << 1.2 << 1.33 << 1.5 << 1.7 << 2 << 2.4 << 3;
}
resize(960, 640);
@@ -177,6 +181,11 @@ void BrowserWindow::openFile()
void BrowserWindow::zoomIn()
{
+ if (m_isZoomTextOnly)
+ m_currentZoom = page()->textZoomFactor();
+ else
+ m_currentZoom = page()->pageZoomFactor();
+
int i = m_zoomLevels.indexOf(m_currentZoom);
Q_ASSERT(i >= 0);
if (i < m_zoomLevels.count() - 1)
@@ -187,6 +196,11 @@ void BrowserWindow::zoomIn()
void BrowserWindow::zoomOut()
{
+ if (m_isZoomTextOnly)
+ m_currentZoom = page()->textZoomFactor();
+ else
+ m_currentZoom = page()->pageZoomFactor();
+
int i = m_zoomLevels.indexOf(m_currentZoom);
Q_ASSERT(i >= 0);
if (i > 0)
@@ -197,10 +211,15 @@ void BrowserWindow::zoomOut()
void BrowserWindow::resetZoom()
{
- m_currentZoom = 100;
+ m_currentZoom = 1;
applyZoom();
}
+void BrowserWindow::toggleZoomTextOnly(bool b)
+{
+ m_isZoomTextOnly = b;
+}
+
void BrowserWindow::showUserAgentDialog()
{
updateUserAgentList();
@@ -251,7 +270,10 @@ void BrowserWindow::updateUserAgentList()
void BrowserWindow::applyZoom()
{
- page()->setPageZoomFactor(qreal(m_currentZoom) / 100.0);
+ if (m_isZoomTextOnly)
+ page()->setTextZoomFactor(m_currentZoom);
+ else
+ page()->setPageZoomFactor(m_currentZoom);
}
BrowserWindow::~BrowserWindow()
diff --git a/Tools/MiniBrowser/qt/BrowserWindow.h b/Tools/MiniBrowser/qt/BrowserWindow.h
index 860eb17..24b6e24 100644
--- a/Tools/MiniBrowser/qt/BrowserWindow.h
+++ b/Tools/MiniBrowser/qt/BrowserWindow.h
@@ -60,6 +60,7 @@ protected slots:
void zoomIn();
void zoomOut();
void resetZoom();
+ void toggleZoomTextOnly(bool on);
void showUserAgentDialog();
@@ -68,8 +69,9 @@ private:
void applyZoom();
- static QVector<int> m_zoomLevels;
- int m_currentZoom;
+ static QVector<qreal> m_zoomLevels;
+ bool m_isZoomTextOnly;
+ qreal m_currentZoom;
BrowserView* m_browser;
QLineEdit* m_addressBar;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list