mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 17:55:50 +00:00
Bug 1090874 - Avoid always re-creating the node when editing a tagname in the markup-view; r=pbrosset
This commit is contained in:
parent
0ff15d35ae
commit
d413eb7ba6
@ -2317,7 +2317,7 @@ ElementEditor.prototype = {
|
||||
* Called when the tag name editor has is done editing.
|
||||
*/
|
||||
onTagEdit: function(newTagName, isCommit) {
|
||||
if (!isCommit || newTagName == this.node.tagName ||
|
||||
if (!isCommit || newTagName.toLowerCase() === this.node.tagName.toLowerCase() ||
|
||||
!("editTagName" in this.markup.walker)) {
|
||||
return;
|
||||
}
|
||||
|
@ -81,6 +81,7 @@ skip-if = e10s # Bug 1036409 - The last selected node isn't reselected
|
||||
[browser_markupview_tag_edit_08.js]
|
||||
[browser_markupview_tag_edit_09.js]
|
||||
[browser_markupview_tag_edit_10.js]
|
||||
[browser_markupview_tag_edit_11.js]
|
||||
[browser_markupview_textcontent_edit_01.js]
|
||||
[browser_markupview_toggle_01.js]
|
||||
[browser_markupview_toggle_02.js]
|
||||
|
@ -0,0 +1,36 @@
|
||||
/* vim: set ts=2 et sw=2 tw=80: */
|
||||
/* Any copyright is dedicated to the Public Domain.
|
||||
http://creativecommons.org/publicdomain/zero/1.0/ */
|
||||
|
||||
"use strict";
|
||||
|
||||
// Bug 1090874 - Tests that a node is not recreated when it's tagname editor
|
||||
// is blurred and no changes were done.
|
||||
|
||||
const TEST_URL = "data:text/html;charset=utf-8,<div></div>";
|
||||
|
||||
let test = asyncTest(function*() {
|
||||
let isEditTagNameCalled = false;
|
||||
|
||||
let {toolbox, inspector} = yield addTab(TEST_URL).then(openInspector);
|
||||
|
||||
// Overriding the editTagName walkerActor method here to check that it isn't
|
||||
// called when blurring the tagname field.
|
||||
inspector.walker.editTagName = function() { isEditTagNameCalled = true; }
|
||||
|
||||
yield selectNode("div", inspector);
|
||||
let container = yield getContainerForSelector("div", inspector);
|
||||
let tagEditor = container.editor.tag;
|
||||
|
||||
info("Blurring the tagname field");
|
||||
tagEditor.blur();
|
||||
is(isEditTagNameCalled, false, "The editTagName method wasn't called");
|
||||
|
||||
info("Updating the tagname to uppercase");
|
||||
setEditableFieldValue(tagEditor, "DIV", inspector);
|
||||
is(isEditTagNameCalled, false, "The editTagName method wasn't called");
|
||||
|
||||
info("Updating the tagname to a different value");
|
||||
setEditableFieldValue(tagEditor, "SPAN", inspector);
|
||||
is(isEditTagNameCalled, true, "The editTagName method was called");
|
||||
});
|
Loading…
Reference in New Issue
Block a user