So the answer is... use get_art in transition:
local snap = fe.add_artwork("snap", 50, 50, 320, 240)
local flyer = fe.add_artwork("snap", 300, 300, 320, 240)
fe.add_transition_callback(this, "on_transition")
function on_transition(ttype, var, ttime) {
if ( ttype == Transition.StartLayout || ttype == Transition.FromOldSelection || ttype == Transition.ToNewList )
flyer.file_name = fe.get_art("flyer", 0)
}