var setBackgrounds = function(evt) {
    var view = evt.event_data.data.sender;
    if (view.overlayId) {
        var incoming = evt.event_data.data.incomingView;
        if (incoming) {
            if (incoming.id.match('performance')) {
                view.setOverlayShadowImageSrc('/safari/images/performance-overlay-20090217.png');
            } else {
                view.setOverlayShadowImageSrc('/safari/images/overlay-gallery-20090217.png');
            }
        }
    }
}

var resetGalleryTriggers = function(evt) {
    var triggers = $$('.overlaypanel a.active.'+evt.event_data.data.sender.triggerClassName);
    if (triggers.length > 2) {
        triggers.each(function(trigger) {
            trigger.removeClassName('active');
        });

        var incoming = evt.event_data.data.incomingView;
        incoming.triggers().each(function(trigger) {
            trigger.addClassName('active');
        });
    }
}

Event.onDOMReady(function() {

    Event.Listener.listenForEvent(AC.ViewMaster, 'ViewMasterWillShowNotification', false, setBackgrounds);
    Event.Listener.listenForEvent(AC.ViewMaster, 'ViewMasterDidShowNotification', false, resetGalleryTriggers);

    new AC.ViewMaster.Viewer(null, 'overlay-topsites-swap', 'overlay-topsites', { parentSectionId:'overlay-topsites', parentTriggerClassName:'OverlayPanel', silentTriggers:true });
    new AC.ViewMaster.Viewer(null, 'overlay-windows-swap', 'overlay-windows', { parentSectionId:'overlay-windows', parentTriggerClassName:'OverlayPanel', silentTriggers:true });
    new AC.ViewMaster.Viewer(null, 'overlay-devtools-swap', 'overlay-devtools', { parentSectionId:'overlay-devtools', parentTriggerClassName:'OverlayPanel', silentTriggers:true });
    new AC.ViewMaster.Viewer(null, 'overlay-design-swap', 'overlay-design', { parentSectionId:'overlay-design', parentTriggerClassName:'OverlayPanel', silentTriggers:true });
    new AC.ViewMaster.Viewer(null, 'overlay-features-swap', 'overlay-features', { parentSectionId:'overlay-features', parentTriggerClassName:'OverlayPanel', silentTriggers:true });
});
