The getVisible callback has no effect on Tabs with idMso when startFromScratch=true. Bug?
This is another issue that I bumped into when startFromScratch is set to true. What I wanted to do was to show/hide tabs based on Message Class. If my Message Class was IPM.Note.Custom then I wanted to just show the “My Tab” otherwise I wanted to show the “TabReadMessage”.
Why did I set the startFromScratch to true? I had to customize the Quick Access Toolbar(QAT) also. Below is what my Ribbon XML looks like:
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="https://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="true">
<tabs>
<tab id="MyTab" label="My Tab" getVisible="MyTab_OnGetVisible">
</tab>
<tab idMso="TabReadMessage" getVisible="TabReadMessage_OnGetVisible">
</tab>
</tabs>
</ribbon>
</customUI>
When I opened a message with the IPM.Note.Custom message class, my callbacks(MyTab_OnGetVisible,TabReadMessage_OnGetVisible) fire and I return True from the MyTab_OnGetVisible callback and False from the TabReadMessage_OnGetVisible callback. Things are good this point.
Now I open a message with the IPM.Note(regular mail message) message class, my callbacks fire and I return False from the MyTab_OnGetVisible callback and True from the TabReadMessage_OnGetVisible callback and expect to the “My Tab” hidden and the “TabReadMessage” visible.. Right?
To my surprise, the callbacks fires just fine but the “True” that I return from the TabReadMessage_OnGetVisible callback has no effect on the visibility of the tab and I am left with no tabs on the screen. Bug?
From what I know this bug has been fixed in Office 14 and a fix for Office 12 has been requested for.