<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/126907/">https://git.reviewboard.kde.org/r/126907/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On January 27th, 2016, 4:55 p.m. CET, <b>Thomas Pfeiffer</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="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;">So, the situation is not that special: We ask for confirmation to err on the side of caution (which makes sense since there is no going back) but don't want to bother users with dialogs they don't care about. In fact, the situation is quite similar to removing Plasmoids.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Before considering any non-optimal solutions, here is what would be best from a user's perspective:
Do not ask for confirmation after deleting the history <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">but</em> don't really delete it immediately. Instead, just hide it at first, and replace the empty history area with an "Undo" button. When the user adds the next entry to the list (or alternativwely after some time), actually delete the history and remove the Undo button.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Yes, this would certainly be more complex to implement, but it would make the dialog unnecessary while still allowing recovery in case of deletion by accident and would set a good precedent (or rather follow the precedent of Plasmoid removal).</p></pre>
</blockquote>
<p>On January 27th, 2016, 5:06 p.m. CET, <b>Martin Gräßlin</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="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;">Interesting idea. If we go for that it needs to be time based. The user might have deleted due to sensitive data being in the clipboard and does not expect that it's kept around.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">So maybe:
- clear current clipboard
- show notification
- after timeout clear history</p></pre>
</blockquote>
<p>On January 27th, 2016, 5:14 p.m. CET, <b>Thomas Pfeiffer</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="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;">Time-based is fine.
I would just still prefer putting the Undo button in Klipper itself, to keep in context. With Plasma removal, it's not possible because the Plasmoid is gone, but if we can have the undo button in context, it should be in context.</p></pre>
</blockquote>
<p>On January 27th, 2016, 5:22 p.m. CET, <b>Martin Gräßlin</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><blockquote style="text-rendering: inherit;padding: 0 0 0 1em;border-left: 1px solid #bbb;white-space: normal;margin: 0 0 0 0.5em;line-height: inherit;">
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I would just still prefer putting the Undo button in Klipper itself, to keep in context.</p>
</blockquote>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">makes it way more complex from implementation side and doesn't work at all for "classic klipper" which closes the popup after an action is selected.</p></pre>
</blockquote>
<p>On January 27th, 2016, 5:27 p.m. CET, <b>Thomas Pfeiffer</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="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;">Ah okay then, notification it is ;)</p></pre>
</blockquote>
</blockquote>
<pre style="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;">My advice would be to make the notification persistent and bind the deleting to the notification closed() signal.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">If the user is actively working on the computer, the persistent notification will time out in 10 minutes, might be long
BUT, you can also keep your own timer and call close() on it after like 2 minutes, that will send the closed() signal
and remove contents.</p></pre>
<br />
<p>- Martin</p>
<br />
<p>On January 27th, 2016, 3:13 p.m. CET, Martin Gräßlin wrote:</p>
<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 Plasma and Thomas Pfeiffer.</div>
<div>By Martin Gräßlin.</div>
<p style="color: grey;"><i>Updated Jan. 27, 2016, 3:13 p.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>
<a href="https://bugs.kde.org/show_bug.cgi?id=336053">336053</a>
</div>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
plasma-workspace
</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;">When the clear clipboard history action is invoked klipper shows a
message box asking whether that's really what the user intended as
it's a potentially dangerous action (especially on a huge clipboard).
But it also showed a "Don't ask again" checkbox which doesn't really
make sense. When clicking "No" and the checkbox being checked it's
becoming impossible to clear the clipboard which is probably not what
the user intended.
This change removes the "Don't ask again" checkbox.
BUG: 336053</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>klipper/klipper.cpp <span style="color: grey">(c80d2c7f470de2f071f59fb9629cf89a481e41c8)</span></li>
</ul>
<p><a href="https://git.reviewboard.kde.org/r/126907/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>