[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-datatype-dev
Subject:    [datatype-dev] RE: [Common-dev] CR: Browser would blit over menu
From:       "Eric Hyche" <ehyche () real ! com>
Date:       2007-04-26 14:31:58
Message-ID: 002c01c7880f$a678f3a0$db68a8c0 () EHYCHED620
[Download RAW message or body]


Looks good.

=============================================
Eric Hyche (ehyche@real.com)
Technical Lead
RealNetworks, Inc.  

> -----Original Message-----
> From: common-dev-bounces@helixcommunity.org 
> [mailto:common-dev-bounces@helixcommunity.org] On Behalf Of 
> Shy.Ward@nokia.com
> Sent: Thursday, April 26, 2007 10:08 AM
> To: common-dev@helixcommunity.org; datatype-dev@helixcommunity.org
> Subject: [Common-dev] CR: Browser would blit over menu when 
> playing inbackground
> 
> "Nokia submits this code under the terms of a commercial 
> contribution agreement with RealNetworks, and I am authorized 
> to contribute this code under said agreement."
> 
>   
> Modified by:  shy.ward@nokia.com 
>   
> Reviewed by: 
>   
> Date: 4/26/2007 
>   
> Project: SymbianMmf 
>   
> ErrorId:  PNIO-6XCGZW 
>   
> Synopsis: Browser would blit over menu when playing in 
> background. Due to that fact that Java never provides the MMF 
> with a valid DisplayRegion code
> 
> was adopted to create a DisplayRegion equal to the ClipRect. 
> This code incorrectly created a valid DisplayRegion when none 
> existed for the Browser when it was playing
> 
> in the background. We now check to see if any DisplayRegion 
> has been sent by client, if so this value will be used 
> otherwise it will default to creating one equal to the ClipRect.
> 
>     
> Root Cause of the problem: Implementation 
>   
> 
> Files Modified: 
> datatype/mdf/video/renderer/mdfvideoadapter.cpp 
> common/system/platform/symbian/symbianglobalvideoparameters.cpp 
> common/system/platform/pub/symbian/symbianglobalvideoparameters.h 
> 
> Files Added: 
>   
>   
> Image Size and Heap Use impact: None 
> 
> Module Release testing (STIF) : Yes, Local Test Cases 
> 
> Test case(s) Added  :  N/A 
>   
> Memory leak check performed : Yes, no new leaks have been introduced 
>   
> Platforms and Profiles Build Verified: 
> helix-client-s60-32-mmf-mdf-arm 
> 
> Platforms and Profiles Functionality verified: armv5, winscw 
>   
> Branch: Head & 210CayS 
> 
> 
> Index: platform/symbian/symbianglobalvideoparameters.cpp 
> =================================================================== 
> RCS file: 
> /cvsroot/common/system/platform/symbian/symbianglobalvideopara
> meters.cpp,v 
> retrieving revision 1.1.2.3 
> diff -w -u -b -r1.1.2.3 symbianglobalvideoparameters.cpp 
> --- platform/symbian/symbianglobalvideoparameters.cpp   27 
> Mar 2007 15:53:14 -0000      1.1.2.3 
> +++ platform/symbian/symbianglobalvideoparameters.cpp   26 
> Apr 2007 13:23:06 -0000 
> @@ -67,6 +67,7 @@ 
>    m_bAntiAlias( FALSE ), 
>    m_rotationValue( 0 ), 
>    m_fHeightPerc( 100.0 ), 
> +  m_bValidDisplayRegion( FALSE ), 
>    m_fWidthPerc( 100.0 ) 
>  #ifdef SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT 
>    ,m_lScreenNumber( 0 ), 
> @@ -152,6 +153,7 @@ 
>      // Fetch the clipping region. 
>      m_ClipRegion.Clear(); 
>      m_ClipRegion.Copy(*(TRegion*)aRegion); 
> +    m_bValidDisplayRegion = TRUE; 
> 
>      return retVal; 
>  } 
> @@ -237,3 +239,8 @@ 
>         m_frameRect = sValue; 
>         return retVal; 
>  } 
> + 
> +HXBOOL SymbianGlobalVideoParameters::IsDisplayRegionValid(void) 
> +{ 
> +       return(m_bValidDisplayRegion); 
> +} 
> 
> Index: pub/platform/symbian/symbianglobalvideoparameters.h 
> =================================================================== 
> RCS file: 
> /cvsroot/common/system/pub/platform/symbian/symbianglobalvideo
> parameters.h,v 
> retrieving revision 1.1.2.2 
> diff -w -u -b -r1.1.2.2 symbianglobalvideoparameters.h 
> --- pub/platform/symbian/symbianglobalvideoparameters.h 27 
> Mar 2007 15:53:15 -0000      1.1.2.2 
> +++ pub/platform/symbian/symbianglobalvideoparameters.h 26 
> Apr 2007 13:23:07 -0000 
> @@ -101,6 +101,7 @@ 
>      HX_RESULT    SetRotationValue(UINT32 ulValue); 
>      HX_RESULT    GetFrameRect(HXxRect &sValue); 
>      HX_RESULT    SetFrameRect(HXxRect sValue); 
> +    HXBOOL       IsDisplayRegionValid(void); 
> 
> 
>  private: 
> @@ -113,6 +114,7 @@ 
>      HXFLOAT               m_fHeightPerc; 
>      HXFLOAT               m_fWidthPerc; 
>      HXBOOL                m_bDSAStatus; 
> +    HXBOOL                m_bValidDisplayRegion; 
>  #ifdef SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT 
>      INT32                 m_lScreenNumber; 
>      HXBOOL                m_bScreenNumberSet; 
> 
> Index: mdfvideoadapter.cpp 
> =================================================================== 
> RCS file: /cvsroot/datatype/mdf/video/renderer/mdfvideoadapter.cpp,v 
> retrieving revision 1.3.2.60 
> diff -w -u -b -r1.3.2.60 mdfvideoadapter.cpp 
> --- mdfvideoadapter.cpp 2 Apr 2007 21:02:47 -0000       1.3.2.60 
> +++ mdfvideoadapter.cpp 26 Apr 2007 13:24:55 -0000 
> @@ -1196,9 +1196,10 @@ 
>          
> (SymbianGlobalVideoParameters::Instance())->GetDisplayRegion((
> HXxRegion)&m_ClipRegion); 
> 
>          TInt count = m_ClipRegion.Count(); 
> -        if(count == 0) 
> +        if((count == 0) && 
> ((SymbianGlobalVideoParameters::Instance())->IsDisplayRegionVa
> lid()) == FALSE) 
>          { 
>             //we have no region so make a region == to cliprect 
> +           MDFVIDEOLOG_LEAVEFN2( "SetupWindow - We have no 
> valid DisplayRregion so we making one equal to ClipRect" ); 
>             m_ClipRegion.Clear(); 
>             m_ClipRegion.AddRect(m_clipRect); 
>          } 
> 
> 


_______________________________________________
Datatype-dev mailing list
Datatype-dev@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic