<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/128097/">https://git.reviewboard.kde.org/r/128097/</a>
     </td>
    </tr>
   </table>
   <br />




<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDE Software on Mac OS X and Yichao Yu.</div>
<div>By RenĂ© J.V. Bertin.</div>


<p style="color: grey;"><i>Updated June 8, 2016, 1:41 p.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Somehow I missed the "Ship it" notification, gmail has made a habit of delivering RR notifications to my spam folder :-/

I've spent a few days polishing the Qt5 implementation of this. If we're going to use a check mark font glyph to get the tick to scale with the menu font we could just as well ensure that it gives satisfactory results over a reasonable range of font sizes. The current revision works for sizes from 8pt to 32pt (which is really not-very-reasonably large).
I'm tempted to think that the Qt4 implementation works well enough (tested up to 18pt) so I think I'll backport support for the larger font size range later (or on-demand).</pre>
  </td>
 </tr>
</table>







<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
qtcurve
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This introduces an option (hidden for now) to adorn checked menu items with only a check mark rather than the same widget that is used for checkboxes or radio buttons (for sets of mutually exclusive menu items).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Initially I implemented this by simply skipping the widget "box" and drawing only the checkbox tick for both kinds of menu items (cf. https://bugs.kde.org/show_bug.cgi?id=363895). I then realised that this looks weird when the user uses a very tall or tiny font (or has a high DPI screen). Therefore the check is now generated using the UniCode <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">Check Mark</code> glyph (? cf. http://www.fileformat.info/info/unicode/char/2713/index.htm) rendered in the menu font (or <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">Apple Symbols</code>, on OS X).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">A new member is introduced in the <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">Options</code> structure that controls this new behaviour. Its value is read from and written to the config file, but I have not yet implemented its UI control through the configuration interface. I'll want some guidance for that step.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I propose to make this the default behaviour on OS X, so that popup menus can be closer in appearance to the native menus from the toplevel menubar (those menus are not rendered through Qt, and use a single check mark too).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The GTk2 style already rendered checked menu items like this so I did not change anything there (and don't really plan to touch that code at all).</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">On OS X 10.9 and Linux with Qt 4.8.7 and Qt 5.6.0 .</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> (updated)</h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>gtk2/common/common.h <span style="color: grey">(cb0ec87)</span></li>

 <li>gtk2/common/config_file.cpp <span style="color: grey">(96936e2)</span></li>

 <li>qt4/common/common.h <span style="color: grey">(313db33)</span></li>

 <li>qt4/common/config_file.cpp <span style="color: grey">(c58ad1a)</span></li>

 <li>qt4/config/qtcurveconfig.cpp <span style="color: grey">(aef4c26)</span></li>

 <li>qt4/config/qtcurveconfigbase.ui <span style="color: grey">(5247266)</span></li>

 <li>qt4/config/stylepreview.ui <span style="color: grey">(29b1ef8)</span></li>

 <li>qt4/style/qtcurve.cpp <span style="color: grey">(951ec1a)</span></li>

 <li>qt5/common/common.h <span style="color: grey">(bb103fd)</span></li>

 <li>qt5/common/config_file.cpp <span style="color: grey">(362381a)</span></li>

 <li>qt5/config/qtcurveconfig.cpp <span style="color: grey">(304e3bf)</span></li>

 <li>qt5/config/qtcurveconfigbase.ui <span style="color: grey">(81d693b)</span></li>

 <li>qt5/config/stylepreview.ui <span style="color: grey">(ec36ee3)</span></li>

 <li>qt5/style/qtcurve.h <span style="color: grey">(6836b9d)</span></li>

 <li>qt5/style/qtcurve.cpp <span style="color: grey">(b2a7738)</span></li>

 <li>qt5/style/qtcurve_api.cpp <span style="color: grey">(b8535da)</span></li>

 <li>qt5/style/qtcurve_primitive.cpp <span style="color: grey">(a8a2bed)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/128097/diff/" style="margin-left: 3em;">View Diff</a></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">File Attachments (updated)</h1>


 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/ef4fe141-c028-4cc0-b5dd-3edae7dd600b__KPT-qtcurveFontTicks-X11.png">QtCurve, check marks only on X11</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/a31bdbc8-ca8e-4af7-a48a-d6d5386b3a7e__KPT-qtcurveStandard-X11.png">QtCurve with the "standard" checkable menu items, X11</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/7cd3ceb0-7049-44b0-80ff-adbf21e82133__noKPT-qtcurveFontTicks.png">QtCurve checkmark-only popup menu on OS X (without KDE platform theme plugin)</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/3ceb9b1d-c484-4296-ba47-778263f50439__noKPT-qtcurveStandard-macintosh.png">QtCurve standard popup menus on OS X, no platform theme plugin</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/c9fa1fe6-f9f6-4f02-a9a7-70b8199753a6__configUI-preview.png">menu preview in the config editor (Qt5)</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2016/06/08/64f58fa4-7b63-41e9-b1ef-3d08deb0e77d__Screen_Shot_2016-06-08_at_13.29.23.png">Screen Shot 2016-06-08 at 13.29.23.png</a></li>

</ul>




  </td>
 </tr>
</table>



  </div>
 </body>
</html>