[Pharo-project] pharo on ipad3 -- tiny image shown only
Hi everyone, After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys! However, the image now shows up on only a very small portion of the screen. Is that a known issue? btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday. Johan
On 16 September 2012 18:14, Johan Brichau <johan@inceptive.be> wrote:
Hi everyone,
After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys!
However, the image now shows up on only a very small portion of the screen. Is that a known issue?
yes. this is a "retina display" issue. :) I am not sure what is the status, however i can assure you that we (especially Esteban) is well aware of it.
btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday.
Johan
-- Best regards, Igor Stasenko.
In another application, I do have this thing that helps in rescaling (the class is a XXXView) // Enable retina display if( CFG_IOS_RETINA_ENABLED ){ if( [self respondsToSelector:@selector(contentScaleFactor)] ){ float scaleFactor=[[UIScreen mainScreen] scale]; [self setContentScaleFactor:scaleFactor]; } } This is a quickfix that will look ugly but... worth trying. Add that into the SqueakUIView.m file inside this: - (id)initWithFrame:(CGRect) aFrame { self = [super initWithFrame: aFrame]; self.autoresizingMask = UIViewAutoresizingFlexibleRightMargin|UIViewAutoresizingFlexibleBottomMargin|UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth; colorspace = CGColorSpaceCreateDeviceRGB(); return self; } I suspect that self.autoresizingMask is the culprit... Hope it helps. Phil 2012/9/16 Igor Stasenko <siguctua@gmail.com>:
On 16 September 2012 18:14, Johan Brichau <johan@inceptive.be> wrote:
Hi everyone,
After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys!
However, the image now shows up on only a very small portion of the screen. Is that a known issue?
yes. this is a "retina display" issue. :) I am not sure what is the status, however i can assure you that we (especially Esteban) is well aware of it.
btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday.
Johan
-- Best regards, Igor Stasenko.
Thanks for the response, but unfortunately it does not seem to help. I'm a bit amazed because the Dr Geo app works perfectly fine. So where is the trick? On 16 Sep 2012, at 19:24, phil@highoctane.be wrote:
In another application, I do have this thing that helps in rescaling (the class is a XXXView)
// Enable retina display if( CFG_IOS_RETINA_ENABLED ){ if( [self respondsToSelector:@selector(contentScaleFactor)] ){ float scaleFactor=[[UIScreen mainScreen] scale]; [self setContentScaleFactor:scaleFactor]; } }
This is a quickfix that will look ugly but... worth trying.
Add that into the SqueakUIView.m file inside this:
- (id)initWithFrame:(CGRect) aFrame { self = [super initWithFrame: aFrame]; self.autoresizingMask = UIViewAutoresizingFlexibleRightMargin|UIViewAutoresizingFlexibleBottomMargin|UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth; colorspace = CGColorSpaceCreateDeviceRGB(); return self; }
I suspect that self.autoresizingMask is the culprit...
Hope it helps.
Phil
2012/9/16 Igor Stasenko <siguctua@gmail.com>:
On 16 September 2012 18:14, Johan Brichau <johan@inceptive.be> wrote:
Hi everyone,
After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys!
However, the image now shows up on only a very small portion of the screen. Is that a known issue?
yes. this is a "retina display" issue. :) I am not sure what is the status, however i can assure you that we (especially Esteban) is well aware of it.
btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday.
Johan
-- Best regards, Igor Stasenko.
Well, get the CFG test out of the way of course. The CFG_... is a #define in my other app 2012/9/16 Johan Brichau <johan@inceptive.be>:
Thanks for the response, but unfortunately it does not seem to help.
I'm a bit amazed because the Dr Geo app works perfectly fine. So where is the trick?
On 16 Sep 2012, at 19:24, phil@highoctane.be wrote:
In another application, I do have this thing that helps in rescaling (the class is a XXXView)
// Enable retina display if( CFG_IOS_RETINA_ENABLED ){ if( [self respondsToSelector:@selector(contentScaleFactor)] ){ float scaleFactor=[[UIScreen mainScreen] scale]; [self setContentScaleFactor:scaleFactor]; } }
This is a quickfix that will look ugly but... worth trying.
Add that into the SqueakUIView.m file inside this:
- (id)initWithFrame:(CGRect) aFrame { self = [super initWithFrame: aFrame]; self.autoresizingMask = UIViewAutoresizingFlexibleRightMargin|UIViewAutoresizingFlexibleBottomMargin|UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth; colorspace = CGColorSpaceCreateDeviceRGB(); return self; }
I suspect that self.autoresizingMask is the culprit...
Hope it helps.
Phil
2012/9/16 Igor Stasenko <siguctua@gmail.com>:
On 16 September 2012 18:14, Johan Brichau <johan@inceptive.be> wrote:
Hi everyone,
After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys!
However, the image now shows up on only a very small portion of the screen. Is that a known issue?
yes. this is a "retina display" issue. :) I am not sure what is the status, however i can assure you that we (especially Esteban) is well aware of it.
btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday.
Johan
-- Best regards, Igor Stasenko.
secret is not use OpenGL but CALayer... ensure you start with SqueakUIViewCALayer instead SqueakUIViewOpenGL (btw... if you were using my sources, that should be out of the box). I'm working to doit with a better mechanism (OpenGL or CG), but so far... no time :) Esteban On Sep 17, 2012, at 10:56 AM, Hilaire Fernandes <hilaire.fernandes@edu.ge.ch> wrote:
Esteban should be able to tell.
Hilaire
Hi Esteban, Thanks for sharing the secret ;-) I checked out latest sources and ran ConfigurationOfPharoVM version 2.0-4 but it does not work out-of-the-box. Right now, I just forced to always use the SqueakUIViewCALayer. Need to check why it took the other one.. Johan On 17 Sep 2012, at 22:34, Esteban Lorenzano wrote:
secret is not use OpenGL but CALayer... ensure you start with SqueakUIViewCALayer instead SqueakUIViewOpenGL (btw... if you were using my sources, that should be out of the box).
I'm working to doit with a better mechanism (OpenGL or CG), but so far... no time :)
Esteban
On Sep 17, 2012, at 10:56 AM, Hilaire Fernandes <hilaire.fernandes@edu.ge.ch> wrote:
Esteban should be able to tell.
Hilaire
Hi Esteban, I have been experiencing this issue as well. The main trouble is that on retina devices OpenGL works in pixels while other API's are working in points. I updated the SqueakUIViewOpenGL.m file to respect the difference between device pixels and points. I tested on both Retina iPad and iPad 2. Please see updated file attached. Regards, Jan On 18 Sep 2012, at 22:50, Johan Brichau <johan@inceptive.be> wrote:
Hi Esteban,
Thanks for sharing the secret ;-)
I checked out latest sources and ran ConfigurationOfPharoVM version 2.0-4 but it does not work out-of-the-box. Right now, I just forced to always use the SqueakUIViewCALayer. Need to check why it took the other one..
Johan
On 17 Sep 2012, at 22:34, Esteban Lorenzano wrote:
secret is not use OpenGL but CALayer... ensure you start with SqueakUIViewCALayer instead SqueakUIViewOpenGL (btw... if you were using my sources, that should be out of the box).
I'm working to doit with a better mechanism (OpenGL or CG), but so far... no time :)
Esteban
On Sep 17, 2012, at 10:56 AM, Hilaire Fernandes <hilaire.fernandes@edu.ge.ch> wrote:
Esteban should be able to tell.
Hilaire
cool, thanks! I will integrate tomorrow :) On Oct 18, 2012, at 10:10 PM, Jan Äada <jcada@email.cz> wrote:
Hi Esteban,
I have been experiencing this issue as well. The main trouble is that on retina devices OpenGL works in pixels while other API's are working in points. I updated the SqueakUIViewOpenGL.m file to respect the difference between device pixels and points.
I tested on both Retina iPad and iPad 2. Please see updated file attached.
Regards,
Jan
<SqueakUIViewOpenGL.m>
On 18 Sep 2012, at 22:50, Johan Brichau <johan@inceptive.be> wrote:
Hi Esteban,
Thanks for sharing the secret ;-)
I checked out latest sources and ran ConfigurationOfPharoVM version 2.0-4 but it does not work out-of-the-box. Right now, I just forced to always use the SqueakUIViewCALayer. Need to check why it took the other one..
Johan
On 17 Sep 2012, at 22:34, Esteban Lorenzano wrote:
secret is not use OpenGL but CALayer... ensure you start with SqueakUIViewCALayer instead SqueakUIViewOpenGL (btw... if you were using my sources, that should be out of the box).
I'm working to doit with a better mechanism (OpenGL or CG), but so far... no time :)
Esteban
On Sep 17, 2012, at 10:56 AM, Hilaire Fernandes <hilaire.fernandes@edu.ge.ch> wrote:
Esteban should be able to tell.
Hilaire
It works fine on my iPad2. Dunno about the 3. What happens when you rotate the screen? Phil 2012/9/16 Johan Brichau <johan@inceptive.be>:
Hi everyone,
After some very friendly help of Nick and Igor at ESUG, I managed to get the iStackVM running on my iPad again, thanks a lot guys!
However, the image now shows up on only a very small portion of the screen. Is that a known issue?
btw: the problem I experienced to compile the vm correctly was eventually a package-loading problem (i.e. I did not get the correct packages). This is because there is a bug in the version-method generation of Metacello. Together with Dale, we discussed that issue and Dale just solved it last friday.
Johan
participants (6)
-
Esteban Lorenzano -
Hilaire Fernandes -
Igor Stasenko -
Jan Äada -
Johan Brichau -
phil@highoctane.be