Modified: trunk/Tools/MiniBrowser/win/MainWindow.cpp (232608 => 232609)
--- trunk/Tools/MiniBrowser/win/MainWindow.cpp 2018-06-08 01:03:16 UTC (rev 232608)
+++ trunk/Tools/MiniBrowser/win/MainWindow.cpp 2018-06-08 02:19:39 UTC (rev 232609)
@@ -34,6 +34,7 @@
}
static constexpr int controlButtonWidth = 24;
+static constexpr int urlBarHeight = 24;
static WNDPROC DefEditProc = nullptr;
@@ -119,6 +120,7 @@
if (FAILED(hr))
return false;
+ updateDeviceScaleFactor();
resizeSubViews();
SetFocus(m_hURLBarWnd);
return true;
@@ -131,7 +133,6 @@
RECT rcClient;
GetClientRect(m_hMainWnd, &rcClient);
- constexpr int urlBarHeight = 24;
int height = scaleFactor * urlBarHeight;
int width = scaleFactor * controlButtonWidth;
@@ -139,8 +140,6 @@
MoveWindow(m_hForwardButtonWnd, width, 0, width, height, TRUE);
MoveWindow(m_hURLBarWnd, width * 2, 0, rcClient.right, height, TRUE);
- ::SendMessage(m_hURLBarWnd, static_cast<UINT>(WM_SETFONT), reinterpret_cast<WPARAM>(m_browserWindow->urlBarFont()), TRUE);
-
if (m_browserWindow->usesLayeredWebView() || !m_browserWindow->hwnd())
return;
MoveWindow(m_browserWindow->hwnd(), 0, height, rcClient.right, rcClient.bottom - height, TRUE);
@@ -229,7 +228,7 @@
thisWindow->resizeSubViews();
break;
case WM_DPICHANGED:
- thisWindow->browserWindow()->updateDeviceScaleFactor();
+ thisWindow->updateDeviceScaleFactor();
return DefWindowProc(hWnd, message, wParam, lParam);
default:
return DefWindowProc(hWnd, message, wParam, lParam);
@@ -418,3 +417,14 @@
_bstr_t bstr(strPtr);
loadURL(bstr.GetBSTR());
}
+
+void MainWindow::updateDeviceScaleFactor()
+{
+ if (m_hURLBarFont)
+ ::DeleteObject(m_hURLBarFont);
+ auto scaleFactor = WebCore::deviceScaleFactorForWindow(m_hMainWnd);
+ int fontHeight = scaleFactor * urlBarHeight * 3 / 4;
+ m_hURLBarFont = ::CreateFont(fontHeight, 0, 0, 0, FW_NORMAL, FALSE, FALSE, FALSE, DEFAULT_CHARSET,
+ OUT_TT_ONLY_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE, L"Times New Roman");
+ ::SendMessage(m_hURLBarWnd, static_cast<UINT>(WM_SETFONT), reinterpret_cast<WPARAM>(m_hURLBarFont), TRUE);
+}
Modified: trunk/Tools/MiniBrowser/win/MainWindow.h (232608 => 232609)
--- trunk/Tools/MiniBrowser/win/MainWindow.h 2018-06-08 01:03:16 UTC (rev 232608)
+++ trunk/Tools/MiniBrowser/win/MainWindow.h 2018-06-08 02:19:39 UTC (rev 232609)
@@ -54,6 +54,7 @@
MainWindow();
bool toggleMenuItem(UINT menuID);
void onURLBarEnter();
+ void updateDeviceScaleFactor();
HWND m_hMainWnd { nullptr };
HWND m_hURLBarWnd { nullptr };
@@ -60,5 +61,6 @@
HWND m_hBackButtonWnd { nullptr };
HWND m_hForwardButtonWnd { nullptr };
HWND m_hCacheWnd { nullptr };
+ HGDIOBJ m_hURLBarFont { nullptr };
RefPtr<MiniBrowser> m_browserWindow;
};
Modified: trunk/Tools/MiniBrowser/win/MiniBrowser.cpp (232608 => 232609)
--- trunk/Tools/MiniBrowser/win/MiniBrowser.cpp 2018-06-08 01:03:16 UTC (rev 232608)
+++ trunk/Tools/MiniBrowser/win/MiniBrowser.cpp 2018-06-08 02:19:39 UTC (rev 232609)
@@ -88,8 +88,6 @@
HRESULT MiniBrowser::init()
{
- updateDeviceScaleFactor();
-
HRESULT hr = WebKitCreateInstance(CLSID_WebView, 0, IID_IWebView, reinterpret_cast<void**>(&m_webView.GetInterfacePtr()));
if (FAILED(hr))
return hr;
@@ -627,22 +625,6 @@
OutputDebugString(L"\n\n");
}
-void MiniBrowser::generateFontForScaleFactor(float scaleFactor)
-{
- if (m_hURLBarFont)
- ::DeleteObject(m_hURLBarFont);
-
- m_hURLBarFont = ::CreateFont(scaleFactor * 18, 0, 0, 0, FW_NORMAL, FALSE, FALSE, FALSE, DEFAULT_CHARSET,
- OUT_TT_ONLY_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE, L"Times New Roman");
-}
-
-
-void MiniBrowser::updateDeviceScaleFactor()
-{
- m_deviceScaleFactor = WebCore::deviceScaleFactorForWindow(m_hMainWnd);
- generateFontForScaleFactor(m_deviceScaleFactor);
-}
-
static BOOL CALLBACK AbortProc(HDC hDC, int Error)
{
MSG msg;
Modified: trunk/Tools/MiniBrowser/win/MiniBrowser.h (232608 => 232609)
--- trunk/Tools/MiniBrowser/win/MiniBrowser.h 2018-06-08 01:03:16 UTC (rev 232608)
+++ trunk/Tools/MiniBrowser/win/MiniBrowser.h 2018-06-08 02:19:39 UTC (rev 232609)
@@ -100,10 +100,6 @@
void showLayerTree();
- float deviceScaleFactor() { return m_deviceScaleFactor; }
- void updateDeviceScaleFactor();
-
- HGDIOBJ urlBarFont() { return m_hURLBarFont; }
HWND hwnd() { return m_viewWnd; }
void print();
@@ -113,7 +109,6 @@
private:
MiniBrowser(HWND mainWnd, HWND urlBarWnd, bool useLayeredWebView, bool pageLoadTesting);
void subclassForLayeredWindow();
- void generateFontForScaleFactor(float);
bool setCacheFolder();
std::vector<IWebHistoryItemPtr> m_historyItems;
@@ -139,9 +134,7 @@
HWND m_hMainWnd { nullptr };
HWND m_hURLBarWnd { nullptr };
- HGDIOBJ m_hURLBarFont { nullptr };
HWND m_viewWnd { nullptr };
- float m_deviceScaleFactor { 1.0f };
bool m_useLayeredWebView;
};