Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows: - Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it) - Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
--- Sent from Squeak Inbox Talk
Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser. Am 20.10.2021 16:31:00 schrieb christoph.thiede@student.hpi.uni-potsdam.de christoph.thiede@student.hpi.uni-potsdam.de: Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows: - Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it) - Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
--- Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
Hi Marcel,
thanks again for reviewing and merging this!
Adds and uses breadth-first search for submorph lookup because it matches the natural way widgets are organized in a window. The existing depth-first in #allMorphsDo: might take surprising paths.
I keep finding some tools where this heuristic is not yet good enough. For example, in the Monticello Browser, I would expect the package list on the left to be focused by default, but instead, the repository list on the right is focused. What would you think about a strategy that orders all descendant morphs by their natural reading order and always chooses the left-most from the first row (#x ascending , #y ascending)? Or would you prefer to specify this information in the relevant toolbuilder methods instead?
Best,
Christoph
________________________________ Von: Squeak-dev squeak-dev-bounces@lists.squeakfoundation.org im Auftrag von Taeumel, Marcel Gesendet: Freitag, 19. November 2021 18:17:25 An: squeak-dev Betreff: Re: [squeak-dev] Merge Request: defaultFocusMorph.cs
Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser.
Am 20.10.2021 16:31:00 schrieb christoph.thiede@student.hpi.uni-potsdam.de christoph.thiede@student.hpi.uni-potsdam.de:
Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows: - Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it) - Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
--- Sent from Squeak Inbox Talkhttps://github.com/hpi-swa-lab/squeak-inbox-talk
Okay. See Morphic-mt.1799 in Trunk.
Best, Marcel
Am 22.11.2021 19:22:37 schrieb Thiede, Christoph christoph.thiede@student.hpi.uni-potsdam.de: Hi Marcel,
thanks again for reviewing and merging this!
Adds and uses breadth-first search for submorph lookup because it matches the natural way widgets are organized in a window. The existing depth-first in #allMorphsDo: might take surprising paths.
I keep finding some tools where this heuristic is not yet good enough. For example, in the Monticello Browser, I would expect the package list on the left to be focused by default, but instead, the repository list on the right is focused. What would you think about a strategy that orders all descendant morphs by their natural reading order and always chooses the left-most from the first row (#x ascending , #y ascending)? Or would you prefer to specify this information in the relevant toolbuilder methods instead?
Best, Christoph Von: Squeak-dev squeak-dev-bounces@lists.squeakfoundation.org im Auftrag von Taeumel, Marcel Gesendet: Freitag, 19. November 2021 18:17:25 An: squeak-dev Betreff: Re: [squeak-dev] Merge Request: defaultFocusMorph.cs Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser. Am 20.10.2021 16:31:00 schrieb christoph.thiede@student.hpi.uni-potsdam.de christoph.thiede@student.hpi.uni-potsdam.de: Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows: - Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it) - Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
--- Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
Hi Marcel,
there is another limitation of this heuristic because it is tied to the nesting depth of widgets. :-) For instance, the MessageNames tool has the wrong defaultFocus because the text morph in the search bar on the left is nested into a panel whereas the list on the right is not nested. Would you agree to extend the heuristic to fix that? :-)
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2021-11-23T10:43:39+01:00, marcel.taeumel@hpi.de wrote:
Okay. See Morphic-mt.1799 in Trunk.
Best, Marcel
Am 22.11.2021 19:22:37 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>: Hi Marcel,
thanks again for reviewing and merging this!
Adds and uses breadth-first search for submorph lookup because it matches the natural way widgets are organized in a window. The existing depth-first in #allMorphsDo: might take surprising paths.
I keep finding some tools where this heuristic is not yet good enough. For example, in the Monticello Browser, I would expect the package list on the left to be focused by default, but instead, the repository list on the right is focused. What would you think about a strategy that orders all descendant morphs by their natural reading order and always chooses the left-most from the first row (#x ascending , #y ascending)? Or would you prefer to specify this information in the relevant toolbuilder methods instead?
Best, Christoph Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel Gesendet: Freitag, 19. November 2021 18:17:25 An: squeak-dev Betreff: Re: [squeak-dev] Merge Request: defaultFocusMorph.cs Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser. Am 20.10.2021 16:31:00 schrieb christoph.thiede at student.hpi.uni-potsdam.de <christoph.thiede at student.hpi.uni-potsdam.de>: Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows:
- Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it)
- Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
there is another limitation of this heuristic because it is tied to the nesting depth of widgets. :-)
I am sure that there will be more. :-P
Would you agree to extend the heuristic to fix that? :-)
Or you could focus on fixing the issues in "debug invocation" in dialog windows. ;-)
Best, Marcel Am 06.04.2022 20:24:48 schrieb christoph.thiede@student.hpi.uni-potsdam.de christoph.thiede@student.hpi.uni-potsdam.de: Hi Marcel,
there is another limitation of this heuristic because it is tied to the nesting depth of widgets. :-) For instance, the MessageNames tool has the wrong defaultFocus because the text morph in the search bar on the left is nested into a panel whereas the list on the right is not nested. Would you agree to extend the heuristic to fix that? :-)
Best, Christoph
--- Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
On 2021-11-23T10:43:39+01:00, marcel.taeumel@hpi.de wrote:
Okay. See Morphic-mt.1799 in Trunk.
Best, Marcel
Am 22.11.2021 19:22:37 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>: Hi Marcel,
thanks again for reviewing and merging this!
Adds and uses breadth-first search for submorph lookup because it matches the natural way widgets are organized in a window. The existing depth-first in #allMorphsDo: might take surprising paths.
I keep finding some tools where this heuristic is not yet good enough. For example, in the Monticello Browser, I would expect the package list on the left to be focused by default, but instead, the repository list on the right is focused. What would you think about a strategy that orders all descendant morphs by their natural reading order and always chooses the left-most from the first row (#x ascending , #y ascending)? Or would you prefer to specify this information in the relevant toolbuilder methods instead?
Best, Christoph Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel Gesendet: Freitag, 19. November 2021 18:17:25 An: squeak-dev Betreff: Re: [squeak-dev] Merge Request: defaultFocusMorph.cs Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser. Am 20.10.2021 16:31:00 schrieb christoph.thiede at student.hpi.uni-potsdam.de <christoph.thiede at student.hpi.uni-potsdam.de>: Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows:
- Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it)
- Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
Hi Marcel,
please see Morphic-ct.1985. I would be curious to discover any further edge cases. :-)
Or you could focus on fixing the issues in "debug invocation" in dialog windows. ;-)
On it ...
Best, Christoph
--- Sent from Squeak Inbox Talk
On 2022-04-08T09:33:29+02:00, marcel.taeumel@hpi.de wrote:
there is another limitation of this heuristic because it is tied to the nesting depth of widgets. :-)
I am sure that there will be more. :-P
Would you agree to extend the heuristic to fix that? :-)
Or you could focus on fixing the issues in "debug invocation" in dialog windows. ;-)
Best, Marcel Am 06.04.2022 20:24:48 schrieb christoph.thiede at student.hpi.uni-potsdam.de <christoph.thiede at student.hpi.uni-potsdam.de>: Hi Marcel,
there is another limitation of this heuristic because it is tied to the nesting depth of widgets. :-) For instance, the MessageNames tool has the wrong defaultFocus because the text morph in the search bar on the left is nested into a panel whereas the list on the right is not nested. Would you agree to extend the heuristic to fix that? :-)
Best, Christoph
Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
On 2021-11-23T10:43:39+01:00, marcel.taeumel at hpi.de wrote:
Okay. See Morphic-mt.1799 in Trunk.
Best, Marcel
Am 22.11.2021 19:22:37 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>: Hi Marcel,
thanks again for reviewing and merging this!
Adds and uses breadth-first search for submorph lookup because it matches the natural way widgets are organized in a window. The existing depth-first in #allMorphsDo: might take surprising paths.
I keep finding some tools where this heuristic is not yet good enough. For example, in the Monticello Browser, I would expect the package list on the left to be focused by default, but instead, the repository list on the right is focused. What would you think about a strategy that orders all descendant morphs by their natural reading order and always chooses the left-most from the first row (#x ascending , #y ascending)? Or would you prefer to specify this information in the relevant toolbuilder methods instead?
Best, Christoph Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel Gesendet: Freitag, 19. November 2021 18:17:25 An: squeak-dev Betreff: Re: [squeak-dev] Merge Request: defaultFocusMorph.cs Merged.
Revisions in SystemWindow >> #defaultFocusMorph and more tool-specific use of #defaultFocus: besides the preference browser. Am 20.10.2021 16:31:00 schrieb christoph.thiede at student.hpi.uni-potsdam.de <christoph.thiede at student.hpi.uni-potsdam.de>: Hi all,
if a new window is invoked via a keyboard gesture, with the proposed changeset, the keyboard focus is automatically passed to the new window. See SystemWindow >> #defaultFocusMorph. By default, the first keyboard-interested (sub)+morph is selected, but you can specify a different focus holder by setting the #defaultFocusMorph property of the window or the #defaultFocus parameter of the pluggable window spec.
I think this improves the keyboard workflow in Squeak a bit. For instance, it enables the following workflows:
- Ctrl + 0 (search bar), type '6 * 7', Alt + o (spawn), Alt + p (print it)
- Ctrl + 3 (Tools menu), type 'browser', Enter, Alt + f (find), type 'Object', Enter
Please review and merge if you don't have any objections. Happy squeaking! :-)
Best, Christoph
Sent from Squeak Inbox Talk [https://github.com/hpi-swa-lab/squeak-inbox-talk]
squeak-dev@lists.squeakfoundation.org