Bert Freudenberg uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-bf.1331.mcz==================== Summary ====================
Name: Morphic-bf.1331
Author: bf
Time: 23 March 2017, 1:18:44.956019 pm
UUID: 2a22b738-2334-4f96-9f07-2aacffe188e9
Ancestors: Morphic-pre.1330
Fix filter drawing for bold items in list (fix by Marcel)
=============== Diff against Morphic-pre.1330 ===============
Item was changed:
----- Method: LazyListMorph>>getFilterOffsets: (in category 'list access') -----
getFilterOffsets: row
"Calculate matching character indexes for the current filter term."
+ | item filter offsets currentIndex sub emphasized |
- | item filter offsets currentIndex sub |
filter := listSource filterTerm.
filter ifEmpty: [^ Array empty].
+ item := (self item: row) asStringOrText.
+
+ emphasized := item isText
+ ifTrue: [font emphasized: (item emphasisAt: 1)]
+ ifFalse: [font].
+
+ item := item asString.
+
- item := (self item: row) asStringOrText asString. "See row drawing. Strings only."
offsets := OrderedCollection new.
currentIndex := 1.
[currentIndex > 0] whileTrue: [
currentIndex := item findString: filter startingAt: currentIndex caseSensitive: false.
currentIndex > 0 ifTrue: [ | left width |
+ left := emphasized widthOfString: item from: 1 to: currentIndex-1.
- left := font widthOfString: item from: 1 to: currentIndex-1.
sub := item copyFrom: currentIndex to: currentIndex + filter size - 1.
+ width := emphasized widthOfString: sub.
- width := font widthOfString: sub.
offsets addLast: {(left to: left + width). sub}.
currentIndex := currentIndex + 1] ].
^ offsets!