equal
deleted
inserted
replaced
83 CWindowGc& gc = SystemGc(); |
83 CWindowGc& gc = SystemGc(); |
84 |
84 |
85 if ( iShowPopup ) |
85 if ( iShowPopup ) |
86 { |
86 { |
87 //layout is extended by popup |
87 //layout is extended by popup |
88 gc.SetClippingRect( iLayoutClipRect ); |
88 TRect rect = aRect; |
89 gc.BitBlt( aRect.iTl, iBitmap, aRect ); |
89 rect.Intersection( iLayoutClipRect ); |
|
90 TPoint pos = rect.iTl - iLayoutClipRect.iTl; |
|
91 gc.BitBlt( pos, iBitmap, rect ); |
90 // Add to fix NGA refresh problem |
92 // Add to fix NGA refresh problem |
91 CCoeEnv::Static()->WsSession().Flush(); |
93 CCoeEnv::Static()->WsSession().Flush(); |
92 CCoeEnv::Static()->WsSession().Finish(); |
94 CCoeEnv::Static()->WsSession().Finish(); |
93 return; |
95 return; |
94 } |
96 } |
239 } |
241 } |
240 |
242 |
241 |
243 |
242 void CPenUiWndCtrl::ShowPopup( const TRect& aRectInScreen, const TRect& aRectInLayout, const TRect& aLayoutTrimRect ) |
244 void CPenUiWndCtrl::ShowPopup( const TRect& aRectInScreen, const TRect& aRectInLayout, const TRect& aLayoutTrimRect ) |
243 { |
245 { |
|
246 TPoint offset = aLayoutTrimRect.iTl; |
|
247 offset += Position(); |
|
248 this->SetPosition( offset ); |
|
249 this->SetSize( aLayoutTrimRect.Size() ); |
|
250 |
244 iPopupWnd->PopUp( aRectInScreen, aRectInLayout ); |
251 iPopupWnd->PopUp( aRectInScreen, aRectInLayout ); |
245 iLayoutClipRect = aLayoutTrimRect; |
252 iLayoutClipRect = aLayoutTrimRect; |
246 iShowPopup = ETrue; |
253 iShowPopup = ETrue; |
247 } |
254 } |
248 |
255 |