From 874adf173419b0c1faf25669403ab842d7780674 Mon Sep 17 00:00:00 2001 From: Dave Long <dave@longwaveconsulting.com> Date: Fri, 10 Nov 2023 14:19:53 +0000 Subject: [PATCH] Issue #3397742 by lauriii, smustgrave: Improve machine name AJAX focus handling integration --- core/lib/Drupal/Core/Render/Element/RenderElement.php | 2 +- core/misc/machine-name.js | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/core/lib/Drupal/Core/Render/Element/RenderElement.php b/core/lib/Drupal/Core/Render/Element/RenderElement.php index 249f732ac245..bc7621557f9d 100644 --- a/core/lib/Drupal/Core/Render/Element/RenderElement.php +++ b/core/lib/Drupal/Core/Render/Element/RenderElement.php @@ -338,7 +338,7 @@ public static function preRenderAjaxForm($element) { // event. This behavior can be explicitly overridden if needed. if (!isset($element['#ajax']['refocus-blur'])) { // The change event on text input types is triggered on blur. - $text_types = ['password', 'textfield', 'number', 'tel', 'textarea']; + $text_types = ['password', 'textfield', 'number', 'tel', 'textarea', 'machine_name']; if ($element['#ajax']['event'] === 'blur' || ($element['#ajax']['event'] === 'change' && in_array($element['#type'], $text_types))) { $element['#attributes']['data-refocus-blur'] = "true"; } diff --git a/core/misc/machine-name.js b/core/misc/machine-name.js index b4e06d595c15..28f1b39ddf49 100644 --- a/core/misc/machine-name.js +++ b/core/misc/machine-name.js @@ -205,7 +205,13 @@ // If it is editable, append an edit link. const $link = $( '<span class="admin-link"><button type="button" class="link" aria-label="' - .concat(Drupal.t('Edit machine name'), '">') + .concat( + Drupal.t('Edit machine name'), + '" data-drupal-selector="'.concat( + $target.data('drupal-selector'), + ), + '-machine-name-admin-link">', + ) .concat(Drupal.t('Edit'), '</button></span>'), ) .on('click', eventData, clickEditHandler) -- GitLab