--- a/LinkButton.st Mon May 16 14:59:15 2016 +0200
+++ b/LinkButton.st Tue May 17 00:01:55 2016 +0200
@@ -114,7 +114,7 @@
!LinkButton methodsFor:'accessing'!
actionAt:aPoint
- |pressAction emphasis|
+ |pressAction emphasis pointInLabel|
pressAction := self pressAction ifNil:[ self releaseAction ].
pressAction isNil ifTrue:[
@@ -123,7 +123,19 @@
labelsAndActions isNil ifTrue:[
"take action from logo, which is normally a text with an action-emphasis"
logo notNil ifTrue:[
- emphasis := logo emphasisAtPoint:(aPoint - (labelOriginX@labelOriginY)) on:self.
+ pointInLabel := (aPoint - (labelOriginX@labelOriginY)).
+ logo isStringCollection ifTrue:[
+ |lineIndex line pointInLine|
+
+ lineIndex := (pointInLabel y // self font height) + 1.
+ line := logo at:lineIndex ifAbsent:nil.
+ line notNil ifTrue:[
+ pointInLine := pointInLabel - (0 @ ((lineIndex - 1) * self font height)).
+ emphasis := line emphasisAtPoint:pointInLine on:self.
+ ].
+ ] ifFalse:[
+ emphasis := logo emphasisAtPoint:pointInLabel on:self.
+ ].
(emphasis isNil or:[emphasis isSymbol]) ifTrue:[
^ pressAction.
].