82 #include "FreestyleEmailUiSearchListControl.h" |
82 #include "FreestyleEmailUiSearchListControl.h" |
83 #include "FreestyleEmailUiFileSystemInfo.h" |
83 #include "FreestyleEmailUiFileSystemInfo.h" |
84 #include "FreestyleEmailUiAppui.h" |
84 #include "FreestyleEmailUiAppui.h" |
85 #include "FreestyleEmailUi.hrh" |
85 #include "FreestyleEmailUi.hrh" |
86 #include "FreestyleEmailUiTextureManager.h" |
86 #include "FreestyleEmailUiTextureManager.h" |
87 #include "FreestyleEmailUiMailViewerVisualiser.h" |
|
88 #include "FreestyleEmailUiUtilities.h" |
87 #include "FreestyleEmailUiUtilities.h" |
89 #include "FreestyleEmailUiLiterals.h" |
88 #include "FreestyleEmailUiLiterals.h" |
90 #include "FreestyleEmailUiShortcutBinding.h" |
89 #include "FreestyleEmailUiShortcutBinding.h" |
91 #include "FreestyleEmailUiMsgDetailsVisualiser.h" |
90 #include "FreestyleEmailUiMsgDetailsVisualiser.h" |
92 #include "freestyleemailcenrephandler.h" |
91 #include "freestyleemailcenrephandler.h" |
152 iSearchListControl = CFreestyleEmailUiSearchListControl::NewL( *iEnv, this ); |
151 iSearchListControl = CFreestyleEmailUiSearchListControl::NewL( *iEnv, this ); |
153 iScreenAnchorLayout = CAlfAnchorLayout::AddNewL( *iSearchListControl ); |
152 iScreenAnchorLayout = CAlfAnchorLayout::AddNewL( *iSearchListControl ); |
154 iScreenAnchorLayout->SetFlags(EAlfVisualFlagAutomaticLocaleMirroringEnabled); |
153 iScreenAnchorLayout->SetFlags(EAlfVisualFlagAutomaticLocaleMirroringEnabled); |
155 SetSearchListLayoutAnchors(); |
154 SetSearchListLayoutAnchors(); |
156 |
155 |
157 // Create top bar layout |
156 |
158 iSearchTopBarLayout = CAlfDeckLayout::AddNewL( *iSearchListControl, iScreenAnchorLayout ); |
|
159 iBarBgVisual = CAlfImageVisual::AddNewL( *iSearchListControl, iSearchTopBarLayout ); |
|
160 /*<cmail> paltform layout changes to cmail |
157 /*<cmail> paltform layout changes to cmail |
161 TAlfTimedValue barBgTextureOpacity; |
158 TAlfTimedValue barBgTextureOpacity; |
162 barBgTextureOpacity.SetValueNow( 1 ); |
159 barBgTextureOpacity.SetValueNow( 1 ); |
163 iBarBgVisual->SetOpacity( barBgTextureOpacity ); |
160 iBarBgVisual->SetOpacity( barBgTextureOpacity ); |
164 CAlfTexture* barBgTexture = &iAppUi.FsTextureManager()->TextureByIndex( EMailListBarBgIcon ); |
161 CAlfTexture* barBgTexture = &iAppUi.FsTextureManager()->TextureByIndex( EMailListBarBgIcon ); |
505 { |
502 { |
506 // Highlighted mail is mail msg |
503 // Highlighted mail is mail msg |
507 aMenuPane->SetItemDimmed(EFsEmailUiCmdMailActions, EFalse); |
504 aMenuPane->SetItemDimmed(EFsEmailUiCmdMailActions, EFalse); |
508 aMenuPane->SetItemDimmed(EFsEmailUiCmdCalActions, ETrue); |
505 aMenuPane->SetItemDimmed(EFsEmailUiCmdCalActions, ETrue); |
509 } |
506 } |
510 aMenuPane->SetItemDimmed(EFsEmailUiCmdOpen, EFalse); |
507 |
|
508 // showing of mail-related options is dependent on focus |
|
509 // important for touch-only devices |
|
510 if ( IsFocusShown() ) |
|
511 { |
|
512 aMenuPane->SetItemDimmed(EFsEmailUiCmdOpen, EFalse); |
|
513 } |
|
514 else |
|
515 { |
|
516 aMenuPane->SetItemDimmed(EFsEmailUiCmdMore, ETrue); |
|
517 aMenuPane->SetItemDimmed(EFsEmailUiCmdMailActions, ETrue); |
|
518 aMenuPane->SetItemDimmed(EFsEmailUiCmdCalActions, ETrue); |
|
519 aMenuPane->SetItemDimmed(EFsEmailUiCmdOpen, ETrue); |
|
520 } |
|
521 |
|
522 // remove message reader support because of problems with reading HTML mails |
|
523 aMenuPane->SetItemDimmed(EFsEmailUiCmdReadEmail, ETrue); |
511 } |
524 } |
512 } |
525 } |
513 else |
526 else |
514 { |
527 { |
515 if ( aResourceId == R_FSEMAILUI_SEARCHLIST_MENUPANE ) |
528 if ( aResourceId == R_FSEMAILUI_SEARCHLIST_MENUPANE ) |
1112 ( aCommand == KErrCancel || |
1125 ( aCommand == KErrCancel || |
1113 aCommand == EFsEmailUiCmdActionsDelete || |
1126 aCommand == EFsEmailUiCmdActionsDelete || |
1114 aCommand == EFsEmailUiCmdMarkAsRead || |
1127 aCommand == EFsEmailUiCmdMarkAsRead || |
1115 aCommand == EFsEmailUiCmdMarkAsUnread || |
1128 aCommand == EFsEmailUiCmdMarkAsUnread || |
1116 aCommand == EFsEmailUiCmdActionsMove || |
1129 aCommand == EFsEmailUiCmdActionsMove || |
1117 aCommand == EFsEmailUiCmdMarkUnmarkToggle ) ) |
1130 aCommand == EFsEmailUiCmdMarkingModeFromPopUp ) ) |
1118 { |
1131 { |
1119 // We end up here if the user selects an option from the pop up menu |
1132 // We end up here if the user selects an option from the pop up menu |
1120 // or exits the menu by tapping outside of it's area. |
1133 // or exits the menu by tapping outside of it's area. |
1121 // Remove the focus from a list item if an item is focused. |
1134 // Remove the focus from a list item if an item is focused. |
1122 iStylusPopUpMenuVisible = EFalse; |
1135 iStylusPopUpMenuVisible = EFalse; |
1321 } |
1334 } |
1322 |
1335 |
1323 void CFSEmailUiSearchListVisualiser::SetSearchListLayoutAnchors() |
1336 void CFSEmailUiSearchListVisualiser::SetSearchListLayoutAnchors() |
1324 { |
1337 { |
1325 FUNC_LOG; |
1338 FUNC_LOG; |
1326 // Set anchors so that list leaves space for control bar |
1339 // Set anchors |
1327 |
1340 |
1328 // The anchor layout mirrors itself automatically when necessary. |
1341 // The anchor layout mirrors itself automatically when necessary. |
1329 // There's no need to mirror anything manually here. |
1342 // There's no need to mirror anything manually here. |
1330 |
1343 |
1331 // BAR BACGROUND IMAGE |
1344 // TEXT |
1332 TRect contBarRect = iAppUi.LayoutHandler()->GetControlBarRect(); |
1345 TRect textRect = iAppUi.LayoutHandler()->GetSearchListHeaderTextLayout().TextRect(); |
1333 TPoint& tl( contBarRect.iTl ); |
1346 TPoint tl = textRect.iTl; |
1334 iScreenAnchorLayout->SetAnchor(EAlfAnchorTopLeft, 0, |
1347 iScreenAnchorLayout->SetAnchor(EAlfAnchorTopLeft, 0, |
1335 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1348 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1336 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1349 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1337 TAlfTimedPoint( tl.iX, tl.iY )); |
1350 TAlfTimedPoint( tl.iX, tl.iY )); |
1338 TPoint& br( contBarRect.iBr ); |
1351 TPoint br = textRect.iBr; |
1339 iScreenAnchorLayout->SetAnchor(EAlfAnchorBottomRight, 0, |
1352 iScreenAnchorLayout->SetAnchor(EAlfAnchorBottomRight, 0, |
1340 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1353 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1341 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1354 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1342 TAlfTimedPoint( br.iX, br.iY )); |
1355 TAlfTimedPoint( br.iX, br.iY )); |
1343 |
1356 |
1344 // TEXT |
1357 TRect listRect = iAppUi.LayoutHandler()->GetListRect( ETrue ); |
1345 TRect textRect = iAppUi.LayoutHandler()->GetSearchListHeaderTextLayout().TextRect(); |
|
1346 tl = textRect.iTl; |
|
1347 iScreenAnchorLayout->SetAnchor(EAlfAnchorTopLeft, 1, |
1358 iScreenAnchorLayout->SetAnchor(EAlfAnchorTopLeft, 1, |
1348 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1359 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1349 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1360 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1350 TAlfTimedPoint( tl.iX, tl.iY )); |
1361 TAlfTimedPoint(listRect.iTl.iX, listRect.iTl.iY)); |
1351 br = textRect.iBr; |
|
1352 iScreenAnchorLayout->SetAnchor(EAlfAnchorBottomRight, 1, |
1362 iScreenAnchorLayout->SetAnchor(EAlfAnchorBottomRight, 1, |
1353 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
|
1354 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
|
1355 TAlfTimedPoint( br.iX, br.iY )); |
|
1356 |
|
1357 TRect listRect = iAppUi.LayoutHandler()->GetListRect( ETrue ); |
|
1358 iScreenAnchorLayout->SetAnchor(EAlfAnchorTopLeft, 2, |
|
1359 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
|
1360 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
|
1361 TAlfTimedPoint(listRect.iTl.iX, listRect.iTl.iY)); |
|
1362 iScreenAnchorLayout->SetAnchor(EAlfAnchorBottomRight, 2, |
|
1363 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1363 EAlfAnchorOriginLeft, EAlfAnchorOriginTop, |
1364 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1364 EAlfAnchorMetricAbsolute, EAlfAnchorMetricAbsolute, |
1365 TAlfTimedPoint(listRect.iBr.iX, listRect.iBr.iY)); |
1365 TAlfTimedPoint(listRect.iBr.iX, listRect.iBr.iY)); |
1366 } |
1366 } |
1367 |
1367 |