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