[squeak-dev] The Inbox: Morphic-tcj.2000.mcz
digit at sonic.net
Fri Jun 10 00:18:01 UTC 2022
OK. Please feel free to delete from inbox.
Thanks for your attention to this.
> On Jun 9, 2022, at 1:57 AM, Marcel Taeumel <marcel.taeumel at hpi.de> wrote:
> Hi Tim --
> -100 for replacing "self activate" with "self submorphsDo: [:morph | morph unlock]"
> I took quite some effort to make that active/inactive window stuff maintainable. We should not obfuscate the code again this way. Yet, I hear your concern that some configurations struggle with Morphic window drag. We have to find a solution that is better than exposing unmaintainable implementation details again.
>> Am 06.06.2022 08:27:31 schrieb commits at source.squeak.org <commits at source.squeak.org>:
>> A new version of Morphic was added to project The Inbox:
>> ==================== Summary ====================
>> Name: Morphic-tcj.2000
>> Author: tcj
>> Time: 5 June 2022, 11:27:16.56143 pm
>> UUID: c9b2a85f-cde3-453b-9cb9-898c3420bc07
>> Ancestors: Morphic-mt.1999
>> Optimize dragging into SystemWindows by not performing a complete 'activate' on mouse enter (which includes waking up the model and redrawing all submorphs & text). Also, fix typo in another method comment.
>> =============== Diff against Morphic-mt.1999 ===============
>> Item was changed:
>> ----- Method: SystemWindow>>mouseEnterDragging: (in category 'events') -----
>> mouseEnterDragging: evt
>> "unlock children for drop operations"
>> self flag: #performance. "mt: There may be no need to change appearance if no widget wants the drop."
>> self isActive ifTrue: [self lookFocused].
>> (self isActive not and: [evt hand hasSubmorphs]) ifTrue: [
>> + self submorphsDo: [:morph | morph unlock]. "unlock contents for drop"
>> - self activate. "unlock contents for drop"
>> evt hand addMouseListener: self. "for drop completion on submorph"
>> Item was changed:
>> ----- Method: SystemWindow>>startDragFromLabel: (in category 'events') -----
>> startDragFromLabel: evt
>> + "When label events are active, we need to pass dragging to the window explicitly.
>> - "When label events are active, we need to pass dragging to the window explicitely
>> The window only recognizes a drag with an offset of more than 3 pixels"
>> self isSticky ifTrue: [^ self].
>> self fastFramingOn
>> ifTrue: [self doFastFrameDrag: evt cursorPoint]
>> ifFalse: [
>> self hasDropShadow: false.
>> evt hand grabMorph: self topRendererOrSelf]
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Squeak-dev