Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong focus in Calypso Find Class Dialog causes exception #16313

Closed
guillep opened this issue Mar 19, 2024 · 3 comments · Fixed by #16493
Closed

Wrong focus in Calypso Find Class Dialog causes exception #16313

guillep opened this issue Mar 19, 2024 · 3 comments · Fixed by #16493
Assignees
Labels
To fix before release Issure to fix before the upcoming Pharo release Version: Pharo 12
Milestone

Comments

@guillep
Copy link
Member

guillep commented Mar 19, 2024

Bug description

  • Open Calypso
  • Right-click in package panel
  • Select "Find class"
  • Type Cmd+W
    => This wrongly closes calypso instead of the find class dialog

Moreover,
=> closing the dialog throws exception sometimes

@guillep guillep added Version: Pharo 12 To fix before release Issure to fix before the upcoming Pharo release labels Mar 19, 2024
@hernanmd hernanmd self-assigned this Mar 30, 2024
@hernanmd hernanmd added this to the 12.0.0 milestone Mar 30, 2024
@demarey
Copy link
Contributor

demarey commented Apr 5, 2024

fixed in #16386

@guillep
Copy link
Member Author

guillep commented Apr 19, 2024

The attempted fix in #16492 was actually causing other issues such as #16436.

We should properly fix the focus

@guillep
Copy link
Member Author

guillep commented Apr 19, 2024

Ok, we chased this issue up to the #ClyCloseBrowserCommand that is bound to Cmd+W.
The modal pop up to find classes calls that command that in turn does:

browser close

That is made to close a tab in a group window, or the (browser)window itself, but it has no knowledge about pop ups that are open by it.

ClyFullBrowserMorph >> close
	| currentWindow |
	currentWindow := self window.

	(currentWindow ownerThatIsA: GroupWindowMorph) ifNotNil: [:group |
		^self okToChange ifTrue: [
			[group removeWindow: currentWindow]
				on: ProvideAnswerNotification do: [:notification |
					"We already got answer from okToChange check above"
					notification resume: true]]].

	currentWindow close

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
To fix before release Issure to fix before the upcoming Pharo release Version: Pharo 12
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants