gatech-csl / jes

The Jython Environment for Students allows students to write Jython programs that can manipulate pictures, sounds, and videos.
http://mediacomputation.org/
60 stars 38 forks source link

Add support for high-res screens #90

Open tolerl1 opened 9 years ago

tolerl1 commented 9 years ago

I currently use a dell XPS 13in running windows 10 pro with a resolution of 3200x1800 which makes it extremely difficult to work at times. The issue is with text being way to small, even when adjusted in settings, options are squeezed together making it hard to select the correct item [especially when opening a file]. screenshot 1

mjguzdial commented 9 years ago

It's on our to-do list. It's not clear that there is support in Java Swing to support high-res monitors in Windows 10.

Ndolam commented 7 years ago

I am also having a hard time seeing the JES UI. My understanding (probably very imperfect) is that Java 8 (on at least Linux and Windows) just plain refuses to understand hi-dpi screens.

I realize that working around shortcomings in basic tools (Java in this case) seems like a waste of time, but here is my question: would it take one of the JES developers unduly long to make a second version of JES which is, say, the same as the current one but with all font sizes and other dimensions (say) doubled? (I realize that hand-tweaking GUIs to get them to look good can be a pain, but I wonder if a simple doubling of everything would be "good enough" until Java gets its act in gear.)

Thanks for reading. More thanks for considering my brute-force suggestion.

mjguzdial commented 7 years ago

There is only one JES developer left still working on it -- me. It does actually take me several hours to figure out how/where to update and make builds for each platform. I do hope to do this soon, and when I do, I can try to make a big-GUI-everything version.

Do note that JES is in GitHub. I welcome anyone to grab the source and build it yourself.

In fact, it might be pretty easy to do what you want for your own personal copy. The UI is all built in jes/python/jes/gui/mainwindow.py. It's all Python. Change the parameters you want in that file, then just restart JES. I'm not seeing anything in there that sets the font sizes in the menu, though -- that may be a default setting in Swing.


From: Ndolam notifications@github.com Sent: Monday, September 4, 2017 11:03:42 AM To: gatech-csl/jes Cc: Guzdial, Mark; Comment Subject: Re: [gatech-csl/jes] Add support for high-res screens (#90)

I am also having a hard time seeing the JES UI. My understanding (probably very imperfect) is that Java 8 (on at least Linux and Windows) just plain refuses to understand hi-dpi screens.

I realize that working around shortcomings in basic tools (Java in this case) seems like a waste of time, but here is my question: would it take one of the JES developers unduly long to make a second version of JES which is, say, the same as the current one but with all font sizes and other dimensions (say) doubled? (I realize that hand-tweaking GUIs to get them to look good can be a pain, but I wonder if a simple doubling of everything would be "good enough" until Java gets its act in gear.)

Thanks for reading. More thanks for considering my brute-force suggestion.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/gatech-csl/jes/issues/90#issuecomment-326983379, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AELfpoKRkrNCYMARTGyX0N1oLbPFoPa3ks5sfBFOgaJpZM4Fv94G.

Ndolam commented 7 years ago

Mark,

thanks for getting back so quickly. I did d/l it and start playing around. However, while poking through the code I realized that (on LInux anyway) one can change the UI skin from "Metal" to "GTK+" and that fixes many things up nicely, since GTK+ (GTK3, anyway) has some understanding of hi-dpi devices.

The help window text is still tiny, even having changed the font size to 30 in "Options", but 3 out of 4 ain't bad. As Meatloaf didn't say.

Ndolam commented 7 years ago

Following up, in case anyone reading this knows what to do... I found see the second answer here that if one adds (self.htmlPane.getDocument()).getStyleSheet().addRule("body { font-size: 32pt; }") in htmlbrowser.py right after the self.htmlPane = swing.JEditorPane('text/html', ... line, it make the "Welcome to JES" font bigger. But that has no effect on the html pages, even if I add the .addRule stuff again in goToUrl().

Any Java or Jython wizards reading this who care to enlighten me as to what to do next?

codelastnight commented 3 years ago

for regular users coming across this post, I've found a workaround to this issue (for windows):

https://github.com/gatech-csl/jes/issues/101#issuecomment-774323987

hope this helps someone