uiacceltk/hitchcock/ServerCore/Src/alfwindowmanager.cpp
branchRCL_3
changeset 52 31fccae4f8a7
parent 51 e5af45d51884
equal deleted inserted replaced
51:e5af45d51884 52:31fccae4f8a7
   206         aWindow->SetOpacity(aWindow->Opacity());
   206         aWindow->SetOpacity(aWindow->Opacity());
   207         }
   207         }
   208 	aWindow->SetSurfaceExtent(aWindow->SurfaceExtent());
   208 	aWindow->SetSurfaceExtent(aWindow->SurfaceExtent());
   209     aWindow->SetWindowArea();
   209     aWindow->SetWindowArea();
   210     aWindow->SetTransparencyAlphaChannel(aWindow->TransparencyAlphaChannel());
   210     aWindow->SetTransparencyAlphaChannel(aWindow->TransparencyAlphaChannel());
       
   211     aWindow->SetScreenDeviceValid(aWindow->IsScreenDeviceValid());
   211     aWindow->IncludeToVisibilityCalculation(aWindow->IsIncludedToVisibilityCalculation());
   212     aWindow->IncludeToVisibilityCalculation(aWindow->IsIncludedToVisibilityCalculation());
   212 	aWindow->SetActive(aWindow->IsActive());
   213 	aWindow->SetActive(aWindow->IsActive());
   213 	}
   214 	}
   214 
   215 
   215 // ---------------------------------------------------------------------------
   216 // ---------------------------------------------------------------------------
   251         {
   252         {
   252         TAlfWServInfo wservInfo = aWindow.WsInfo();
   253         TAlfWServInfo wservInfo = aWindow.WsInfo();
   253 
   254 
   254         TInt offset;
   255         TInt offset;
   255         TAlfWindowAttributes* windowAttributes = CreateWindowAttributes(offset);
   256         TAlfWindowAttributes* windowAttributes = CreateWindowAttributes(offset);
   256         windowAttributes->iWindowNodeType = wservInfo.iNodeType; 
   257         if (windowAttributes)
   257         windowAttributes->iScreenNumber = wservInfo.iScreenNumber; 
   258             {
   258 
   259             windowAttributes->iWindowNodeType = wservInfo.iNodeType; 
   259     	TAlfBridgerData data;
   260             windowAttributes->iScreenNumber = wservInfo.iScreenNumber; 
   260         data.Set(EAlfDSDestroyWindow, 
   261 
   261             wservInfo.iRefId.iWindowGroupId, 
   262             TAlfBridgerData data;
   262             wservInfo.iRefId.iWindowIdentifer, 
   263             data.Set(EAlfDSDestroyWindow, 
   263             (TAny*)offset); 
   264                 wservInfo.iRefId.iWindowGroupId, 
   264 
   265                 wservInfo.iRefId.iWindowIdentifer, 
   265         PostIt(data);
   266                 (TAny*)offset); 
       
   267     
       
   268             PostIt(data);
       
   269             }
       
   270 		else
       
   271             {
       
   272             CAlfWindow::ReportOOM();
       
   273             }
   266 
   274 
   267         iData->iWindows.Remove(i);
   275         iData->iWindows.Remove(i);
   268         delete &aWindow;
   276         delete &aWindow;
   269         
   277         
   270          // provide notification for plugins that have enabled it
   278          // provide notification for plugins that have enabled it
   314 // ---------------------------------------------------------------------------
   322 // ---------------------------------------------------------------------------
   315 // ReserveL
   323 // ReserveL
   316 // Decaprecated
   324 // Decaprecated
   317 // ---------------------------------------------------------------------------
   325 // ---------------------------------------------------------------------------
   318 //   
   326 //   
   319 EXPORT_C CAlfWindow* CAlfWindowManager::ReserveL( const TWindowIdentifier& /*aId*/, TBool aReserveBuffer /*= ETrue*/ )
   327 EXPORT_C CAlfWindow* CAlfWindowManager::ReserveL( const TWindowIdentifier& /*aId*/, TBool /*aReserveBuffer = ETrue*/ )
   320     {
   328     {
   321     return 0; // we never get here 
   329     return 0; // we never get here 
   322     }
   330     }
   323     
   331     
   324 
   332 
   656 TAlfWindowAttributes* CAlfWindowManager::CreateWindowAttributes(TInt& aIndex)
   664 TAlfWindowAttributes* CAlfWindowManager::CreateWindowAttributes(TInt& aIndex)
   657     {
   665     {
   658     TAlfWindowAttributes empty;
   666     TAlfWindowAttributes empty;
   659     TAlfWindowAttributes* attributes = NULL;
   667     TAlfWindowAttributes* attributes = NULL;
   660     TRAP_IGNORE(attributes = (TAlfWindowAttributes*)Bridge()->AppendVarDataL( sizeof(TAlfWindowAttributes), aIndex ))
   668     TRAP_IGNORE(attributes = (TAlfWindowAttributes*)Bridge()->AppendVarDataL( sizeof(TAlfWindowAttributes), aIndex ))
   661     *attributes = empty;
   669     if (attributes)
       
   670         {
       
   671         *attributes = empty;
       
   672         }
       
   673     else
       
   674         {
       
   675         CAlfWindow::ReportOOM();
       
   676         }
   662     return attributes;
   677     return attributes;
   663     }
   678     }
   664 
   679 
   665 // ---------------------------------------------------------------------------
   680 // ---------------------------------------------------------------------------
   666 // 
   681 // 
   669 TAlfWindowCommandBufferAttributes* CAlfWindowManager::CreateWindowCommandBufferAttributes(TInt& aIndex)
   684 TAlfWindowCommandBufferAttributes* CAlfWindowManager::CreateWindowCommandBufferAttributes(TInt& aIndex)
   670     {
   685     {
   671     TAlfWindowCommandBufferAttributes empty;    
   686     TAlfWindowCommandBufferAttributes empty;    
   672     TAlfWindowCommandBufferAttributes* windowCommandBuffer = NULL;    
   687     TAlfWindowCommandBufferAttributes* windowCommandBuffer = NULL;    
   673     TRAP_IGNORE(windowCommandBuffer = (TAlfWindowCommandBufferAttributes*)Bridge()->AppendVarDataL( sizeof(TAlfWindowCommandBufferAttributes), aIndex ))    
   688     TRAP_IGNORE(windowCommandBuffer = (TAlfWindowCommandBufferAttributes*)Bridge()->AppendVarDataL( sizeof(TAlfWindowCommandBufferAttributes), aIndex ))    
   674     *windowCommandBuffer = empty;
   689     if (windowCommandBuffer)
       
   690         {
       
   691         *windowCommandBuffer = empty;
       
   692         }
       
   693     else
       
   694         {
       
   695         CAlfWindow::ReportOOM();
       
   696         }
   675     return windowCommandBuffer;
   697     return windowCommandBuffer;
   676     }
   698     }
   677 
   699 
   678 
   700 
   679 void CAlfWindowManager::HandleClientExit(TThreadId aThreadId)
   701 void CAlfWindowManager::HandleClientExit(TThreadId aThreadId)