[Pharo-dev] The HiDPI Issue

Tim Mackinnon tim at testit.works
Sat Feb 16 07:06:30 EST 2019


Eric - I had the same feeling a few years ago when I got a retina laptop and found Pharo a bit fuzzy on the eyes (although it’s true that with time you start to notice it less).

Anyway - I’m not sure anyone has actually mentioned that you can download the latest Glamourous Toolkit (https://gtoolkit.com/#install <https://gtoolkit.com/#install> - take the prebuilt image) and then open a playground (with all other windows closed) and evaluate:

Bloc preferableHostClass: BlOSWindowHost

Then try one of the examples in the GT menu (don’t go full screen in your image), and this will open a second native window rendered in retina quality. Its still a bit alpha - you get a warning dialog that you have to click ignore on 3 times - but then it keeps running. It is also obviously unoptimised at this point too.

I think this gives a welcome glance of the future - so there is hope.

Tim

> On 16 Feb 2019, at 11:04, ducasse <stepharo at netcourrier.com> wrote:
> 
> Hi Eric
> 
> I will let esteban reply carefully :)
> Now my take on this is 
> 	that we want to go via SDL and other backends to solve the problems (event dropping, display)
> 	Back in October, Esteban fixed the SDL/OSWindows so that Bloc people can get rid of the 
> 	VM rendering and be free. 
> 
> This is the path to go. 
> For Bloc I (personally and discussing with Alain) think that there is 4-6 months of work (if I would overselling it I would have said that this is 2 month work) to clean it and tight it up - (not talking about Widgets). I personnally do not want Design like Glamour or GT in the system (too many announcers).
> So we will take time to do real code review. 
> 
> So our roadmap is 
> 	- make sure that Pharo can work headless
> 	- check the impact of SDL/OSWindow
> 	- focus on new spec version so that we can have our tools migrated and we do not have to 
> 	rewrite them once more. 
> 	
> Pharo 90 probably focus on Bloc. 
> 
> 
> Stef
> 
>> On 15 Feb 2019, at 17:52, Eric Gade <eric.gade at gmail.com> wrote:
>> 
>> Hello,
>> 
>> I know that others have posted about this before but I wanted to get the current status. 
>> 
>> I've recently had to buy a new laptop that came with a HiDPI display. Generally (especially on Linux systems) this makes Pharo unusable. Though there are font size increase and scaling options in the Pharo system settings, these do not work as a solution -- buttons are still tiny, there is inconsistent scaling behavior across morphic, etc. The overall problem can be described as: in Pharo, one pixel equals one "point," and so the interface is incredibly small on these HiDPI screens (3k etc).
>> 
>> These HiDPI screens are becoming more common, both as laptop and as external displays. Their main advantage is that they can render text very crisply. In the HN post announcing the release of P7, there were one or two complaints about this issue. It does make it hard to demonstrate to others (as I do often) the power of developing in Pharo.
>> 
>> Here are some questions I have about this issue:
>> 1) What is the current state of affairs in dealing with this issue, if any?
>> 2) Would this require VM changes (I assume it would)? If so, what might those entail?
>> 3) If this does require VM changes, I assume the Squeak people would want in on it?
>> 4) Is the current plan to wait for Bloc to resolve these issues and/or would switching to Bloc resolve these issues at all anyway?
>> 5) Related -- where can one start to learn about current VM architecture and development practices?
>> 
>> That said I'm not here to just bellyache. While I don't have any VM experience, I'm willing to jump in and try to work on it if someone can point me in the right direction. Or perhaps this is too specialized a task...
>> 
>> Thanks
>> 
>> -- 
>> Eric
> 
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20190216/c94895a0/attachment.html>


More information about the Pharo-dev mailing list