header handles its own edit state