diff -u b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php --- b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php +++ b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php @@ -56,6 +56,10 @@ $properties = $this->getProperties(); if (isset($properties['format'])) { $format = $this->get('format')->getValue(); + + if ($format === filter_default_format()) { + $format = NULL; + } } return ($value === NULL || $value === '') && ($format === NULL || $format === ''); } only in patch2: unchanged: --- a/core/modules/field/tests/src/Functional/String/StringFieldTest.php +++ b/core/modules/field/tests/src/Functional/String/StringFieldTest.php @@ -94,7 +94,7 @@ public function _testTextfieldWidgets($field_type, $widget_type) { // Display creation form. $this->drupalGet('entity_test/add'); $this->assertSession()->fieldValueEquals("{$field_name}[0][value]", ''); - $this->assertSession()->fieldNotExists("{$field_name}[0][format]"); + $this->assertSession()->fieldValueEquals("{$field_name}[0][format]", 'filtered_html'); $this->assertSession()->responseContains(new FormattableMarkup('placeholder="A placeholder on @widget_type"', ['@widget_type' => $widget_type])); // Submit with some value.