<table><tr><td style="">dfaure requested changes to this revision.<br />dfaure added inline comments.<br />This revision now requires changes to proceed.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D17595">View Revision</a></tr></table><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D17595#inline-130904">View Inline</a><span style="color: #4b4d51; font-weight: bold;">renamefiledialog.cpp:215</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"> <span class="n">connect</span><span class="p">(</span><span class="n">job</span><span class="p">,</span> <span style="color: #aa2211">&</span><span class="n">KJob</span><span style="color: #aa2211">::</span><span class="n">result</span><span class="p">,</span> <span style="color: #aa4000">this</span><span class="p">,</span> <span style="color: #aa2211">&</span><span class="n">QObject</span><span style="color: #aa2211">::</span><span class="n">deleteLater</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"> <span class="n">connect</span><span class="p">(</span><span class="n">job</span><span class="p">,</span> <span style="color: #aa2211">&</span><span class="n">KJob</span><span style="color: #aa2211">::</span><span class="n">error</span><span class="p">,</span> <span style="color: #aa4000">this</span><span class="p">,</span> <span style="color: #aa2211">&</span><span class="n">RenameFileDialog</span><span style="color: #aa2211">::</span><span class="n">slotError</span><span class="p">);</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">This can't possibly work, KJob::error is a getter, not a signal.</p>
<p style="padding: 0; margin: 8px;">Remove slotError, and emit error() in slotResult.</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D17595#inline-130891">View Inline</a><span style="color: #4b4d51; font-weight: bold;">meven</span> wrote in <span style="color: #4b4d51; font-weight: bold;">renamefiledialog.cpp:119</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">KFileItem has no path() method, but here items.first().url().fileName() should be equivalent.</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Oops yes I meant items.first().url().path(). OK for fileName(), path() is faster but this code path isn't speed critical.</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D17595#inline-130892">View Inline</a><span style="color: #4b4d51; font-weight: bold;">meven</span> wrote in <span style="color: #4b4d51; font-weight: bold;">renamefiledialog.cpp:121</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">I guess the database doesn't work for JPEG file extension for instance.</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Wrong, QMimeDatabase handles this correctly, extensions are case insensitive.</p>
<p style="padding: 0; margin: 8px;">Proof:<br />
$ kmimetypefinder5 -f foo.JPEG <br />
image/jpeg</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D17595#inline-130896">View Inline</a><span style="color: #4b4d51; font-weight: bold;">meven</span> wrote in <span style="color: #4b4d51; font-weight: bold;">renamefiledialog.cpp:208</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">Apparently here it did use the default error dialog.<br />
I have changed this to expose an error signal to let the class user handle it.<br />
I wonder if exposing a setAutoErrorHandling setter for this dialog would be a good idea.</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Good question, I don't know. I'd say, let the first person who needs it, add it :)</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D17595#inline-130865">View Inline</a><span style="color: #4b4d51; font-weight: bold;">dfaure</span> wrote in <span style="color: #4b4d51; font-weight: bold;">renamefiledialog.cpp:246</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">Isn't it enough to focus the lineEdit in the constructor?</p>
<p style="padding: 0; margin: 8px;">Doing it here in showEvent (without a test for event->spontaneous()) means that if you focus another widget, switch virtual desktops, and switch back, the focus will unexpectedly go to the lineedit again.</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">I see you used the more complicated solution of keeping showEvent and testing for spontaneous. Any reason? It didn't work from the constructor?</p></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R241 KIO</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D17595">https://phabricator.kde.org/D17595</a></div></div><br /><div><strong>To: </strong>meven, Frameworks, Dolphin, broulik, ngraham, dfaure<br /><strong>Cc: </strong>dfaure, sitter, mitchell, emmanuelp, ltoscano, bruns, meven, dhaumann, pino, kde-frameworks-devel, LeGast00n, michaelh, ngraham<br /></div>