Jason Moore created FLEX-34653:
----------------------------------
Summary: Overriding RuntimeDPIProvider causes incorrect
application scalling
Key: FLEX-34653
URL: https://issues.apache.org/jira/browse/FLEX-34653
Project: Apache Flex
Issue Type: Bug
Components: Layout - General, Skinning
Affects Versions: Apache Flex 4.13.0
Environment: Windows ( Possible Mac - Not checked ).
Reporter: Jason Moore
The issue occurs when using automatic scaling and setting the application DPI
and overriding the runtimeDPIProvider to set the runtimeDPI where it is
incorrectly returned from the OS ( On desktop devices for instance ).
If the two values match ie 1:1 scaling, there is no issue. But if they differ
then the application content is scalled correctly , but the stage size is also
scaled, incorrect. This leads to the application being clipped when scaling up
and excess space when scaling down.. See code excepts to recreate...
{code:title=ScaleIssue.mxml|borderStyle=solid}
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
applicationDPI="160"
runtimeDPIProvider="myRuntimeDPIProvider">
<s:Label id="LeftMarker" left="0" verticalCenter="0"
text="<--- LEFT" fontSize="24"/>
<s:Label id="MiddleMarker" horizontalCenter="0"
verticalCenter="0" text="> > > MIDDLE < < <" fontSize="24"/>
<s:Label id="RightMarker" right="0" verticalCenter="0"
text="RIGHT --->" fontSize="24"/>
</s:WindowedApplication>
{code}
{code:title=myRuntimeDPIProvider.as|borderStyle=solid}
package
{
import mx.core.DPIClassification;
import mx.core.RuntimeDPIProvider;
public class myRuntimeDPIProvider extends RuntimeDPIProvider
{
/**
* Overrride getter function so we can set the dpi manually
when running on desktop device
* This would normally be a bit more sophisticated...
*
* @return
*
*/
override public function get runtimeDPI():Number
{
return DPIClassification.DPI_240;
}
}
}
{code}
You should see the text labels pointing to the left and right screen edges..
but instead the right hand label is off screen.
Hope that makes sense.
J :)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)