From 4c4315f532063a37ae096aa546564021273dfb0e Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Mon, 2 Feb 2015 09:28:54 +0100 Subject: [PATCH] SONAR-5966 apply feedback --- server/sonar-web/src/main/hbs/issue/issue.hbs | 28 ++++++++++-------- server/sonar-web/src/main/js/translate.js | 2 +- .../src/main/less/components/issues.less | 11 +++++-- server/sonar-web/src/main/less/icons.less | 24 +++++++++++---- .../fonts/{sonar-5.0.eot => sonar-5.1.eot} | Bin 19300 -> 17608 bytes .../fonts/{sonar-5.0.svg => sonar-5.1.svg} | 18 ++++++----- .../fonts/{sonar-5.0.ttf => sonar-5.1.ttf} | Bin 19136 -> 17444 bytes .../fonts/{sonar-5.0.woff => sonar-5.1.woff} | Bin 19212 -> 17520 bytes .../resources/org/sonar/l10n/core.properties | 1 + 9 files changed, 55 insertions(+), 29 deletions(-) rename server/sonar-web/src/main/webapp/fonts/{sonar-5.0.eot => sonar-5.1.eot} (54%) rename server/sonar-web/src/main/webapp/fonts/{sonar-5.0.svg => sonar-5.1.svg} (79%) rename server/sonar-web/src/main/webapp/fonts/{sonar-5.0.ttf => sonar-5.1.ttf} (54%) rename server/sonar-web/src/main/webapp/fonts/{sonar-5.0.woff => sonar-5.1.woff} (54%) diff --git a/server/sonar-web/src/main/hbs/issue/issue.hbs b/server/sonar-web/src/main/hbs/issue/issue.hbs index bae85b20c6b..f9825f28342 100644 --- a/server/sonar-web/src/main/hbs/issue/issue.hbs +++ b/server/sonar-web/src/main/hbs/issue/issue.hbs @@ -3,17 +3,11 @@
-
{{message}} {{t 'rule'}}
+
{{message}}
- {{#if debt}} -
- {{t 'issue.debt'}} {{debt}} -
- {{/if}} - + {{#if debt}} +
+ + {{tp 'issue.x_debt' debt}} + +
+ {{/if}} + {{#inArray actions "comment"}}
-  {{#if tags}}{{join tags ', '}}{{else}}{{t 'issue.no_tag'}}{{/if}} +  {{#if tags}}{{join tags ', '}}{{else}}{{t 'issue.no_tag'}}{{/if}}   {{else}} -  {{#if tags}}{{join tags ', '}}{{else}}{{t 'issue.no_tag'}}{{/if}} +  {{#if tags}}{{join tags ', '}}{{else}}{{t 'issue.no_tag'}}{{/if}} {{/inArray}}
@@ -128,15 +130,15 @@
{{#each comments}}
-
 {{userName}} +
 {{userName}}
{{{show html htmlText}}}
({{fromNow createdAt}})
{{#if updatable}} - {{t 'edit'}}  - {{t 'delete'}} + + {{/if}}
diff --git a/server/sonar-web/src/main/js/translate.js b/server/sonar-web/src/main/js/translate.js index 6501ac910fa..4bc86736641 100644 --- a/server/sonar-web/src/main/js/translate.js +++ b/server/sonar-web/src/main/js/translate.js @@ -20,7 +20,7 @@ message = message.replace('{' + i + '}', p); }); } - return message || ''; + return message || (key + ' ' + args.join(' ')); }; diff --git a/server/sonar-web/src/main/less/components/issues.less b/server/sonar-web/src/main/less/components/issues.less index 1b4d9aacc43..b4a0ec67399 100644 --- a/server/sonar-web/src/main/less/components/issues.less +++ b/server/sonar-web/src/main/less/components/issues.less @@ -70,9 +70,9 @@ } .issue-rule { - font-size: 11px; - font-weight: 400; - .link-no-underline; + padding: 0 3px; + background-color: fade(@blue, 30%); + opacity: 0.5; } .issue-component { @@ -160,6 +160,7 @@ .issue-comment { display: table; + width: 100%; } .issue-comment + .issue-comment { @@ -170,14 +171,17 @@ display: table-cell; vertical-align: top; max-width: 130px; + width: 1px; line-height: 18px; color: @secondFontColor; + font-weight: 500; .text-ellipsis; } .issue-comment-age { display: table-cell; vertical-align: top; + width: 1px; line-height: 18px; white-space: nowrap; color: @secondFontColor; @@ -195,6 +199,7 @@ .issue-comment-actions { display: table-cell; vertical-align: top; + width: 1px; padding-left: 5px; line-height: 18px; white-space: nowrap; diff --git a/server/sonar-web/src/main/less/icons.less b/server/sonar-web/src/main/less/icons.less index 189dfd35795..f111413d818 100644 --- a/server/sonar-web/src/main/less/icons.less +++ b/server/sonar-web/src/main/less/icons.less @@ -4,11 +4,11 @@ @font-face { font-family: 'sonar'; - src:url('../fonts/sonar-5.0.eot?'); - src:url('../fonts/sonar-5.0.eot?#iefix') format('embedded-opentype'), - url('../fonts/sonar-5.0.woff?') format('woff'), - url('../fonts/sonar-5.0.ttf?') format('truetype'), - url('../fonts/sonar-5.0.svg?#sonar') format('svg'); + src:url('../fonts/sonar-5.1.eot?'); + src:url('../fonts/sonar-5.1.eot?#iefix') format('embedded-opentype'), + url('../fonts/sonar-5.1.woff?') format('woff'), + url('../fonts/sonar-5.1.ttf?') format('truetype'), + url('../fonts/sonar-5.1.svg?#sonar') format('svg'); font-weight: normal; font-style: normal; } @@ -32,6 +32,10 @@ a[class^="icon-"], a[class*=" icon-"] { .link-no-underline; } +.icon-half-transparent { + opacity: 0.5; +} + /* * Colors @@ -541,6 +545,16 @@ a[class^="icon-"], a[class*=" icon-"] { content: "\f002"; font-size: @iconFontSize; } +.icon-edit:before { + content: "\f040"; + font-size: @iconFontSize; +} +.icon-ellipsis-h:before { + position: relative; + top: 1px; + content: "\f141"; + font-size: @iconSmallFontSize; +} /* diff --git a/server/sonar-web/src/main/webapp/fonts/sonar-5.0.eot b/server/sonar-web/src/main/webapp/fonts/sonar-5.1.eot similarity index 54% rename from server/sonar-web/src/main/webapp/fonts/sonar-5.0.eot rename to server/sonar-web/src/main/webapp/fonts/sonar-5.1.eot index 79dc7be85f69b90c3b79390abcbb1214f71f279c..a7e6b566e4b0fc67d7acf9b433192b14eafdaf06 100755 GIT binary patch delta 4902 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 - + - + - + - + + - + @@ -39,10 +40,12 @@ + + @@ -67,15 +70,16 @@ - + - + + \ No newline at end of file diff --git a/server/sonar-web/src/main/webapp/fonts/sonar-5.0.ttf b/server/sonar-web/src/main/webapp/fonts/sonar-5.1.ttf similarity index 54% rename from server/sonar-web/src/main/webapp/fonts/sonar-5.0.ttf rename to server/sonar-web/src/main/webapp/fonts/sonar-5.1.ttf index b0e9bcfbdd88fef454e8ae90b73bd966729b9629..26ef2b9f786b0e244b7534f9288143dda93fd929 100755 GIT binary patch delta 4827 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 J(bKn!{udE+TH62s delta 6671 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 delta 6673 zcmcgwdyHIF89(RTbKiI7&YgF6cV>5X+g)Hw>2|xjDUUL(P}_`nZZJ9ze*^VY0koS}RqU_O13@z%wuIC)$0p^JBIzML_> z19dUgv-Z7l^7hSF0VciyWT#zI+jm~K4Y0czJF7wU;t%h9b;s7tmoWC>3xP9DRX%XR z3p)S=jK(gc>ICwmJ9b@tEnvUE{7b1?Yutl7FS~dZ5Z4|6(r&7EJ$Um^cWu5FgxB4G z{~=W`N5Vbf1L60>FNW8I+rp28tHWxzEL;>0hfeZQW-ty$eyILkvF4O2 zV@AWMvH`Y&eTsdau|<{P(Xl0bDq220vyx9%mgNg&o{O@Uo#Z3D{^PJ1FX1DVnW^6X z5}%w}PQykj!-RPjc=J*igt-R6su?wwW+QAn`z+hV z*i0oFQNq<>N+sfxibbbz&8b|Wpe3!%LoJIMy)BV5D`R3}TQI?OJcFA5`X{%7n|5Jx zW~?D<`%G7wj$v3h)mDxF>X+QW_V_*Aga{aX4rgr{(l(`QHa8KjEfsDLoHtCx3d_e# z@@~U6V#72bhJv@MjRrk}fe)rM92}1M+a?oLOm3L`9+1NGut+r@L63AWx#F1sQH5*_ zfv5yg6BJRTz}z_PyA7cGI62Gm%%9wg0^{&4w$`}L7-aEA_NA`KWt6ZTgQ91eDmE%UW^BjcrOKAS>V_WThiTBpD`D31B5drsZ2t93tf+kR=x@R9nl- zK_J<3o}e}NI)%V5xZ{rNI^%A^4+{98jEk*==-ZI{SPAbD`GXK!zP(J#w9qJB1#2~UwHZSbj)_ri(j1MWO@Z;P1~Frvy~}8urJX}t?TkEGe*KK|UOkW7 zPzV%MxvlFR>!*Poi=fTq#2eZ$@t;8hj^8l7on4B%##20@YUJ&NnR za%xLd^1VdD^Gnf|BRE@Nja7(cnOox4U*7ff-6g#9^bEAI(HF1|S`yaLtfb0VlTpP^ z9kUsqOk1UGJ5v0P;sn{OswjPO0Fe(!lmrBeN_&sSWHg-q}1xB53Klrjg1??f6^!9K5IE<Lty?pU`HbOS0S0YTu>XZPdRSWa5tR>|)zlD`#c(#K@9R|5eZ;$ZcQfR)q51Q!Q`B3RB5z#^da9VZ_) zpMk|!{u{`G?pvnDp|}`h3?L&Grittr9}1y05sZWDceB1{j5uIv2R5J zs_U92P!pCNx=zOTbDp2W+xPI!IBsa8%koXrg_;X5?YfcUgqEE^r~n{Bazz{$OBqA+ z$dGYvS!UV~`cvUZMl8;ZgsJ|(Pn(uSePp|EI~1@PShR}a>3Wc`t}x{=W8z*(|qww+F(*G^)ucstZis2Q+t2LUkf zF}WUMW4w&%o`;@}5h9{+*>pLvjdQ>oI#)u}5S%30s-r^H67;I+Y-pLZ1aK(jI&=WG zdYot|nJ9XGXi|yI(D!iILy;2_E}=(`n^Nd%tJnY?rCPl~7j;-XgH5te8GDUU5StH$b!>5O=LqT9ypp#Mk+SY8aOg>9GBVdT~-H)m@_vaUTH0K z(@Ic11E(nsPsvx><@=8gzt6I)bP)6>!@;PvFd7V#{Xvihum{ff_rMJ(M0Zw2EhfD< z7P(I!*Tg*p!9~s&@KC%gu3#U+kG8`4gtRH_xeLTA`I}N9+RSwlBib=ch?k*-hG@+} z%*k{>Dy6s`Vy}uJP87J>(;Zp>{>jI>SOA}>u*72BhZ(wqZU-9O>h)|IPm#d{U8MHR zYF7){U&MZ-6qjRH%KolXhE&={%D*?xg2a$c4aNcW~M5Xv4+zK$?fs zGk6}nGj`8^!emgtsOata`@oHI&%Z09*=((ym7#RsIqV|bTG*oc$EFAB=S`2sT5Qk2 zMfSaqegJ}7rHd{fLnV%z+8`{WY3;2%p^oyWmT1xJ&)CK zK=X`>j^#Q>)njgOr92Yl9K%FSWZp5w23>^mweLdO%$4}O%l?E>g8?>`KXA>~M(s6o|krFCjlr*0!o68;9fuPxfw@+ z`EBs>UgRP_FXe;$JLC}H#@nPpgVK3&Q7@QQ3TF+E*8Ecs>7E_%@3k&KU_s#lrd>+3 z1Le@OzF6#MJ?iiYDkUPD$n~;*)|4jUcy7+$bHb@bx#!@@C;7myZ-45up9xQYo%s@` zg0X$yb|*UD`ZLwx4RimJ>yS;EU(V_MCC7%rRn!BhHPmnQ{8PKrufFxQt1ha4f7MC# z->*6=u8DQ557p+EvOZMX__>;i0mjf~>^b#KD~cY=vNC&&Z{Tl;hm4OKFUj5VK5Myk zlk>21z`fah&0FjJz<2x${T~Kius+xw{3el1T$pGiTFG;h*M`&Ko#BhAb5l=8tD~Q# z??~@IH?unPbariaU#^<_X6}#qe11dzYxyS&OAD_R&s{Lvx2^A${`&`t1E&vc8n|KL p{?Z+#zm->(cb0b#UOBjb=$6WtD^Cw^!qSLA=kOc$%&xBS{{mVDFU