Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(704)

Unified Diff: ui/gfx/win/window_impl.cc

Issue 772533002: Fix icon on Windows XP taskbar (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Patch Set 4 + fix for regression 438980 Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/gfx/win/window_impl.cc
diff --git a/ui/gfx/win/window_impl.cc b/ui/gfx/win/window_impl.cc
index b0c4fa7ad34349c7e10bb7a5663d13287ee65cec..c9f235f05f894c03e27793396b58cdd579591b4d 100644
--- a/ui/gfx/win/window_impl.cc
+++ b/ui/gfx/win/window_impl.cc
@@ -33,10 +33,12 @@ const wchar_t* const WindowImpl::kBaseClassName = L"Chrome_WidgetWin_";
struct ClassInfo {
UINT style;
HICON icon;
+ HICON small_icon;
- ClassInfo(int style, HICON icon)
+ ClassInfo(int style, HICON icon, HICON small_icon)
: style(style),
- icon(icon) {}
+ icon(icon),
+ small_icon(small_icon) {}
// Compares two ClassInfos. Returns true if all members match.
bool Equals(const ClassInfo& other) const {
@@ -135,7 +137,7 @@ ATOM ClassRegistrar::RetrieveClassAtom(const ClassInfo& class_info) {
reinterpret_cast<HBRUSH>(GetStockObject(BLACK_BRUSH)),
NULL,
class_info.icon,
- class_info.icon,
+ class_info.small_icon,
&window_class);
HMODULE instance = window_class.hInstance;
ATOM atom = RegisterClassEx(&window_class);
@@ -256,7 +258,11 @@ void WindowImpl::Init(HWND parent, const Rect& bounds) {
}
HICON WindowImpl::GetDefaultWindowIcon() const {
- return NULL;
+ return nullptr;
+}
+
+HICON WindowImpl::GetSmallWindowIcon() const {
+ return nullptr;
}
LRESULT WindowImpl::OnWndProc(UINT message, WPARAM w_param, LPARAM l_param) {
@@ -305,7 +311,8 @@ LRESULT CALLBACK WindowImpl::WndProc(HWND hwnd,
ATOM WindowImpl::GetWindowClassAtom() {
HICON icon = GetDefaultWindowIcon();
- ClassInfo class_info(initial_class_style(), icon);
+ HICON small_icon = GetSmallWindowIcon();
+ ClassInfo class_info(initial_class_style(), icon, small_icon);
return ClassRegistrar::GetInstance()->RetrieveClassAtom(class_info);
}

Powered by Google App Engine
This is Rietveld 408576698