From 3779147ffc1b5876565dfb85c0219e65111ee0c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= <morten.sorvig@digia.com>
Date: Wed, 16 Jan 2013 22:06:59 +0100
Subject: [PATCH] Add 2x icons for retina displays.

This change updates the mode selector/fancyactionbar
in Qt Creator with new high-resolution icons.

Set Qt::AA_UseHighDpiImages on Qt 5.1 and higher to
make QIcon generate high-dpi pixmaps. Add "@2x" mode
images.

Update StyleHelper::drawIconWithShadow to handle high-dpi
pixmaps. The shadow-drawing algorithm is kept in device
pixels.

Change-Id: I411b7a24e534a2d75a1bbdc4d10219dcbea26bed
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
---
 src/app/main.cpp                              |   4 +++
 src/libs/utils/stylehelper.cpp                |  32 +++++++++++++++---
 src/libs/utils/stylehelper.h                  |   4 +--
 src/plugins/analyzerbase/analyzerbase.qrc     |   1 +
 .../analyzerbase/images/analyzer_mode@2x.png  | Bin 0 -> 4194 bytes
 src/plugins/coreplugin/coreconstants.h        |   1 +
 src/plugins/coreplugin/fancyactionbar.qrc     |   5 +++
 .../coreplugin/images/mode_Debug@2x.png       | Bin 0 -> 6535 bytes
 .../coreplugin/images/mode_Design@2x.png      | Bin 0 -> 6227 bytes
 .../coreplugin/images/mode_Edit@2x.png        | Bin 0 -> 3157 bytes
 .../coreplugin/images/mode_Project@2x.png     | Bin 0 -> 4227 bytes
 .../coreplugin/images/mode_Reference@2x.png   | Bin 0 -> 5215 bytes
 src/plugins/welcome/welcomeplugin.cpp         |   6 +++-
 13 files changed, 45 insertions(+), 8 deletions(-)
 create mode 100644 src/plugins/analyzerbase/images/analyzer_mode@2x.png
 create mode 100644 src/plugins/coreplugin/images/mode_Debug@2x.png
 create mode 100644 src/plugins/coreplugin/images/mode_Design@2x.png
 create mode 100644 src/plugins/coreplugin/images/mode_Edit@2x.png
 create mode 100644 src/plugins/coreplugin/images/mode_Project@2x.png
 create mode 100644 src/plugins/coreplugin/images/mode_Reference@2x.png

diff --git a/src/app/main.cpp b/src/app/main.cpp
index c7fe2c623cc..f9b2cd747a0 100644
--- a/src/app/main.cpp
+++ b/src/app/main.cpp
@@ -307,6 +307,10 @@ int main(int argc, char **argv)
     QtSystemExceptionHandler systemExceptionHandler;
 #endif
 
+#if QT_VERSION >= 0x050100
+    app.setAttribute(Qt::AA_UseHighDpiPixmaps);
+#endif
+
     // Manually determine -settingspath command line option
     // We can't use the regular way of the plugin manager, because that needs to parse pluginspecs
     // but the settings path can influence which plugins are enabled
diff --git a/src/libs/utils/stylehelper.cpp b/src/libs/utils/stylehelper.cpp
index 5d7285c5baa..0bb8327d44e 100644
--- a/src/libs/utils/stylehelper.cpp
+++ b/src/libs/utils/stylehelper.cpp
@@ -35,6 +35,7 @@
 #include <QPainter>
 #include <QApplication>
 #include <QStyleOption>
+#include <qmath.h>
 
 // Clamps float color values within (0, 255)
 static int clamp(float x)
@@ -363,15 +364,32 @@ void StyleHelper::menuGradient(QPainter *painter, const QRect &spanRect, const Q
     }
 }
 
+static qreal pixmapDevicePixelRatio(const QPixmap &pixmap)
+{
+#if QT_VERSION > 0x050000
+    return pixmap.devicePixelRatio();
+#else
+    return 1.0;
+#endif
+}
+
 // Draws a cached pixmap with shadow
 void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect,
-                                     QPainter *p, QIcon::Mode iconMode, int radius, const QColor &color, const QPoint &offset)
+                                     QPainter *p, QIcon::Mode iconMode, int dipRadius, const QColor &color, const QPoint &dipOffset)
 {
     QPixmap cache;
     QString pixmapName = QString::fromLatin1("icon %0 %1 %2").arg(icon.cacheKey()).arg(iconMode).arg(rect.height());
 
     if (!QPixmapCache::find(pixmapName, cache)) {
+        // High-dpi support: The in parameters (rect, radius, offset) are in
+        // device-independent pixels. The call to QIcon::pixmap() below might
+        // return a high-dpi pixmap, which will in that case have a devicePixelRatio
+        // different than 1. The shadow drawing caluculations are done in device
+        // pixels.
         QPixmap px = icon.pixmap(rect.size());
+        int devicePixelRatio = qCeil(pixmapDevicePixelRatio(px));
+        int radius = dipRadius * devicePixelRatio;
+        QPoint offset = dipOffset * devicePixelRatio;
         cache = QPixmap(px.size() + QSize(radius * 2, radius * 2));
         cache.fill(Qt::transparent);
 
@@ -396,7 +414,7 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect,
 
         QPainter tmpPainter(&tmp);
         tmpPainter.setCompositionMode(QPainter::CompositionMode_Source);
-        tmpPainter.drawPixmap(QPoint(radius, radius), px);
+        tmpPainter.drawPixmap(QRect(radius, radius, px.width(), px.height()), px);
         tmpPainter.end();
 
         // blur the alpha channel
@@ -423,13 +441,17 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect,
         cachePainter.drawImage(QRect(0, 0, cache.rect().width(), cache.rect().height()), tmp);
 
         // Draw the actual pixmap...
-        cachePainter.drawPixmap(QPoint(radius, radius) + offset, px);
+        cachePainter.drawPixmap(QRect(QPoint(radius, radius) + offset, QSize(px.width(), px.height())), px);
+#if QT_VERSION > 0x050000
+        cache.setDevicePixelRatio(devicePixelRatio);
+#endif
         QPixmapCache::insert(pixmapName, cache);
     }
 
     QRect targetRect = cache.rect();
-    targetRect.moveCenter(rect.center());
-    p->drawPixmap(targetRect.topLeft() - offset, cache);
+    targetRect.setSize(targetRect.size() / pixmapDevicePixelRatio(cache));
+    targetRect.moveCenter(rect.center() - dipOffset);
+    p->drawPixmap(targetRect, cache);
 }
 
 // Draws a CSS-like border image where the defined borders are not stretched
diff --git a/src/libs/utils/stylehelper.h b/src/libs/utils/stylehelper.h
index 75be2220adc..39044d8aafb 100644
--- a/src/libs/utils/stylehelper.h
+++ b/src/libs/utils/stylehelper.h
@@ -83,8 +83,8 @@ public:
     static bool usePixmapCache() { return true; }
 
     static void drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter *p, QIcon::Mode iconMode,
-                                   int radius = 3, const QColor &color = QColor(0, 0, 0, 130),
-                                   const QPoint &offset = QPoint(1, -2));
+                                   int dipRadius = 3, const QColor &color = QColor(0, 0, 0, 130),
+                                   const QPoint &dipOffset = QPoint(1, -2));
     static void drawCornerImage(const QImage &img, QPainter *painter, QRect rect,
                          int left = 0, int top = 0, int right = 0, int bottom = 0);
 
diff --git a/src/plugins/analyzerbase/analyzerbase.qrc b/src/plugins/analyzerbase/analyzerbase.qrc
index 679ef7db3df..12b8ad1f54e 100644
--- a/src/plugins/analyzerbase/analyzerbase.qrc
+++ b/src/plugins/analyzerbase/analyzerbase.qrc
@@ -1,6 +1,7 @@
 <RCC>
     <qresource prefix="/">
         <file>images/analyzer_mode.png</file>
+        <file>images/analyzer_mode@2x.png</file>
         <file>images/analyzer_category.png</file>
         <file>images/analyzer_start_small.png</file>
     </qresource>
diff --git a/src/plugins/analyzerbase/images/analyzer_mode@2x.png b/src/plugins/analyzerbase/images/analyzer_mode@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..af8b8dea8c10643b393bf6ab5d16c62a377098ee
GIT binary patch
literal 4194
zcmbVPc{r5&+aD8>E#Ww}YK%z2%ov6l>oC@Ahp`qJV=yvi%nW8^8I&anNt*~MI<|ze
zgzS=aT1Y3mQubX*e&d|edEfWC&h`7_eXi&EZqNO>@6Ww_pC!@G#!QG`njZiF2w9k8
z>^Z&R-o?kuX@4gMjc__Cx`_+jf$T#M#Zd_Wv^Uv{0J0$Ad<pghoHsM*1wj`8*yl&Y
zy3k#$tx$L}Ne#CrqsAanIA{Ps*MLF6;m;B1ATNS1F;EY@Sl0*!5xw=m&YIRxYl<<!
zk7yo7B{+oHVDVw+@JMg4fj&r=f#N725$HG&gA@=*LoxKgf9geX#(T>UFz8Pa`Z+!D
zU!+{D?Lfw4DgmUa23N&HVK5K^p$5~?L?B=)Aay8A9RlT?2vwK{N)v%n*8=^0fH~Hv
z-aaUMjOpLDI5R!4ADvD?K_H=_p=zOUH8Rx~0z)E^dpgwBRXGx>G-e<j$50KV$^X=V
zA<*ztB85&Q2ZHuA;=IVgbUiSK>0d68DAv~hC=R6k9Vkx7APgJ@0#k!RNTfZ#{*<QC
z?Fs)w<6os|SSE!4u_w^T!BjjaA3pLw!JOFrcSC!E95yIhDv^^ETmXiQ4<-=;=@uA0
zFz1e%H_;nqiq<lP!L&4>TIx`QHVmc>)rO<dNI2R^Qv<Du*7&L8->@bc2#gWZ6pcWd
zax!6}t_|n37<F~H3Eb2e14aDAS_IPQxIjGNr(Gh)?%!DCf5oDVsRSIIOvRGP0Y59i
z&W}td)BMO3kg)>-q-2f569e}aPV6P<FMlxvDlvrMZAvARKz~LUMf?{AP)%(P>;LPy
zi7C_s$%%mm2CfeN8|(f5i5i4M2C`Qk|EpYnE^%sbZ}?B~b0+_6A3`8!&rms=<LKkk
zH2^>`)dGXYGKS|)yZgxw{-R&8T36>*R(a)qYn5spk$)q}T}yRGPHyc}?gLLg;sGJG
zYY&9-A;cyKk(j&oka+5a1H~x!+SJ1f?2m0tsVKRsTn(%RDL}U4D&fWB=?sPW(Yfy%
zci`vELVbKgr;B6CO9Y&0i*vWmFCsU;hi`V9A7~L-n7$f&{#gLOrvqS<F))*or{r#+
zyZ+jttA_Szfx&BLYC1OcBHcaPLpw_K)X6J{b)1IlLKoHC2TSU3HzG#M?jmVE-)08x
zZFF^68cFh77_kBC^_wH-1H8N@78zv}t%s-;=KMrk(%G=J0W%0*tCI~_+21}hGn0fC
z5nnK(-7Ul_8#K+XZf`CgUudZWV2gPi9XE3U3zqTmZuK`1On?6_TRxWTNKsjXCGZiu
zyRWCG=@g`%`;EV*&SgL8!W!8NTe7#Vo}n=e0_6`&-DU^Xt}J5v5lum|cG!#?61<U7
zKD_<&BlR-b5gV={F?nNKydL!85HLUenO+ITBtA`YrZY{R@|k_#L-gXxjt&}a>h^}m
za31#nld*lD^qyHB7=aAB+f{XL&;>A8)nUNXFl#vb(JN}PK^QeLJALEq^{iYrELcH~
zRp}sp|6Ra_w+Hm*QK^<9-bhm7HdR47S%dribUA4zO!v_*29Zw&{Fb&#XWJ*G-%2b|
zt^I`TKCSoXe%gQQuFdJs&0N$pYZg|$sMAW~(&^<((mAuRioC8J_H~lTw?gIyzW~cB
z$-j2SM@rM=uwUP7uDpkL<m2$n>xbam`l&v4uaZ<)k=<r=9($Q1li$CtKB}#i&SVK%
zVM|zR3!Z#MAA{za=;{W<)n0MKxUOS2ZQ=g6+g$EfTmUV&Ivw&qi6~MaN_=>E+u4k3
z>-Qe~rSq<4A;0h#(q|KP^}b5^0be@_iIphsk0Xvx2zr}$ytwBk`wlo7@eLUg7sbR$
zYdAuSV*@44%O-7zcG4gCQ^L3T7Q%#jBPh{3c4`GdQ#~gxTlyiCu9=Q)8*D37p0?KB
z$h<dpuMgBA6^D&2Os3yoQPSOcbvO2d|MR5AEv}2ehCU6K7lT{TNoi({!D8kHo`EOi
zjTJ9nwg$-IjbF;AGogY4m+r%=qdJ5i)JOHnd(JSu|G>1Df5G@d-4ptp729#AruBz5
zzkae)QcSt^QtC`>j!^U>%Mt6j-8(;4!xg^qJf&%KxHCcMh(}^vX~U=~m&+sk<}v@P
z0+Z=y6SEH{yiF_(6dUfz%yAno5df8_mwW*){(iQ|r?8P{_j^ZE=fkY?Syje`^&>%-
zs@#N1yL*g#+OtS1Em0%ij4$sq+?wjWCe3dPzZ>tgqi9vXV>H)V$aZUWG|O%H@f`6;
z#_?w4ZW&SdEx7G%2~=rPbBNo1-0BJWcEI?G(Hys?wMqNnO>&hR6b|p{?v2n$siPj&
zG)h6+ZT_KuCaZxzc^H^tY;%%Nyfkg!y%4_AS23qPL5yj^`c0HFbLh1LYpZi~&C5Um
zL#Va$zWLEr-J99jS3a+PJ=Do#{aP9x4R|%|E0?t>!ITZVB3WR$Heor-Mm^9j6eIy%
zr9n@Ho~+LtfvHJEjyGRyrHS(xLHc%7KH{s|D4%cf<Ue&u!1DNu8;xB&cZ`v=xbCo;
zdymBzR9|WM79hvEbxX=asp=tH618x>U}I#5fi^D)ow)$D-~*~&@;!0pBUXOF7k2!6
z`|$@{#T$iOai#6uV$XAxZ>Aj7=RQ*z$dw;z*J3U|gDExA$F|LadyGl%C_?69>uf-f
zrnOOE%}v*sr_Dz@1qL+)CLd>ruv8MX(b3YNnVIY%6KOb3+4K;xCz?f65=+(0Irm9t
zytg$KqtCh{gRD<T)cn}yI0!xibpbe89lu%dM8rr%1d$Q08_$;}v%p<40K3!48d%;h
z^4Zn%i(=6Ui@PH4n#c>2E)CEq0Dtnl-Mi@Dv*q7w4w=%1)RL2%1{+tA+=%V*>bwb8
zkI7N&?Q9V_@KZoq=5PID<sAp}dKNok#iEbwFM3(1*7_v=&AKd9Ktgx<9whet58(I6
zWm5iADG+lj)6A1^yVSj9xqIA-HOw0$=2o0Io|u|*MaNs3x$(m(_j032UG*6U&wPz0
zkjXqqPc$ZO5NPx<!RBJxig&9n5-M(EgRYh~6}0C^6tMHCc0-TF25@z;ydQ*PN&V%w
znOQx;MnWrX+t1NcpO~t4OHXC9wIiGf-WC?=xjg+IH7}H%_G{(-pp$Zj&;D2x>kk2L
zjXpGJgLw#_PTOaqs<b0@dtHjLd$!RM+=Pj_82;j<-RZ38ih`&tLzX)DScXo`ybPrx
zjLWC*NAkT3&jp&vl>9<$;Nb%gctF0PQ|2P^N(Dl+3ZcLP2d_LfS6g7E$ONKRH!N&H
zg8eSpwE0Oo{^DiHOl>E8RkkGLBv`P7i}<l^K|oHMlxfSHU}OphEjI&EwYBawhRlJv
z{APsH@pNX5Xco}s8QRr%N9d3tia%ezDfx>!yGpd~cGVc*S6N;gXS&ELA1)sAYptHt
z+4sauo{XK-)#cJ4Rw^IaXkTGH1Fw)qn5`LOg}gllg$QG)&km-YKo7pe=FQn;>O~r0
zYjUMQiw*s}s4w5zQ1VTYNy!ocaGL80T2uIib&~$8f{MP+%dt5bl4XN`#BxKI<|)z#
zx_)>PiHW~j1ylT$FU=C$YqKO3wC+SgwBB;xmMctI4`I~n8$u!7d2a48%kg$P^kA0A
zfUk@9sOd+X$xT2!Iv=iAQD*sy;q)8NAZ)vNO9&R-Jml27>=>fkI%8{gtaIyb|M)ss
z_eV?1KxWqcB*8EZqf6W|m6{+8d$ktl#vK#x<JulL$Y=o!sSxK3ROJHe_Xv(ZAJp%m
z|NdkjI<;l21CJT9NIWE}@`W;UeiYcZKK5-wfpSODD@`$5l9X>EK2%Dx?5@=375QS1
zv{9c>8wVQOJLrCkt4@70tlU1UaOXAt=uqGY;HVVs7E#{ks$5WMqQJpN-z4jNk#d#?
zP8mfjKZ%HI7M7GCM2E;<ZP9KFQ;2CgbGX!_K*%!tR_L&>c8P)?UP+M)Dz1o@Q(tq}
zQ1~D@!u`xC-Eq{_9mDImq?4HP?wxCO_{Y(uF7j@ITW<6B_~W8VP<NRg<?8C8S@?0d
zgIBZQ_3Qc=D1D!Ve%MLQV{KiNu2Yr4QysQUvZ)ZzP&#@^rBJYdtFqriKgXlY47lQU
zd6~GfmLy#BE!;Cmw4hFftG_9(8@(aq`X=~vC*ve~v)mx9#!<;CB8+UFe%?dO5ozhk
zUR?3I3iK<F=#qn+^H^C>cZYEGKjVt;&N<gmX&1l3<*IGy9nO^VBa0}e-|)IYU`^%$
zF7U3s+|LkohsdSY>e$3)d2FJI=0cs#T&~2R$8`ziiZ;a|l{nSt6L1JXxM&l^mE$j#
z)%{F`8<sMOF&nde&3&OlG||GfWOzP=UUg#t>7VHQ2Y1GFtY9)u%Xw*P$g?&Q=vQ^U
zsY<?9MJR_!R7J4gh3GBwGK?v#GfJB7O5zOI+Qo#qHy023y_Kl3l}0Oy%wKuM3<8$p
zpSfmDGRTuOqFJVkOK`TaWb$2Y1-2_Y81GP2=FuWDbXhOT=^f{Ta7mG}wS?0S{vvLx
z*89En_0-fcc+stEH;mu(EPiR8regc)N8L??iw6dN2-xej%9uMp^hUu4oM7Vd@+ii1
zz-w)Nec?Xc)$S!=4w+Q=;AOh4KGQi|TNA3PhP4Y<ULA`)IP#?JYWu*cU)jZa=Qmm-
zR*-ce^Ip4@>8_0G#v>zd*Gr%ecV)=Wn$|-kRs<^JCOcA&e>-k-XH367HEml)l$S>W
zbe2*lfTl1H=Rv}4%3ZA1w5$Nv=Jn_^B2W9W_0GTNwo}d+8*7RUxVm=W&P;k7`{fWn
zsyF^<r1paEO~cg4yS>01yTPw=7@gauaiIkyUncYGlXC!=&1`Cm{JM$JwNk1<%LTQ9
z#yroXOT9Xa31r_7uL^8;)$)tI{U^SDWtKjz5W!c*6*-qFep}1EzvM_YSfBfnNpAQm
zt(o4jQ&rYxAv06QUXIw_us)(q8H0ZfZ(tO}Bc~v(S!MOx3w1}k*-}SxC7g7`&stjo
za||vhTe`fQazGjVwm_G%Ylw^Cu5Xe*m6M>{t+cZX^cD>>6H&yRO>H@>!i}5tW?!ob
z?wWpVwyQC43c%v#7o7sF|F(SCqjP)zS`^U1!68@h(zTwbJI^{^J^&zi9-UxWbN%sZ
cdKV}NNT^(%FTSHTy!Y2{VPeC1?Rv)i2OT6(F#rGn

literal 0
HcmV?d00001

diff --git a/src/plugins/coreplugin/coreconstants.h b/src/plugins/coreplugin/coreconstants.h
index ab257ca744d..eb234d3d866 100644
--- a/src/plugins/coreplugin/coreconstants.h
+++ b/src/plugins/coreplugin/coreconstants.h
@@ -204,6 +204,7 @@ const char ICON_CLOSE_SPLIT_RIGHT[]  = ":/core/images/splitbutton_closeright.png
 const char ICON_FILTER[]             = ":/core/images/filtericon.png";
 const char ICON_LINK[]               = ":/core/images/linkicon.png";
 const char ICON_QTLOGO_32[]          = ":/core/images/logo/32/QtProject-qtcreator.png";
+const char ICON_QTLOGO_64[]          = ":/core/images/logo/64/QtProject-qtcreator.png";
 const char ICON_QTLOGO_128[]         = ":/core/images/logo/128/QtProject-qtcreator.png";
 
 const char WIZARD_CATEGORY_QT[] = "R.Qt";
diff --git a/src/plugins/coreplugin/fancyactionbar.qrc b/src/plugins/coreplugin/fancyactionbar.qrc
index c06c43e476d..cc1edb5ef34 100644
--- a/src/plugins/coreplugin/fancyactionbar.qrc
+++ b/src/plugins/coreplugin/fancyactionbar.qrc
@@ -1,10 +1,15 @@
 <RCC>
     <qresource prefix="/fancyactionbar">
         <file>images/mode_Debug.png</file>
+        <file>images/mode_Debug@2x.png</file>
         <file>images/mode_Edit.png</file>
+        <file>images/mode_Edit@2x.png</file>
         <file>images/mode_Output.png</file>
         <file>images/mode_Project.png</file>
+        <file>images/mode_Project@2x.png</file>
         <file>images/mode_Reference.png</file>
+        <file>images/mode_Reference@2x.png</file>
         <file>images/mode_Design.png</file>
+        <file>images/mode_Design@2x.png</file>
     </qresource>
 </RCC>
diff --git a/src/plugins/coreplugin/images/mode_Debug@2x.png b/src/plugins/coreplugin/images/mode_Debug@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..0dc56c6d93c7825db6972f06f9c5d8d9cc4a6c73
GIT binary patch
literal 6535
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

literal 0
HcmV?d00001

diff --git a/src/plugins/coreplugin/images/mode_Design@2x.png b/src/plugins/coreplugin/images/mode_Design@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..85e08c360b834c2e36f04431777329f24ce4cace
GIT binary patch
literal 6227
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

literal 0
HcmV?d00001

diff --git a/src/plugins/coreplugin/images/mode_Edit@2x.png b/src/plugins/coreplugin/images/mode_Edit@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..d223679dc36605d6f16ef8899cf7f87b2d3a41f1
GIT binary patch
literal 3157
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
QZT{#x*f>!tt$Y&y4V%zZbN~PV

literal 0
HcmV?d00001

diff --git a/src/plugins/coreplugin/images/mode_Project@2x.png b/src/plugins/coreplugin/images/mode_Project@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..f0b7fdae0efaf3abcd4fdd1f04e1eb02c951b418
GIT binary patch
literal 4227
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
G$o~M?CSKtH

literal 0
HcmV?d00001

diff --git a/src/plugins/coreplugin/images/mode_Reference@2x.png b/src/plugins/coreplugin/images/mode_Reference@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..ae8db24fd7521aa80701ce25ebc7d603bf74be9c
GIT binary patch
literal 5215
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
SSKT@L<)@=z2rpN22>Taf@J&wu

literal 0
HcmV?d00001

diff --git a/src/plugins/welcome/welcomeplugin.cpp b/src/plugins/welcome/welcomeplugin.cpp
index bf8fdf9e946..36c53cda764 100644
--- a/src/plugins/welcome/welcomeplugin.cpp
+++ b/src/plugins/welcome/welcomeplugin.cpp
@@ -136,7 +136,11 @@ WelcomeMode::WelcomeMode() :
     , m_networkAccessManagerFactory(new NetworkAccessManagerFactory)
 {
     setDisplayName(tr("Welcome"));
-    setIcon(QIcon(QLatin1String(Core::Constants::ICON_QTLOGO_32)));
+    QIcon qtLogo;
+    qtLogo.addFile(QLatin1String(Core::Constants::ICON_QTLOGO_32));
+    qtLogo.addFile(QLatin1String(Core::Constants::ICON_QTLOGO_64));
+    qtLogo.addFile(QLatin1String(Core::Constants::ICON_QTLOGO_128));
+    setIcon(qtLogo);
     setPriority(Core::Constants::P_MODE_WELCOME);
     setId(Core::Constants::MODE_WELCOME);
     setType(Core::Constants::MODE_WELCOME_TYPE);
-- 
GitLab