<div id="__MailbirdStyleContent" style="font-size: 12pt;font-family: calibri;color: #000000">
Hi Chris,<div><br></div><div>can you elaborate on this? This is just cosmetics, right? You assume that the user should look at the empty search field. I was assuming that the possible search space is more important. Just open, type the term, navigate with the arrow keys and press return. So, this has been the focus:</div><div><br></div><div><img src="cid:e5a9166c-024b-4d5b-90b8-f0558693eac2" width="auto"></img></div><div><br></div><div>Now it is this:</div><div><br></div><div><img src="cid:99fcb075-b171-4bbc-8b5d-3057ad6317fb" width="auto"></img></div><div><br></div><div>Due to the centering of the dialog relative to the current mouse cursor. At least for me, this introduces a visual jump now. Two years ago, I decided to only keep that search field at the top for historical reasons because we can search in all lists in the system by just typing a term.</div><div><br></div><div>Anyway, just my two cents. :-)</div><div><br></div><div>Best,</div><div>Marcel</div><div><br></div><div><br></div><div class="mb_sig"></div>
<blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color: #AAAAAA; margin-top: 10px;">Am 24.04.2018 05:53:40 schrieb commits@source.squeak.org <commits@source.squeak.org>:</p>Chris Muller uploaded a new version of ToolBuilder-Morphic to project The Trunk:<br>http://source.squeak.org/trunk/ToolBuilder-Morphic-cmm.214.mcz<br><br>==================== Summary ====================<br><br>Name: ToolBuilder-Morphic-cmm.214<br>Author: cmm<br>Time: 23 April 2018, 10:52:42.863722 pm<br>UUID: ed4cff85-0d01-45be-acf4-89dc6f683dfd<br>Ancestors: ToolBuilder-Morphic-cmm.213<br><br>Center ListChoosers under the search-widget for improved focus.<br><br>=============== Diff against ToolBuilder-Morphic-cmm.213 ===============<br><br>Item was changed:<br> ----- Method: ListChooser>>buildWith: (in category 'building') -----<br> buildWith: builder<br> <br> | dialogSpec searchBarHeight listSpec fieldSpec |<br> <br> searchBarHeight := Preferences standardDefaultTextFont height * 1.75.<br> <br> dialogSpec := builder pluggableDialogSpec new<br> model: self;<br> title: #title;<br> closeAction: #closed;<br> extent: self initialExtent;<br> autoCancel: true; "Behave like a pop-up menu. Historical reasons."<br> children: OrderedCollection new;<br> buttons: OrderedCollection new;<br> yourself.<br> <br> listSpec := builder pluggableListSpec new.<br> listSpec <br> model: self;<br> list: #items; <br> getIndex: #selectedIndex; <br> setIndex: #selectedIndex:; <br> doubleClick: #accept;<br> "keystrokePreview: #keyStrokeFromList:;"<br> autoDeselect: false;<br> filterableList: true;<br> clearFilterAutomatically: false;<br> name: #list;<br> frame: (LayoutFrame fractions: (0@0 corner: 1@1) offsets: (0@searchBarHeight corner: 0@0)).<br> dialogSpec children add: listSpec.<br> <br> fieldSpec := builder pluggableInputFieldSpec new.<br> fieldSpec <br> model: self;<br>+ name: #searchText ;<br> getText: #searchText;<br> editText: #searchText:;<br> setText: #acceptText:;<br> selection: #textSelection;<br> menu: nil;<br> indicateUnacceptedChanges: false;<br> askBeforeDiscardingEdits: false;<br> help: (self addAllowed ifTrue: ['Type new or filter existing...' translated] ifFalse: ['Type to filter existing...' translated]);<br> frame: (LayoutFrame fractions: (0@0 corner: 1@0) offsets: (0@0 corner: 0@searchBarHeight)).<br> dialogSpec children add: fieldSpec.<br> <br> "Buttons"<br> dialogSpec buttons add: (<br> builder pluggableButtonSpec new<br> model: self; <br> label: #acceptLabel;<br> action: #accept;<br> enabled: #canAcceptOrAdd;<br> color: #acceptColor).<br> <br> dialogSpec buttons add: (<br> builder pluggableButtonSpec new<br> model: self; <br> label: 'Cancel';<br> action: #cancel;<br> color: #cancelColor).<br> <br> dialogMorph := builder build: dialogSpec.<br>+ dialogMorph addKeyboardCaptureFilter: self ; positionOverWidgetNamed: #searchText.<br>- dialogMorph addKeyboardCaptureFilter: self.<br> listMorph := builder widgetAt: #list.<br> listMorph allowEmptyFilterResult: true.<br> <br> ^ dialogMorph!<br><br><br>
</blockquote></div>