[squeak-dev] The Inbox: Morphic-ct.1846.mcz

christoph.thiede at student.hpi.uni-potsdam.de christoph.thiede at student.hpi.uni-potsdam.de
Sun Jan 16 17:49:58 UTC 2022


We can never get enough first impressions, thank you for them, David! :-)

Please feel free to send your concrete proposals to the inbox - see https://squeak.org/development_process/! For a first step, we could add a simple "null text" to workspaces and transcripts until it contains any text, similarly to the text "Evaluate expressions on inspect objects" you can see in the inspector's code pane.

Another nice pattern is context-sensitive help - for instance, if you yellow-click into the list of a versions browser, there is a help item which leads you to a pretty comprehensive documentation about this tool. Maybe we should add such a help item to every window's central window menu, making it easier for new users to find them. :-)

Best,
Christoph

---
Sent from Squeak Inbox Talk

On 2022-01-14T11:05:35-05:00, deeteeoh1138 at gmail.com wrote:

> I like the Tip of the Day app :)
> I might be able to make some other UI suggestions with my on-boarding
> experience still fresh in my mind.
> For example, the first time I opened the Workspace and the Transcript, I
> thought I broke something, as the windows are completely blank.
> What if a small balloon with a friendly mouse icon were to pop up in
> situations likely to cause questions, perhaps accompanied by a question
> mark?
> It could be quite tiny, and yet still tell users that there is something
> more to investigate.
> Being tiny (just an icon until you click it) could be useful, especially if
> there is the quite likely chance that a new user will trigger more than one
> mouseTip.
> If you click the mouseTip, it could temporarily expand into a little "post
> it note", perhaps with a button or two.
> In the case of my "blank workspace seems unfamiliar" example, it could pop
> up with a bit of explanatory text and some example expressions for you to
> cut and paste.
> Each mouseTip could include an ellipsis in the corner with a menu item
> allowing the user to turn off mouseTips right then and there.
> It might be interesting to attach mouseTips to particular error situations,
> for example when a bunch of error dialogs are open, it could pop up a
> mouseTip that points at the docking bar's Window menu, to show them how to
> get rid of all the error dialogs at once.
> Previous mouseTips (unclicked ones that expire after 60 seconds for
> example) could be accessed at a later time via a balloon icon in the
> Docking bar. To indicate that previous mouseTips can be found there, the
> docking bar icon could flash briefly and perhaps show a transient text
> balloon there when a mouseTip expires.
> I guess it's something like a context-sensitive version of the in-app
> Sandblocks tutorial, mixed with a bit of Microsoft Paperclip Person :)
> 
> maybe we should think about the issue of on-boarding new users to the
> > system more in general. I know that UX designers are filling entire books
> > about this topic, but maybe an approach that combines proactive,
> > context-specific suggestions with non-obstruiveness, dismissability per
> > hint as well as general opt-outability could go into the right direction.
> > For instance, the particular hint in question could stop appearing as soon
> > as the user has typed once into the menu, or has closed the hint manually.
> > See also https://github.com/LinqLover/Squeak-TipOfTheDay for a naive
> > prototype for on-boarding, which is still missing context-specifity,
> > though. :-)
> 
> 
> On Fri, Jan 14, 2022 at 10:35 AM <
> christoph.thiede at student.hpi.uni-potsdam.de> wrote:
> 
> > Hi all,
> >
> > As a fast workaround, you can do a blue-button click (halo) on the menu
> > and it will disappear as soon as you unhover and hover it again. =) Still,
> > this is not the final solution I would like to have. It's a small but
> > visible visual glitch.
> >
> > > It makes no sense to make that binary decision between novice and
> > non-novice.
> >
> > It could be better than no differentation at all?
> >
> > > Maybe a time-out for that balloon text?
> >
> > Hm ... Time-outs might be another source of confusion ("Why is this
> > disppearing while I am trying to read this?", or noticing it out of the
> > corner of your eye, "Wait, what changed there while I did not press any
> > key?").
> >
> > If you dislike the idea of hiding this single tooltip, maybe we should
> > think about the issue of on-boarding new users to the system more in
> > general. I know that UX designers are filling entire books about this
> > topic, but maybe an approach that combines proactive, context-specific
> > suggestions with non-obstruiveness, dismissability per hint as well as
> > general opt-outability could go into the right direction. For instance, the
> > particular hint in question could stop appearing as soon as the user has
> > typed once into the menu, or has closed the hint manually. See also
> > https://github.com/LinqLover/Squeak-TipOfTheDay for a naive prototype for
> > on-boarding, which is still missing context-specifity, though. :-)
> >
> > Best,
> > Christoph
> >
> > ---
> > *Sent from **Squeak Inbox Talk
> > <https://github.com/hpi-swa-lab/squeak-inbox-talk>*
> >
> > On 2022-01-14T08:03:10-05:00, deeteeoh1138 at gmail.com wrote:
> >
> > > For what it's worth, I had noticed the balloon obscuring things and
> > > wondered if there was a way to turn it off. But I shan't press the issue
> > :)
> > >
> > > On Fri, Jan 14, 2022 at 7:36 AM Marcel Taeumel <marcel.taeumel at hpi.de
> > >
> > > wrote:
> > >
> > > > -1 That "novice mode" should be deprecated and removed in the long
> > term.
> > > > It makes no sense to make that binary decision between novice and
> > > > non-novice.
> > > >
> > > > You can surely hack out that tooltip for your screenshot scenario. No
> > need
> > > > to have this in Trunk.
> > > >
> > > > Yet, I think you are on to something. Maybe a time-out for that balloon
> > > > text?
> > > >
> > > > Best,
> > > > Marcel
> > > >
> > > > Am 12.01.2022 21:27:31 schrieb commits at source.squeak.org <
> > > > commits at source.squeak.org>:
> > > > A new version of Morphic was added to project The Inbox:
> > > > http://source.squeak.org/inbox/Morphic-ct.1846.mcz
> > > >
> > > > ==================== Summary ====================
> > > >
> > > > Name: Morphic-ct.1846
> > > > Author: ct
> > > > Time: 12 January 2022, 9:27:12.594139 pm
> > > > UUID: 0bf19b8c-e7ea-7145-9a79-b76aaaaa2543
> > > > Ancestors: Morphic-ct.1845
> > > >
> > > > Proposal: Display that tedious "Enter text to narrow selection" tooltip
> > > > only if novice mode is enabled.
> > > >
> > > > Many of us might not have noticed this balloon text any more that
> > appears
> > > > every time you open a menu (unless #menuKeyboardControl is disabled),
> > but
> > > > it still is irrelevant for non-novice users and sometimes occludes
> > other
> > > > relevant information, for instance, during screenshots.
> > > >
> > > > =============== Diff against Morphic-ct.1845 ===============
> > > >
> > > > Item was changed:
> > > > ----- Method: MenuMorph>>popUpAt:forHand:in:allowKeyboard: (in category
> > > > 'control') -----
> > > > popUpAt: aPoint forHand: hand in: aWorld allowKeyboard: aBoolean
> > > > "Present this menu at the given point under control of the given
> > > > hand."
> > > > | evt |
> > > > aWorld submorphs
> > > > select: [:each | (each isKindOf: MenuMorph)
> > > > and: [each stayUp not]]
> > > > thenCollect: [:menu | menu delete].
> > > > self items isEmpty
> > > > ifTrue: [^ self].
> > > > MenuIcons decorateMenu: self.
> > > > (self submorphs
> > > > select: [:m | m isKindOf: UpdatingMenuItemMorph])
> > > > do: [:m | m updateContents].
> > > > "precompute width"
> > > > self
> > > > positionAt: aPoint
> > > > relativeTo: (selectedItem
> > > > ifNil: [self items first])
> > > > inWorld: aWorld.
> > > > aWorld addMorphFront: self.
> > > > "Acquire focus for valid pop up behavior"
> > > > hand
> > > > newMouseFocus: self;
> > > > showTemporaryCursor: nil.
> > > > aBoolean
> > > > ifTrue: [
> > > > originalFocusHolder := hand keyboardFocus.
> > > > hand newKeyboardFocus: self.
> > > > + Preferences noviceMode ifTrue: [
> > > > + self showKeyboardHelp]].
> > > > - self showKeyboardHelp].
> > > > evt := hand lastEvent.
> > > > (evt isKeyboard
> > > > or: [evt isMouse
> > > > and: [evt anyButtonPressed not]])
> > > > ifTrue: ["Select first item if button not down"
> > > > self moveSelectionDown: 1 event: evt
> > > > "Select first item if button not down"].
> > > > self updateColor.
> > > > self changed!
> > > >
> > > >
> > > >
> > > >
> > > -------------- next part --------------
> > > An HTML attachment was scrubbed...
> > > URL: <
> > http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/83743d68/attachment.html
> > >
> > >
> > >
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/202f23b7/attachment-0001.html>
> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220116/b3021211/attachment.html>


More information about the Squeak-dev mailing list