bool matches(final Widget otherWidget) => runtimeType == otherWidget.runtimeType && key == otherWidget.key;