[Touch Diamond, MDA Compact IV General] ahirshfield:
Manual XML for Call History... (future proof & avoid missing 'menu' bug)

In this guide you will manually edit the 26948339_manila file to insert the required XML for Call History. This is the same method used to add other manilla tabs available in these forums.

This will then allow you to add multiple TF3D tabs at the same time (Call History Tab, Active Clock Icon, Custom Calendar, etc), decide their order yourself and most importantly use your own 26948339_manila file - from the rom on your device - and not some other version that may be from a different Manila version.

When people rely on the Call History from a cab file (for quick install) this 26948339_manila file may be from a different rom/Manila version and that is what is causing the missing 'Menu' pop-up in various tabs.

Use ActiveSync/Explorer to copy the above file from the /windows/ directory on your device to your desktop PC. After editing is complete you must copy the updated file back to your device into a different directory (e.g. My Documents), then use 'Total Commander' to move the file into the /windows/ directory, overwriting the original file. This is because Explorer is not capable of overwriting system/rom files. As long as Manila (TouchFlo3D) was built directly into the rom (i.e. not installed by .cab) all the original *_manila files will always be restorable by simply deleting any overwritten files using Total Commander.

So, the XML you need to add into 26948339_manila for Call History is as follows:

<Page Order="2" Name="callhistory.page" PackageName="HTC" Title="[[IDS_CALLLOGTITLE]]" ExternalScriptPath="HTC\Scripts\orangecalllogtransitions.luac">

<ComponentReference Name="page" Mode9Path="HTC\CallLog.mode9" Component="GizmoRoot" SmartComponent="true" />

<ComponentReference Name="icon_normal" Mode9Path="HTC\Icons.mode9" Component="People_CallHistory_Off" />

<ComponentReference Name="icon_selected" Mode9Path="HTC\Icons.mode9" Component="People_CallHistory_On" />

<ComponentReference Name="icon_preview" Mode9Path="HTC\Icons.mode9" Component="People_CallHistory_Preview" />

<ComponentReference Name="icon_notification" Mode9Path="HTC\Icons.mode9" Component="Notification_People_CallHistory" />

</Page>​

The above will add the tab page (just change the page order value as required), but you also need to insert the following XML in order to control the custom Dialogues and Options within this new tab.

I have included the top (<DialogManager>) and bottom lines (<SimpleDialog Name="settings.dialog" PackageName="HTC">) which should already be in your 26948339_manila file for you to easily identify where to insert this code between them.

<DialogManager>

<DialogGroup Name="Dialogs">

<SimpleDialog Name="CallLogEmpty.dialog" PackageName="HTC">

<ComponentReference Name="dialogItem" Mode9Path="HTC\simpledialog.mode9" Component="SimpleDialog" SmartComponent="true" />

<DialogItem Name="Menu">

<DialogItem Name="Filter" Title="[[IDS_CALLOG_FILTER]]">

<DialogItem Name="All" Title="[[IDS_FILTER_ALL]]"/>

<DialogItem Name="Incoming" Title="[[IDS_FILTER_INCOMING]]" />

<DialogItem Name="Outgoing" Title="[[IDS_FILTER_OUTGOING]]"/>

<DialogItem Name="Missed" Title="[[IDS_FILTER_MISSED]]"/>

</DialogItem>

</DialogItem>

</SimpleDialog>

<SimpleDialog Name="CallLog_SaveContact.dialog" PackageName="HTC">

<ComponentReference Name="dialogItem" Mode9Path="HTC\simpledialog.mode9" Component="SimpleDialog" SmartComponent="true" />

<DialogItem Name="Menu">

<DialogItem Name="Reply" Title="[[IDS_CALLOG_REPLY]]">

<DialogItem Name="Via SMS" Title="[[IDS_CALLOG_VIASMS]]" />

<DialogItem Name="Via Email" Title="[[IDS_CALLOG_VIAEMAIL]]" />

</DialogItem>

<DialogItem Name="Filter" Title="[[IDS_CALLOG_FILTER]]">

<DialogItem Name="All" Title="[[IDS_FILTER_ALL]]"/>

<DialogItem Name="Incoming" Title="[[IDS_FILTER_INCOMING]]" />

<DialogItem Name="Outgoing" Title="[[IDS_FILTER_OUTGOING]]"/>

<DialogItem Name="Missed" Title="[[IDS_FILTER_MISSED]]"/>

</DialogItem>

<DialogItem Name="Save To Contacts" Title="[[IDS_CALLOG_SAVETOCONTACTS]]" />

<DialogItem Name="Delete" Title="[[IDS_CALLOG_DELETE]]"/>

<DialogItem Name="Delete All Calls" Title="[[IDS_CALLOG_DELETEALLCALLS]]"/>

</DialogItem>

</SimpleDialog>

<SimpleDialog Name="CallLog_OpenContact.dialog" PackageName="HTC">

<ComponentReference Name="dialogItem" Mode9Path="HTC\simpledialog.mode9" Component="SimpleDialog" SmartComponent="true" />

<DialogItem Name="Menu">

<DialogItem Name="Reply" Title="[[IDS_CALLOG_REPLY]]">

<DialogItem Name="Via SMS" Title="[[IDS_CALLOG_VIASMS]]" />

<DialogItem Name="Via Email" Title="[[IDS_CALLOG_VIAEMAIL]]" />

</DialogItem>

<DialogItem Name="Filter" Title="[[IDS_CALLOG_FILTER]]">

<DialogItem Name="All" Title="[[IDS_FILTER_ALL]]"/>

<DialogItem Name="Incoming" Title="[[IDS_FILTER_INCOMING]]" />

<DialogItem Name="Outgoing" Title="[[IDS_FILTER_OUTGOING]]"/>

<DialogItem Name="Missed" Title="[[IDS_FILTER_MISSED]]"/>

</DialogItem>

<DialogItem Name="Open Contact" Title="[[IDS_CALLOG_OPENCONTACT]]" />

<DialogItem Name="Delete" Title="[[IDS_CALLOG_DELETE]]"/>

<DialogItem Name="Delete All Calls" Title="[[IDS_CALLOG_DELETEALLCALLS]]"/>

</DialogItem>

</SimpleDialog>

<SimpleDialog Name="CallLog.dialog" PackageName="HTC">

<ComponentReference Name="dialogItem" Mode9Path="HTC\simpledialog.mode9" Component="SimpleDialog" SmartComponent="true" />

<DialogItem Name="Menu">

<DialogItem Name="Reply" Title="[[IDS_CALLOG_REPLY]]">

<DialogItem Name="Via SMS" Title="[[IDS_CALLOG_VIASMS]]" />

<DialogItem Name="Via Email" Title="[[IDS_CALLOG_VIAEMAIL]]" />

</DialogItem>

<DialogItem Name="Filter" Title="[[IDS_CALLOG_FILTER]]">

<DialogItem Name="All" Title="[[IDS_FILTER_ALL]]"/>

<DialogItem Name="Incoming" Title="[[IDS_FILTER_INCOMING]]" />

<DialogItem Name="Outgoing" Title="[[IDS_FILTER_OUTGOING]]"/>

<DialogItem Name="Missed" Title="[[IDS_FILTER_MISSED]]"/>

</DialogItem>

<DialogItem Name="Delete" Title="[[IDS_CALLOG_DELETE]]"/>

<DialogItem Name="Delete All Calls" Title="[[IDS_CALLOG_DELETEALLCALLS]]"/>

</DialogItem>

</SimpleDialog>

<SimpleDialog Name="settings.dialog" PackageName="HTC">​

The easiest way to identify required changes like this is to download one of the most recent "Call History" cab/zip files, extract the 26948339_manila file and use WinMerge (www.winmerge.org) to compare the contents with your own rom's 26948339_manila file.

Attached to this post is the most recent Call History files, as you still need to copy the 1d1ee632_manila file to your /Windows/ directory as this script page probably won't exist in your rom if you don't have Call History already. Don't copy the included 26948339_manila file but you can use it with WinMerge to check for differences with your own file.

With this tool you can easily identify differences, then select which changes you want to insert into your own file. This makes it easier to copy any required changes over to the next fresh 26948339_manila file, if and when you flash to a new rom, without using you previous versions file.

I should point out that the forum posts sometimes add spaces into the text. In the above xml "orangecalllogtransitions.luac" should appear as one word but the forum adds a space in there for some reason.

For this reason, and the lack of XML-tabulated formatting in the posts, I especially recommend not simply copy/pasting from here, but rather use the attachment together with your own 26948339_manila file and use WinMerge to compare and edit them.

I further explain the differences one may encounter between Manila versions in greater detail here: http://xdaforums.com/showthread.php?p=2650937#post2650937

Hope this has all made sense!

Best regards and good luck,

Adam R. Hirshfield

T-Mobile UK Ltd.

Core Networks