bool inSelection(Selection? selection) { return selection != null && selection.start.path <= this && this <= selection.end.path; }