add ManualImageAction, cleanup Widget