<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Hi all,</p>
<p><br>
</p>
<p>please make sure to honor the <span>SystemWindow reuseWindows preference when revising this behavior. :-)</span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Montag, 10. Januar 2022 11:17:39<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] bad MessageTrace regression (was: The Trunk: Morphic-mt.1652.mcz)</font>
<div> </div>
</div>
<div>
<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
Hi Chris --
<div class="mb_sig"></div>
<div><br>
</div>
<div>Aha. Well, these TextEditor changes are obviously in no direct relationship with the MessageTrace tool. An indirection through the model instead a global call to #systemNavigation are *always* favorable since more expressive and configurable. A custom
 model such as MessageTrace should be able to easily provide the desired behavior.</div>
<div><br>
</div>
<div>You inbox suggestions via Morphic-cmm.1838 and 1839 are therefore not acceptable. I will try to solve this issue in MessageTrace directly.</div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</div>
<div><br>
</div>
<div>P.S.: Your definition of "execution flow" is somewhat brittle since there are is no dynamic trace data involved. You rely on static analysis only. :-)</div>
<blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color: #AAAAAA; margin-top: 10px;">Am 10.01.2022 01:41:17 schrieb Chris Muller <asqueaker@gmail.com>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">
<div dir="ltr">
<div>Hi Marcel,</div>
<div><br>
</div>
<div>I'm doing some testing in trunk and just noticed this.  When selecting a message in the code pane and browsing senders, **it must always spawn a new MessageTrace** instead of mangling the to the list at the top.</div>
<div><br>
</div>
<div>The trace at the top is supposed to represent execution flow between the messages in the list, and NOT different random messages that derail the trace and make it a complete mess.</div>
<div><br>
</div>
<div>I also noticed this has been backported to 5.3.</div>
<div><br>
</div>
<div> - Chris</div>
<div><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Mon, Apr 27, 2020 at 2:32 AM <<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex;border-left: 1px solid rgb(204,204,204);padding-left: 1ex;min-width: 500px">
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Morphic-mt.1652.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/Morphic-mt.1652.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Morphic-mt.1652<br>
Author: mt<br>
Time: 27 April 2020, 9:31:57.493264 am<br>
UUID: d23bbde5-4e42-3547-960d-39994fc21f56<br>
Ancestors: Morphic-ct.1651<br>
<br>
Fixes regression #browseIt in TraceMessages, too. Now all recent hick-ups with TraceMessages are gone. There are still some hooks missing such as #browseAllAccessTo:from:.<br>
<br>
However, I think we should push down those backstops from Object to Model.<br>
<br>
Note that I already backported this fix to Squeak 5.3.<br>
<br>
=============== Diff against Morphic-ct.1651 ===============<br>
<br>
Item was changed:<br>
  ----- Method: TextEditor>>browseIt (in category 'menu messages') -----<br>
  browseIt<br>
        "Launch a browser for the current selection, if appropriate."<br>
<br>
        Preferences alternativeBrowseIt ifTrue: [^ self browseClassFromIt].<br>
<br>
        self lineSelectAndEmptyCheck: [^ morph flash].<br>
<br>
        "First, try to show all accesses to instance or class variables."<br>
        self selectedInstanceVariable ifNotNil:<br>
                [:nameToClass | self systemNavigation<br>
                        browseAllAccessesTo: nameToClass key<br>
                        from: nameToClass value].<br>
        self selectedClassVariable ifNotNil:<br>
+               [:binding | self model browseAllCallsOn: binding].<br>
-               [:binding | self systemNavigation browseAllCallsOn: binding].<br>
<br>
        "Then, either browse the class (from a binding) or all implementors of a selector."<br>
        self selectedBinding ifNotNil:<br>
                [:binding | ^ self systemNavigation browseClass: binding].<br>
        self selectedSelector ifNotNil:<br>
+               [:selector | ^ self model browseAllImplementorsOf: selector].<br>
-               [:selector | ^ self systemNavigation browseAllImplementorsOf: selector].<br>
<br>
        morph flash!<br>
<br>
<br>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>