Index: trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.cpp	(revision 88401)
+++ trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.cpp	(revision 88408)
@@ -69,11 +69,9 @@
 
 static const int iBookmarkUrlDataType = 6;
-static int iFontPointSizeChangeStep = 2;
-const QPair<float, float> UIHelpBrowserWidget::fontScaleMinMax = QPair<float, float>(0.5f, 3.f);
 
 /*********************************************************************************************************************************
-*   UIContentZoomWidget definition.                                                                                         *
+*   UIZoomWidget definition.                                                                                         *
 *********************************************************************************************************************************/
-class UIContentZoomWidget : public QIWithRetranslateUI<QWidget>
+class UIZoomWidget : public QIWithRetranslateUI<QWidget>
 {
 
@@ -82,11 +80,12 @@
 signals:
 
-    void sigFontPointSizeChanged(int iNewFontPointSize);
+    void sigZoomChanged(UIHelpViewer::ZoomOperation enmOperation);
 
 public:
 
-    UIContentZoomWidget(int iInitialFontPointSize, QWidget *pParent = 0);
-    void setFontPointSize(int iFontPointSize);
-    int fontPointSize() const;
+
+    UIZoomWidget(QWidget *pParent = 0);
+    int zoomPercentage() const;
+    void setZoomPercentage(int iZoomPercentage);
 
 protected:
@@ -96,10 +95,11 @@
 private slots:
 
-    void sltSetFontPointSize();
+    void sltZoomOperation();
 
 private:
 
     void prepare();
-    int fontPercentage() const;
+    //int fontPercentage() const;
+
     QHBoxLayout  *m_pMainLayout;
     QIToolButton *m_pMinusButton;
@@ -107,6 +107,4 @@
     QIToolButton *m_pPlusButton;
     QLabel *m_pValueLabel;
-    int m_iInitialFontPointSize;
-    int m_iFontPointSize;
 };
 
@@ -190,5 +188,4 @@
     void sigOpenLinkInNewTab(const QUrl &url, bool fBackground);
     void sigAddBookmark(const QUrl &url, const QString &strTitle);
-    void sigFontPointSizeChanged(int iFontPointSize);
     void sigLinkHighlighted(const QString &strLink);
 
@@ -203,7 +200,5 @@
     void setToolBarVisible(bool fVisible);
     void print(QPrinter &printer);
-    int initialFontPointSize() const;
-    void setFontPointSize(int iPointSize);
-    int fontPointSize() const;
+    void zoom(UIHelpViewer::ZoomOperation enmZoomOperation);
 
 private slots:
@@ -226,4 +221,7 @@
     virtual void retranslateUi() /* override */;
     void setActionTextAndToolTip(QAction *pAction, const QString &strText, const QString &strToolTip);
+    // int initialFontPointSize() const;
+    // void setFontPointSize(int iPointSize);
+    // int fontPointSize() const;
 
     QAction     *m_pHomeAction;
@@ -260,12 +258,4 @@
 public:
 
-    enum ZoomOperation
-    {
-        ZoomOperation_In = 0,
-        ZoomOperation_Out,
-        ZoomOperation_Reset,
-        ZoomOperation_Max
-    };
-
     UIHelpBrowserTabManager(const QHelpEngine  *pHelpEngine, const QUrl &homeUrl,
                             const QStringList &urlList, QWidget *pParent = 0);
@@ -281,8 +271,5 @@
     void setToolBarVisible(bool fVisible);
     void printCurrent(QPrinter &printer);
-    int  initialFontPointSize() const;
-    void setFontPointSize(int iPointSize);
-    int  fontPointSize() const;
-    void setFontScaleWidgetVisible(bool fToggled);
+    void setZoomWidgetVisible(bool fToggled);
     void switchToTab(int iIndex);
 
@@ -303,5 +290,5 @@
     void sltHandleContextMenuTabClose();
     void sltHandleCurrentChanged(int iTabIndex);
-    void sltHandleFontSizeChange(int iFontPointSize);
+    void sltHandleZoomOperation(UIHelpViewer::ZoomOperation enmZoomOperation);
     void sltShowTabBarContextMenu(const QPoint &pos);
     void sltHandleCloseOtherTabsContextMenuAction();
@@ -318,6 +305,10 @@
     /* Returns the tab index with @Url if there is one. Returns -1 otherwise. */
     int  findTab(const QUrl &Url) const;
+    // void setFontPointSize(int iPointSize);
+    // int  initialFontPointSize() const;
+    // int  fontPointSize() const;
+
     const QHelpEngine* m_pHelpEngine;
-    UIContentZoomWidget *m_pFontScaleWidget;
+    UIZoomWidget *m_pZoomWidget;
     QUrl m_homeUrl;
     QStringList m_savedUrlList;
@@ -330,8 +321,8 @@
 
 /*********************************************************************************************************************************
-*   UIContentZoomWidget implementation.                                                                                          *
+*   UIZoomWidget implementation.                                                                                          *
 *********************************************************************************************************************************/
 
-UIContentZoomWidget::UIContentZoomWidget(int iInitialFontPointSize, QWidget *pParent /* = 0 */)
+UIZoomWidget::UIZoomWidget(QWidget *pParent /* = 0 */)
     :QIWithRetranslateUI<QWidget>(pParent)
     , m_pMainLayout(0)
@@ -340,29 +331,13 @@
     , m_pPlusButton(0)
     , m_pValueLabel(0)
-    , m_iInitialFontPointSize(iInitialFontPointSize)
-    , m_iFontPointSize(iInitialFontPointSize)
 {
     prepare();
 }
 
-void UIContentZoomWidget::setFontPointSize(int iFontPointSize)
-{
-    if (m_iFontPointSize == iFontPointSize)
-        return;
-    m_iFontPointSize = iFontPointSize;
-    if (m_pValueLabel && m_iInitialFontPointSize != 0)
-        m_pValueLabel->setText(QString("%1%2").arg(QString::number(fontPercentage())).arg("%"));
-}
-
-int UIContentZoomWidget::fontPointSize() const
-{
-    return m_iFontPointSize;
-}
-
-void UIContentZoomWidget::retranslateUi()
-{
-}
-
-void UIContentZoomWidget::prepare()
+void UIZoomWidget::retranslateUi()
+{
+}
+
+void UIZoomWidget::prepare()
 {
     setAutoFillBackground(true);
@@ -380,5 +355,5 @@
                      m_pValueLabel);
 
-    m_pValueLabel->setText(QString("%1%2").arg(QString::number(fontPercentage())).arg("%"));
+    //m_pValueLabel->setText(QString("%1%2").arg(QString::number(fontPercentage())).arg("%"));
 
     m_pMinusButton->setIcon(UIIconPool::iconSet(":/help_browser_minus_32px.png"));
@@ -386,7 +361,7 @@
     m_pPlusButton->setIcon(UIIconPool::iconSet(":/help_browser_plus_32px.png"));
 
-    connect(m_pPlusButton, &QIToolButton::pressed, this, &UIContentZoomWidget::sltSetFontPointSize);
-    connect(m_pMinusButton, &QIToolButton::pressed, this, &UIContentZoomWidget::sltSetFontPointSize);
-    connect(m_pResetButton, &QIToolButton::pressed, this, &UIContentZoomWidget::sltSetFontPointSize);
+    connect(m_pPlusButton, &QIToolButton::pressed, this, &UIZoomWidget::sltZoomOperation);
+    connect(m_pMinusButton, &QIToolButton::pressed, this, &UIZoomWidget::sltZoomOperation);
+    connect(m_pResetButton, &QIToolButton::pressed, this, &UIZoomWidget::sltZoomOperation);
 
     m_pMainLayout->addWidget(m_pResetButton);
@@ -396,27 +371,22 @@
 }
 
-int UIContentZoomWidget::fontPercentage() const
-{
-    if (m_iInitialFontPointSize == 0)
-        return 0;
-    return 100 * m_iFontPointSize / m_iInitialFontPointSize;
-}
-
-void UIContentZoomWidget::sltSetFontPointSize()
+void UIZoomWidget::setZoomPercentage(int iZoomPercentage)
+{
+    if (m_pValueLabel)
+        m_pValueLabel->setText(QString("%1%2").arg(QString::number(iZoomPercentage)).arg("%"));
+}
+
+void UIZoomWidget::sltZoomOperation()
 {
     if (!sender())
         return;
-    int iNewSize = m_iFontPointSize;
+    UIHelpViewer::ZoomOperation enmOperation = UIHelpViewer::ZoomOperation_In;
     if (sender() == m_pMinusButton)
-        iNewSize -= iFontPointSizeChangeStep;
+        enmOperation = UIHelpViewer::ZoomOperation_Out;
     else if (sender() == m_pPlusButton)
-        iNewSize += iFontPointSizeChangeStep;
+        enmOperation = UIHelpViewer::ZoomOperation_In;
     else if (sender() == m_pResetButton)
-        iNewSize = m_iInitialFontPointSize;
-    if (iNewSize >= UIHelpBrowserWidget::fontScaleMinMax.second * m_iInitialFontPointSize ||
-        iNewSize <= UIHelpBrowserWidget::fontScaleMinMax.first * m_iInitialFontPointSize)
-        iNewSize = m_iFontPointSize;
-    setFontPointSize(iNewSize);
-    emit sigFontPointSizeChanged(m_iFontPointSize);
+        enmOperation = UIHelpViewer::ZoomOperation_Reset;
+    emit sigZoomChanged(enmOperation);
 }
 
@@ -607,29 +577,40 @@
 }
 
-int UIHelpBrowserTab::initialFontPointSize() const
+void UIHelpBrowserTab::zoom(UIHelpViewer::ZoomOperation enmZoomOperation)
 {
     if (m_pContentViewer)
-        return m_pContentViewer->initialFontPointSize();
-    return 0;
-}
-
-void UIHelpBrowserTab::setFontPointSize(int iPointSize)
-{
-    if (m_pContentViewer)
-    {
-        if (m_pContentViewer->font().pointSize() == iPointSize)
-            return;
-        QFont mFont = m_pContentViewer->font();
-        mFont.setPointSize(iPointSize);
-        m_pContentViewer->setFont(mFont);
-    }
-}
-
-int UIHelpBrowserTab::fontPointSize() const
-{
-    if (!m_pContentViewer)
-        return 0;
-    return m_pContentViewer->font().pointSize();
-}
+        m_pContentViewer->zoom(enmZoomOperation);
+}
+// void UIHelpBrowserTab::setZoomPercentage(int iZoomPercentage)
+// {
+//     if (m_pContentViewer)
+//         m_pContentViewer->setZoomPercentage(iZoomPercentage);
+// }
+
+// int UIHelpBrowserTab::initialFontPointSize() const
+// {
+//     if (m_pContentViewer)
+//         return m_pContentViewer->initialFontPointSize();
+//     return 0;
+// }
+
+// void UIHelpBrowserTab::setFontPointSize(int iPointSize)
+// {
+//     if (m_pContentViewer)
+//     {
+//         if (m_pContentViewer->font().pointSize() == iPointSize)
+//             return;
+//         QFont mFont = m_pContentViewer->font();
+//         mFont.setPointSize(iPointSize);
+//         m_pContentViewer->setFont(mFont);
+//     }
+// }
+
+// int UIHelpBrowserTab::fontPointSize() const
+// {
+//     if (!m_pContentViewer)
+//         return 0;
+//     return m_pContentViewer->font().pointSize();
+// }
 
 void UIHelpBrowserTab::prepare(const QUrl &initialUrl)
@@ -661,6 +642,4 @@
     connect(m_pContentViewer, &UIHelpViewer::sigCloseFindInPageWidget,
             this, &UIHelpBrowserTab::sltCloseFindInPageWidget);
-    connect(m_pContentViewer, &UIHelpViewer::sigFontPointSizeChanged,
-            this, &UIHelpBrowserTab::sigFontPointSizeChanged);
     connect(m_pContentViewer, &UIHelpViewer::sigGoBackward,
             this, &UIHelpBrowserTab::sltHandleBackwardAction);
@@ -836,5 +815,5 @@
     : QITabWidget(pParent)
     , m_pHelpEngine(pHelpEngine)
-    , m_pFontScaleWidget(0)
+    , m_pZoomWidget(0)
     , m_homeUrl(homeUrl)
     , m_savedUrlList(urlList)
@@ -868,6 +847,6 @@
     connect(pTabWidget, &UIHelpBrowserTab::sigAddBookmark,
             this, &UIHelpBrowserTabManager::sigAddBookmark);
-    connect(pTabWidget, &UIHelpBrowserTab::sigFontPointSizeChanged,
-            this, &UIHelpBrowserTabManager::sltHandleFontSizeChange);
+    // connect(pTabWidget, &UIHelpBrowserTab::sigZoomPercentageChanged,
+    //         this, &UIHelpBrowserTabManager::sltHandleZoomOperation);
     connect(pTabWidget, &UIHelpBrowserTab::sigLinkHighlighted,
             this, &UIHelpBrowserTabManager::sigLinkHighlighted);
@@ -876,9 +855,9 @@
         setCurrentIndex(index);
 
-    if (!m_pFontScaleWidget)
-    {
-        m_pFontScaleWidget = new UIContentZoomWidget(initialFontPointSize(), this);
-        connect(m_pFontScaleWidget, &UIContentZoomWidget::sigFontPointSizeChanged,
-                this, &UIHelpBrowserTabManager::sltHandleFontSizeChange);
+    if (!m_pZoomWidget)
+    {
+        m_pZoomWidget = new UIZoomWidget(this);
+        connect(m_pZoomWidget, &UIZoomWidget::sigZoomChanged,
+                this, &UIHelpBrowserTabManager::sltHandleZoomOperation);
     }
 }
@@ -1012,46 +991,46 @@
 void UIHelpBrowserTabManager::paintEvent(QPaintEvent *pEvent)
 {
-    if (m_pFontScaleWidget)
-    {
-        int iMargin = 20;
-        m_pFontScaleWidget->move(width() - m_pFontScaleWidget->width() - iMargin,
-                                 height() - m_pFontScaleWidget->height() - iMargin);
+    if (m_pZoomWidget)
+    {
+        int iMargin = 1.5 * qApp->style()->pixelMetric(QStyle::PM_ScrollBarExtent);
+        m_pZoomWidget->move(width() - m_pZoomWidget->width() - iMargin,
+                            height() - m_pZoomWidget->height() - iMargin);
     }
     QITabWidget::paintEvent(pEvent);
 }
 
-int UIHelpBrowserTabManager::initialFontPointSize() const
-{
-    UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(currentWidget());
-    if (!pTab)
-        return 0;
-    return pTab->initialFontPointSize();
-}
-
-void UIHelpBrowserTabManager::setFontPointSize(int iPointSize)
-{
-    for (int i = 0; i < count(); ++i)
-    {
-        UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(widget(i));
-        if (!pTab)
-            continue;
-        pTab->setFontPointSize(iPointSize);
-    }
-    if (m_pFontScaleWidget)
-        m_pFontScaleWidget->setFontPointSize(iPointSize);
-}
-
-int UIHelpBrowserTabManager::fontPointSize() const
-{
-    UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(currentWidget());
-    if (!pTab)
-        return 0;
-    return pTab->fontPointSize();
-}
-
-void UIHelpBrowserTabManager::setFontScaleWidgetVisible(bool fToggled)
-{
-    if (m_pFontScaleWidget)
-        m_pFontScaleWidget->setVisible(fToggled);
+// int UIHelpBrowserTabManager::initialFontPointSize() const
+// {
+//     UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(currentWidget());
+//     if (!pTab)
+//         return 0;
+//     return pTab->initialFontPointSize();
+// }
+
+// void UIHelpBrowserTabManager::setFontPointSize(int iPointSize)
+// {
+//     for (int i = 0; i < count(); ++i)
+//     {
+//         UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(widget(i));
+//         if (!pTab)
+//             continue;
+//         pTab->setFontPointSize(iPointSize);
+//     }
+//     // if (m_pZoomWidget)
+//     //     m_pZoomWidget->setFontPointSize(iPointSize);
+// }
+
+// int UIHelpBrowserTabManager::fontPointSize() const
+// {
+//     UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(currentWidget());
+//     if (!pTab)
+//         return 0;
+//     return pTab->fontPointSize();
+// }
+
+void UIHelpBrowserTabManager::setZoomWidgetVisible(bool fToggled)
+{
+    if (m_pZoomWidget)
+        m_pZoomWidget->setVisible(fToggled);
 }
 
@@ -1135,7 +1114,12 @@
 }
 
-void UIHelpBrowserTabManager::sltHandleFontSizeChange(int iFontPointSize)
-{
-    setFontPointSize(iFontPointSize);
+void UIHelpBrowserTabManager::sltHandleZoomOperation(UIHelpViewer::ZoomOperation enmZoomOperation)
+{
+    for (int i = 0; i < count(); ++i)
+    {
+        UIHelpBrowserTab *pTab = qobject_cast<UIHelpBrowserTab*>(widget(i));
+        if (pTab)
+            pTab->zoom(enmZoomOperation);
+    }
 }
 
@@ -1211,8 +1195,8 @@
     , m_pShowHideSideBarAction(0)
     , m_pShowHideToolBarAction(0)
-    , m_pShowHideFontScaleWidgetAction(0)
+    , m_pShowHideZoomWidgetAction(0)
     , m_pShowHideStatusBarAction(0)
-    , m_pFontSizeLargerAction(0)
-    , m_pFontSizeSmallerAction(0)
+    , m_pZoomInAction(0)
+    , m_pZoomOutAction(0)
     , m_pFontSizeResetAction(0)
     , m_fModelContentCreated(false)
@@ -1284,8 +1268,8 @@
             this, &UIHelpBrowserWidget::sltHandleWidgetVisibilityToggle);
 
-    m_pShowHideFontScaleWidgetAction = new QAction(this);
-    m_pShowHideFontScaleWidgetAction->setCheckable(true);
-    m_pShowHideFontScaleWidgetAction->setChecked(true);
-    connect(m_pShowHideFontScaleWidgetAction, &QAction::toggled,
+    m_pShowHideZoomWidgetAction = new QAction(this);
+    m_pShowHideZoomWidgetAction->setCheckable(true);
+    m_pShowHideZoomWidgetAction->setChecked(true);
+    connect(m_pShowHideZoomWidgetAction, &QAction::toggled,
             this, &UIHelpBrowserWidget::sltHandleWidgetVisibilityToggle);
 
@@ -1306,16 +1290,16 @@
 
     /* For size control actions: */
-    m_pFontSizeLargerAction = new QAction(this);
-    m_pFontSizeLargerAction->setIcon(UIIconPool::iconSet(":/help_browser_plus_32px.png"));
-
-    m_pFontSizeSmallerAction = new QAction(this);
-    m_pFontSizeSmallerAction->setIcon(UIIconPool::iconSet(":/help_browser_minus_32px.png"));
+    m_pZoomInAction = new QAction(this);
+    m_pZoomInAction->setIcon(UIIconPool::iconSet(":/help_browser_plus_32px.png"));
+
+    m_pZoomOutAction = new QAction(this);
+    m_pZoomOutAction->setIcon(UIIconPool::iconSet(":/help_browser_minus_32px.png"));
 
     m_pFontSizeResetAction = new QAction(this);
     m_pFontSizeResetAction->setIcon(UIIconPool::iconSet(":/help_browser_reset_32px.png"));
 
-    connect(m_pFontSizeLargerAction, &QAction::triggered,
+    connect(m_pZoomInAction, &QAction::triggered,
             this, &UIHelpBrowserWidget::sltHandleZoomActions);
-    connect(m_pFontSizeSmallerAction, &QAction::triggered,
+    connect(m_pZoomOutAction, &QAction::triggered,
             this, &UIHelpBrowserWidget::sltHandleZoomActions);
     connect(m_pFontSizeResetAction, &QAction::triggered,
@@ -1463,8 +1447,8 @@
         m_pFileMenu->addAction(m_pCloseDialogAction);
 
-    if (m_pFontSizeLargerAction)
-        m_pViewMenu->addAction(m_pFontSizeLargerAction);
-    if (m_pFontSizeSmallerAction)
-        m_pViewMenu->addAction(m_pFontSizeSmallerAction);
+    if (m_pZoomInAction)
+        m_pViewMenu->addAction(m_pZoomInAction);
+    if (m_pZoomOutAction)
+        m_pViewMenu->addAction(m_pZoomOutAction);
     if (m_pFontSizeResetAction)
         m_pViewMenu->addAction(m_pFontSizeResetAction);
@@ -1474,6 +1458,6 @@
     if (m_pShowHideToolBarAction)
         m_pViewMenu->addAction(m_pShowHideToolBarAction);
-    if (m_pShowHideFontScaleWidgetAction)
-        m_pViewMenu->addAction(m_pShowHideFontScaleWidgetAction);
+    if (m_pShowHideZoomWidgetAction)
+        m_pViewMenu->addAction(m_pShowHideZoomWidgetAction);
     if (m_pShowHideStatusBarAction)
         m_pViewMenu->addAction(m_pShowHideStatusBarAction);
@@ -1593,6 +1577,6 @@
     if (m_pShowHideToolBarAction)
         m_pShowHideToolBarAction->setText(tr("Show Tool Bar"));
-    if (m_pShowHideFontScaleWidgetAction)
-        m_pShowHideFontScaleWidgetAction->setText(tr("Show Font Scale Widget"));
+    if (m_pShowHideZoomWidgetAction)
+        m_pShowHideZoomWidgetAction->setText(tr("Show Font Scale Widget"));
     if (m_pShowHideStatusBarAction)
         m_pShowHideStatusBarAction->setText(tr("Show Status Bar"));
@@ -1604,8 +1588,8 @@
         m_pCloseDialogAction->setText(tr("Close"));
 
-    if (m_pFontSizeLargerAction)
-        m_pFontSizeLargerAction->setText(tr("Zoom &In"));
-    if (m_pFontSizeSmallerAction)
-        m_pFontSizeSmallerAction->setText(tr("Zoom &Out"));
+    if (m_pZoomInAction)
+        m_pZoomInAction->setText(tr("Zoom &In"));
+    if (m_pZoomOutAction)
+        m_pZoomOutAction->setText(tr("Zoom &Out"));
     if (m_pFontSizeResetAction)
         m_pFontSizeResetAction->setText(tr("&Reset Zoom"));
@@ -1649,8 +1633,8 @@
             m_pTabManager->setToolBarVisible(fToggled);
     }
-    else if (sender() == m_pShowHideFontScaleWidgetAction)
+    else if (sender() == m_pShowHideZoomWidgetAction)
     {
         if (m_pTabManager)
-            m_pTabManager->setFontScaleWidgetVisible(fToggled);
+            m_pTabManager->setZoomWidgetVisible(fToggled);
     }
     else if (sender() == m_pShowHideStatusBarAction)
@@ -1880,18 +1864,18 @@
 void UIHelpBrowserWidget::sltHandleZoomActions()
 {
-    if (!sender() || !m_pTabManager)
-        return;
-    int iFontPointSize = m_pTabManager->fontPointSize();
-    if (sender() == m_pFontSizeResetAction)
-        iFontPointSize = m_pTabManager->initialFontPointSize();
-    else if (sender() == m_pFontSizeLargerAction)
-        iFontPointSize += iFontPointSizeChangeStep;
-    else if (sender() == m_pFontSizeSmallerAction)
-        iFontPointSize -= iFontPointSizeChangeStep;
-
-    if (iFontPointSize >= fontScaleMinMax.second * m_pTabManager->initialFontPointSize() ||
-        iFontPointSize <= fontScaleMinMax.first * m_pTabManager->initialFontPointSize())
-        return;
-    m_pTabManager->setFontPointSize(iFontPointSize);
+    // if (!sender() || !m_pTabManager)
+    //     return;
+    // int iFontPointSize = m_pTabManager->fontPointSize();
+    // if (sender() == m_pFontSizeResetAction)
+    //     iFontPointSize = m_pTabManager->initialFontPointSize();
+    // else if (sender() == m_pZoomInAction)
+    //     iFontPointSize += iZoomPercentageStep;
+    // else if (sender() == m_pZoomOutAction)
+    //     iFontPointSize -= iZoomPercentageStep;
+
+    // if (iFontPointSize >= zoomPercentageMinMax.second * m_pTabManager->initialFontPointSize() ||
+    //     iFontPointSize <= zoomPercentageMinMax.first * m_pTabManager->initialFontPointSize())
+    //     return;
+    // m_pTabManager->setFontPointSize(iFontPointSize);
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.h	(revision 88401)
+++ trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpBrowserWidget.h	(revision 88408)
@@ -67,6 +67,4 @@
     QIToolBar *toolbar() const { return m_pToolBar; }
 #endif
-
-    static const QPair<float, float> fontScaleMinMax;
 
 protected:
@@ -167,8 +165,8 @@
     QAction             *m_pShowHideSideBarAction;
     QAction             *m_pShowHideToolBarAction;
-    QAction             *m_pShowHideFontScaleWidgetAction;
+    QAction             *m_pShowHideZoomWidgetAction;
     QAction             *m_pShowHideStatusBarAction;
-    QAction             *m_pFontSizeLargerAction;
-    QAction             *m_pFontSizeSmallerAction;
+    QAction             *m_pZoomInAction;
+    QAction             *m_pZoomOutAction;
     QAction             *m_pFontSizeResetAction;
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.cpp	(revision 88401)
+++ trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.cpp	(revision 88408)
@@ -49,4 +49,7 @@
 
 #ifdef VBOX_WITH_QHELP_VIEWER
+
+//static int iZoomPercentageStep = 20;
+const QPair<int, int> UIHelpViewer::zoomPercentageMinMax = QPair<int, int>(20, 300);
 
 
@@ -436,4 +439,10 @@
 }
 
+void UIHelpViewer::zoom(ZoomOperation enmZoomOperation)
+{
+    Q_UNUSED(enmZoomOperation);
+}
+
+
 void UIHelpViewer::contextMenuEvent(QContextMenuEvent *event)
 {
Index: trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.h	(revision 88401)
+++ trunk/src/VBox/Frontends/VirtualBox/src/helpbrowser/UIHelpViewer.h	(revision 88408)
@@ -50,4 +50,12 @@
 public:
 
+    enum ZoomOperation
+    {
+        ZoomOperation_In = 0,
+        ZoomOperation_Out,
+        ZoomOperation_Reset,
+        ZoomOperation_Max
+    };
+
     UIHelpViewer(const QHelpEngine *pHelpEngine, QWidget *pParent = 0);
     virtual QVariant loadResource(int type, const QUrl &name) /* override */;
@@ -57,4 +65,7 @@
     void setFont(const QFont &);
     bool isFindInPageWidgetVisible() const;
+    void zoom(ZoomOperation enmZoomOperation);
+
+    static const QPair<int, int> zoomPercentageMinMax;
 
 public slots:
