Incorporating Jeff's off-canvas changes from other branch