Christoph Thiede uploaded a new version of Morphic to project The Trunk: http://source.squeak.org/trunk/Morphic-ct.2134.mcz
==================== Summary ====================
Name: Morphic-ct.2134 Author: ct Time: 12 October 2023, 8:29:39.245009 pm UUID: 49daba16-98e1-a545-bf9a-e0bcb5500ddb Ancestors: Morphic-eem.2133, Morphic-ct.2129, Morphic-ct.2128, Morphic-ct.2126
Merge.
Morphic-ct.2129: Expand selected window from "find windows".
Morphic-ct.2128: Adds "collapse all like this" and "collapse all but this" items to windows's menu in docking bar.
Morphic-ct.2126: Fixes invalid state in text morphs when selecting text while something (e.g., a transcript) is updating the text.
=============== Diff against Morphic-eem.2133 ===============
Item was changed: ----- Method: TextEditor>>mouseUp: (in category 'events') ----- mouseUp: evt "An attempt to break up the old processRedButton code into threee phases"
"0) Click on text actions." (self mouseUpOnTextAction: evt) ifTrue: [^ self].
"1) A 'double-click' will result in selecting the whole word." (self hasCaret and: [oldInterval = self selectionInterval]) ifTrue: [self selectWord]. "2) For the next type-in, configure emphasis. We don't want to do this on every key-press for performance reasons." self setEmphasisHere. "3) Notice selection changes." + (oldInterval notNil "happens if the editor has been replaced since mouseDown: (e.g., by a programmatic text change such as #appendEntry)" + and: [self isDisjointFrom: oldInterval]) + ifTrue: [otherInterval := oldInterval]. - (self isDisjointFrom: oldInterval) - ifTrue: [otherInterval := oldInterval]. self storeSelectionInParagraph.
"4) Reset mouse cursor to account for selection changes." self updateCursorForEvent: evt. morph removeProperty: #waitingForTextDrag.!
Item was added: + ----- Method: TheWorldMainDockingBar>>collapseAllWindowsBut: (in category 'submenu - windows') ----- + collapseAllWindowsBut: window + (self allOtherWindowsLike: window) do: [:each | + each collapse]!
Item was added: + ----- Method: TheWorldMainDockingBar>>collapseAllWindowsLike: (in category 'submenu - windows') ----- + collapseAllWindowsLike: window + self collapseAllWindowsBut: window. + window collapse!
Item was changed: ----- Method: TheWorldMainDockingBar>>selectWorkspace:window:inProject:contents: (in category 'submenu - windows') ----- selectWorkspace: aWorkspace window: aSystemWindow inProject: aMorphicProject contents: contents aMorphicProject + addDeferredUIMessage: [aSystemWindow expand; comeToFront]; - addDeferredUIMessage: [aSystemWindow comeToFront]; enter "Does nothing if already the current project..." !
Item was changed: ----- Method: TheWorldMainDockingBar>>windowMenuFor:on: (in category 'submenu - windows') ----- windowMenuFor: window on: menu menu addItem: [ :item | item contents: 'Close' translated ; target: window; selector: #delete ]; addItem: [ :item | item contents: 'Close all like this' translated ; target: self; selector: #closeAllWindowsLike:; arguments: { window } ]; addItem: [ :item | item contents: 'Close all but this' translated ; target: self; selector: #closeAllWindowsBut:; arguments: { window } ]; + addLine; addItem: [ :item | + item + contents: 'Collapse all like this' translated ; + target: self; + selector: #collapseAllWindowsLike:; + arguments: { window } ]; + addItem: [ :item | + item + contents: 'Collapse all but this' translated ; + target: self; + selector: #collapseAllWindowsBut:; + arguments: { window } ]; + addLine; + addItem: [ :item | item contents: 'Expand or Contract' translated ; target: window; selector: #expandBoxHit ]!
packages@lists.squeakfoundation.org