<div dir="ltr">Hi Chris,<div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jun 23, 2018 at 4:06 PM, <span dir="ltr"><<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Chris Muller uploaded a new version of Tools to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Tools-cmm.823.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/<wbr>trunk/Tools-cmm.823.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Tools-cmm.823<br>
Author: cmm<br>
Time: 23 June 2018, 6:05:38.664539 pm<br>
UUID: 8f7a7bf2-a8e3-497c-a90f-<wbr>fb2522c558dc<br>
Ancestors: Tools-eem.822<br>
<br>
Added Debugger class>>#rememberExtent: to allow toggling the debuggers initial extent between either classic RealEstateManager preferences or the extent of the most-recently-closed Debugger.<br>
<br>
=============== Diff against Tools-eem.822 ===============<br>
<br>
Item was added:<br>
+ ----- Method: Debugger class>>rememberExtent: (in category 'opening') -----<br>
+ rememberExtent: aBoolean <br>
+ "Set whether to try to remember the last size of the debugger."<br>
+ SavedExtent := aBoolean ifTrue:<br>
+ [ SavedExtent ifNil:<br>
+ [ "Start at a 33% width, 95% height of the desktop. Use division for its built-in truncation."<br>
+ Project current world extent // (3@1.05) ] ]!<br>
<br>
Item was changed:<br>
----- Method: Debugger>>buildFullWith: (in category 'toolbuilder') -----<br>
buildFullWith: builder<br>
| windowSpec listSpec textSpec |<br>
windowSpec := builder pluggableWindowSpec new<br>
model: self;<br>
label: 'Debugger';<br>
children: OrderedCollection new.<br>
- SavedExtent ifNotNil:<br>
- [windowSpec extent: SavedExtent].<br>
<br>
listSpec := builder pluggableListSpec new.<br>
listSpec <br>
model: self;<br>
list: #contextStackList; <br>
getIndex: #contextStackIndex; <br>
setIndex: #toggleContextStackIndex:; <br>
menu: #contextStackMenu:shifted:; <br>
icon: #messageIconAt:;<br>
helpItem: #messageHelpAt:;<br>
keyPress: #contextStackKey:from:;<br>
frame: (0@0 corner: 1@0.22).<br>
windowSpec children add: listSpec.<br>
<br>
<br>
textSpec := self buildCodePaneWith: builder.<br>
textSpec frame: (0@0.22corner: 1@0.8).<br>
windowSpec children add: textSpec.<br>
<br>
listSpec := builder pluggableListSpec new.<br>
listSpec <br>
model: self receiverInspector;<br>
list: #fieldList; <br>
getIndex: #selectionIndex; <br>
setIndex: #toggleIndex:; <br>
menu: #fieldListMenu:; <br>
keyPress: #inspectorKey:from:;<br>
frame: (0@0.8 corner: 0.2@1);<br>
help: 'Receiver''s\Instance\<wbr>Variables' withCRs.<br>
windowSpec children add: listSpec.<br>
<br>
textSpec := builder pluggableTextSpec new.<br>
textSpec <br>
model: self receiverInspector;<br>
getText: #contents; <br>
setText: #accept:; <br>
help: '<- Select receiver''s field' translated;<br>
selection: #contentsSelection; <br>
menu: #codePaneMenu:shifted:;<br>
frame: (0.2@0.8 corner: 0.5@1).<br>
windowSpec children add: textSpec.<br>
<br>
listSpec := builder pluggableListSpec new.<br>
listSpec <br>
model: self contextVariablesInspector;<br>
list: #fieldList; <br>
getIndex: #selectionIndex; <br>
setIndex: #toggleIndex:; <br>
menu: #fieldListMenu:; <br>
keyPress: #inspectorKey:from:;<br>
frame: (0.5@0.8 corner: 0.7@1);<br>
help: 'Other\Context\Bindings' withCRs.<br>
windowSpec children add: listSpec.<br>
<br>
textSpec := builder pluggableTextSpec new.<br>
textSpec <br>
model: self contextVariablesInspector;<br>
getText: #contents; <br>
setText: #accept:; <br>
help: '<- Select context''s field' translated;<br>
selection: #contentsSelection; <br>
menu: #codePaneMenu:shifted:;<br>
frame: (0.7@0.8 corner: 1@1).<br>
windowSpec children add: textSpec.<br>
<br>
^builder build: windowSpec!<br>
<br>
Item was changed:<br>
----- Method: Debugger>>initialExtent (in category 'initialize') -----<br>
initialExtent<br>
"Initial extent for the full debugger. For the notifier's extent see #initialExtentForNotifier."<br>
<br>
+ ^ SavedExtent ifNil: [ 600@700]!<br>
- ^ 600@700!<br>
<br></blockquote><div><br></div><div>and the below is broken. If SavedExtent is nil, it won't remember anything. Look, is remembering the last open extent of the debugger a huge improvement or not? I find it a huge improvement. You've just negated that. You consistently protest/alter/reject my contributions. It's getting tedious.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
Item was changed:<br>
----- Method: Debugger>>windowIsClosing (in category 'initialize') -----<br>
windowIsClosing<br>
+ "My window is being closed; if debugging save its extent. Clean up. Restart the low space watcher."<br>
+ interruptedProcess ifNil: [ ^ self ].<br>
+ SavedExtent ifNotNil:<br>
+ [ self dependents<br>
+ detect:<br>
+ [ : each | each isWindowForModel: self ]<br>
+ ifFound:<br>
+ [ : topWindow | | isDebuggerNotNotifier |<br>
+ isDebuggerNotNotifier := self dependents anySatisfy:<br>
+ [ : each | each isTextView ].<br>
+ isDebuggerNotNotifier ifTrue: [ SavedExtent := topWindow extent ] ]<br>
+ ifNone: [ "do nothing" ] ].<br>
- "My window is being closed; if debugging save its extent.<br>
- Clean up. Restart the low space watcher."<br>
- <br>
- interruptedProcess ifNil: [^self].<br>
- (self dependents detect: [:m| m isWindowForModel: self] ifNone: []) ifNotNil:<br>
- [:topWindow| | isDebuggerNotNotifier |<br>
- isDebuggerNotNotifier := self dependents anySatisfy: [:m| m isTextView].<br>
- isDebuggerNotNotifier ifTrue:<br>
- [SavedExtent := topWindow extent]].<br>
interruptedProcess terminate.<br>
+ interruptedProcess := interruptedController := contextStack := receiverInspector := contextVariablesInspector := nil.<br>
+ "Restart low space watcher."<br>
+ Smalltalk installLowSpaceWatcher!<br>
- interruptedProcess := nil.<br>
- interruptedController := nil.<br>
- contextStack := nil.<br>
- receiverInspector := nil.<br>
- contextVariablesInspector := nil.<br>
- Smalltalk installLowSpaceWatcher "restart low space handler"<br>
- !<br>
<br>
<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>