<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi Andy,</p>
<p>I don't think these really qualify as a good enough reason to
expose an InputMap API by themselves.</p>
<p>The first comment sounds like an X/Y problem, where the user
wants to achieve X (remove unwanted behavior) and thinks Y
(exposing InputMap) is the solution -- certainly that is currently
the only solution (hack your way with reflection to get at the
input map), but there are other solutions as well to solve X aside
from doing Y. As we've already discussed, part of the reason why
it is so hard in FX to remove unwanted behavior (X) is that
Behavior event handling can't be overridden reliably. Event
filters may be an (unsatisfactory) solution that the user wasn't
even aware of. If the user wanted to also respond to the events
for a different purpose, then prioritized event handlers or having
behaviors only act on unconsumed events would be a viable
alternative.<br>
</p>
<p>The second comment does not give a problem statement at all, so
it is hard to count that as an endorsement to opening up InputMap.<br>
</p>
<p>The third comment seems to have an entirely different problem,
how to turn a selected text (which can no doubt consist of styled
parts, perhaps inline images, etc) into something suitable to put
on the clipboard (and perhaps vice versa as well). That seems like
a problem that the Control should solve, and at most has a very
thin connection with InputMap that such functions should be called
when cut/copy/paste shortcuts are pressed...</p>
<p>Perhaps I am not seeing something here?<br>
</p>
<p>--John<br>
</p>
<div class="moz-cite-prefix">On 16/11/2023 00:44, Andy Goryachev
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:DM5PR1001MB2172E2BE05FB0CD48D007A07E5B1A@DM5PR1001MB2172.namprd10.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
{font-family:"Iosevka Fixed SS16";
panose-1:2 0 5 9 3 0 0 0 0 4;}@font-face
{font-family:"Times New Roman \(Body CS\)";
panose-1:2 11 6 4 2 2 2 2 2 4;}@font-face
{font-family:"Helvetica Neue";
panose-1:2 0 5 3 0 0 0 2 0 4;}@font-face
{font-family:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:10.0pt;
font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}span.EmailStyle19
{mso-style-type:personal-reply;
font-family:"Iosevka Fixed SS16";
color:windowtext;}p.p1, li.p1, div.p1
{mso-style-name:p1;
margin:0in;
font-size:10.0pt;
font-family:"Helvetica Neue";}.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}div.WordSection1
{page:WordSection1;}ol
{margin-bottom:0in;}ul
{margin-bottom:0in;}</style>
<div class="WordSection1">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">Dear colleagues:<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">I wanted to share some of the feedback we
received which might be relevant to the input map / behavior
discussion (and sorry for not sending it earlier). Email
addresses in DM are redacted (though some of the responses
might be from this mailing list anyway).<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">Robert REDACTED REDACTED @gmail.com<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">Very much appreciated from my side.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">I can still remember hacking my way into the the
InputMap of some controls to change unwanted behaviour.<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16"">Generally speaking: Making JavaFX more open is
(for me) more important than keeping it 100% backwards
compatible / super stable.<o:p></o:p></span></p>
<p class="p1">...<o:p></o:p></p>
<p class="p1"><o:p> </o:p></p>
<p class="p1"><o:p> </o:p></p>
<p class="p1">Pedro REDACTED REDACTED @gmail.com<o:p></o:p></p>
<p class="p1">Yes Input Map would be a welcome addition.<o:p></o:p></p>
<p class="p1">...<o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed
SS16""><o:p> </o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16"">Buried in<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16""><a
href="https://github.com/FXMisc/RichTextFX/issues/1167#issuecomment-1435450535"
moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/FXMisc/RichTextFX/issues/1167#issuecomment-1435450535</a><o:p></o:p></span></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal"
style="color:#1F2328;margin-top:3.0pt;mso-margin-bottom-alt:auto;mso-list:l0
level1 lfo1;background:white">
<span style="font-size:10.5pt;font-family:"Segoe
UI",sans-serif">There is no way in TextFlow to
provide key/action mappings. This becomes a complex
area for rich text, for example turning a number of
selected Nodes into something suitable for
cut/copy/paste is not straight forward.<o:p></o:p></span></li>
</ul>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16""><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka
Fixed SS16"">-andy<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</blockquote>
</body>
</html>