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

GLMakie no longer displays to separate window in VS Code #2956

Closed
garrekstemo opened this issue May 16, 2023 · 11 comments
Closed

GLMakie no longer displays to separate window in VS Code #2956

garrekstemo opened this issue May 16, 2023 · 11 comments

Comments

@garrekstemo
Copy link

garrekstemo commented May 16, 2023

In the most recent update (GLMakie 0.8.5 on Julia version 0.9.0) GLMakie no longer opens a separate window when executing from a file in Visual Studio Code (Julia extension also on the latest version). Instead, plots open in a new tab in VS Code, like CairoMakie. I tested with a new environment with only GLMakie installed and generating a blank Figure(). I'm not sure if it's a Makie or VSC problem.

@SimonDanisch
Copy link
Member

Sorry for the back and forth on this, but this is the new intended behaviour...
You can force it to always open a window by either disabling the plotpane or running GLMakie.activate!(inline=false)....

@garrekstemo
Copy link
Author

Ah ok. Is there a post or discussion somewhere that I can read? Has there been a change in the roadmap for GLMakie?

My thinking is that having it open in a separate window encourages the user to make use of the more interactive elements of GLMakie. This change suggests to me that perhaps there has been a change in thinking about how people should use it. I would like to make sure that when I'm teaching others that I'm going along with how Makie will be in the future.

@SimonDanisch
Copy link
Member

This change suggests to me that perhaps there has been a change in thinking about how people should use

No not really... More like, if someone has the plotpane active, they may want to priories showing plots in there.
The whole defaults for opening or not opening a window have been riddled with technical challenges with the display system and personal preferences, so that was just the best we could come up with right now.

@garrekstemo
Copy link
Author

garrekstemo commented May 16, 2023 via email

@SimonDanisch
Copy link
Member

I'm open to change it back or make it more easily customizable and at least document it better...
The PR that changed this behaviour was a hotfix under time pressure, because the behavior on 0.19.4 was pretty terrible ( see all the issues, and e.g. GLMakie wouldn't open a window unless you called display(fig) explicitly).
But in a few weeks I should have some more time and I want to concentrate on polishing things like this.

@garrekstemo
Copy link
Author

Ok. I'm actually getting ready to do a tutorial in my laboratory for new students over the next few weeks and I teach with Makie exclusively. Last year I got good feedback on Julia and Makie, so I'll share any ideas that I have this time.

@ffreyer
Copy link
Collaborator

ffreyer commented May 16, 2023

I think the main selling points of GLMakie over CairoMakie are interactivity and 3D. Having one of these removed by default sounds bad to me.

I think my preference for vscode would be interactive window > pane > both, since use it for tinkering with things. For jupyter notebooks it would be both > interactive window > static inline plot because I use them to show of and sort of archieve results as well as tinkering. If you could have an inline image that updates after manipulation of the open window that would be even better. Maybe that would be possible in Pluto?

@jkrumbiegel
Copy link
Member

You could do something like

fig = Figure()
wait(display(fig))
fig

in Jupyter, then the final result of your tinkering should be shown after closing the window, no?

@ffreyer
Copy link
Collaborator

ffreyer commented May 16, 2023

Yea, I've done that. It ended up being about as annoying as useful because I wanted to do some napkin math or check something else in another cell. And you can't do that while waiting for the window to close.

@Reese-Martin
Copy link

Just want to throw in a comment here that this behavior changes has really messed up my workflow. I was only using GLMakie because of the generation of windows that I could interact with, and this has disabled that feature for (from my perspective) no reason and with no warning.

@ffreyer
Copy link
Collaborator

ffreyer commented Jul 25, 2023

The change has been reverted in #3057 which is part of the 0.19.7 release. So with the latest version you should get interactive windows by default again (in vscode?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants