Index: /Users/team/fluid-repos/FLUID-755/src/webapp/fluid-components/js/fluid/InlineEdit.js =================================================================== --- /Users/team/fluid-repos/FLUID-755/src/webapp/fluid-components/js/fluid/InlineEdit.js (revision 5221) +++ /Users/team/fluid-repos/FLUID-755/src/webapp/fluid-components/js/fluid/InlineEdit.js (working copy) @@ -41,13 +41,15 @@ text.show(); } - function finish(editContainer, editField, text, finishedFn, invitationText) { + function finish(editContainer, editField, text, finishedFn, invitationText, invitationTextStyle) { finishedFn(editField[0], text[0]); - var editVal = editField.val(); + var editVal = editField.val(); if (!editVal) { text.text(invitationText); + text.addClass(invitationTextStyle); } else { text.text(editVal); + text.removeClass(invitationTextStyle); } view(editContainer, text); text.focus(); @@ -94,7 +96,7 @@ text.activatable(editHandler(text, editContainer, editField, styles.invitation, styles.focus, paddings, invitationText, selectOnEdit)); } - function bindEditFinish(editContainer, editField, text, finishedFn, invitationText) { + function bindEditFinish(editContainer, editField, text, finishedFn, invitationText, invitationTextStyle) { var finishHandler = function (evt) { // Fix for handling arrow key presses see FLUID-760 var code = (evt.keyCode ? evt.keyCode : (evt.which ? evt.which : 0)); @@ -102,7 +104,7 @@ return true; } - finish(editContainer, editField, text, finishedFn, invitationText); + finish(editContainer, editField, text, finishedFn, invitationText, invitationTextStyle); return false; }; @@ -109,9 +111,9 @@ editContainer.keypress(finishHandler); } - function bindBlurHandler(editContainer, editField, text, finishedFn) { + function bindBlurHandler(editContainer, editField, text, finishedFn, invitationText, invitationTextStyle) { var blurHandler = function (evt) { - finish(editContainer, editField, text, finishedFn); + finish(editContainer, editField, text, finishedFn, invitationText, invitationTextStyle); return false; }; @@ -138,6 +140,7 @@ var displayText = instance.text.text(); if (!displayText) { instance.text.text(instance.invitationText); + instance.text.addClass(instance.styles.invitationText); } // If an edit container is found in the markup, use it. Otherwise generate one based on the view text. @@ -196,8 +199,8 @@ // Add event handlers. mouse(this.text, this.editContainer, this.editField, this.styles, this.paddings, this.finishedEditing, this.invitationText, options.selectOnEdit); keyNav(this.text, this.editContainer, this.editField, this.styles, this.paddings, this.invitationText, options.selectOnEdit); - bindEditFinish(this.editContainer, this.editField, this.text, this.finishedEditing, this.invitationText); - bindBlurHandler(this.editContainer, this.editField, this.text, this.finishedEditing); + bindEditFinish(this.editContainer, this.editField, this.text, this.finishedEditing, this.invitationText, this.styles.invitationText); + bindBlurHandler(this.editContainer, this.editField, this.text, this.finishedEditing, this.invitationText, this.styles.invitationText); // Add ARIA support. aria(this.text, this.editContainer); @@ -211,7 +214,7 @@ }; fluid.InlineEdit.prototype.finish = function () { - finish(this.editContainer, this.editField, this.text, this.finishedEditing, this.invitationText); + finish(this.editContainer, this.editField, this.text, this.finishedEditing, this.invitationText, this.styles.invitationText); }; fluid.InlineEdit.prototype.defaults = { @@ -223,6 +226,7 @@ styles: { invitation: "invitation", + invitationText: "invitation-text", focus: "focus" }, Index: /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/js/InlineEditTests.js =================================================================== --- /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/js/InlineEditTests.js (revision 5221) +++ /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/js/InlineEditTests.js (working copy) @@ -79,7 +79,7 @@ }); inlineEditTests.test("Invitation text (Default)", function () { - jqUnit.expect(5); + jqUnit.expect(8); var display = $("#empty-display"); jqUnit.assertEquals("Before initialization of empty display, display is empty", "", display.text()); @@ -85,6 +85,7 @@ jqUnit.assertEquals("Before initialization of empty display, display is empty", "", display.text()); var inlineEditor = new fluid.InlineEdit("empty-inline-edit"); jqUnit.assertEquals("After initialization of empty display, display has invitation text: ", fluid.InlineEdit.prototype.defaults.invitationText, display.text()); + jqUnit.assertTrue("Invitation text has invitation text style", display.hasClass(inlineEditor.styles.invitationText)); var testText = "This is test text."; var edit = $("#empty-inline-edit-edit"); @@ -93,6 +94,7 @@ edit.attr("value", testText); inlineEditor.finish(); jqUnit.assertEquals("After editing the field, display should have test text ", testText, display.text()); + jqUnit.assertFalse("Text text shouldn't have invitation text style", display.hasClass(inlineEditor.styles.invitationText)); inlineEditor.edit(); edit.attr("value", ""); @@ -98,6 +100,7 @@ edit.attr("value", ""); inlineEditor.finish(); jqUnit.assertEquals("After clearing the field, display should have invitation text again: ", fluid.InlineEdit.prototype.defaults.invitationText, display.text()); + jqUnit.assertTrue("Invitation text has invitation text style", display.hasClass(inlineEditor.styles.invitationText)); }); Index: /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.css =================================================================== --- /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.css (revision 5221) +++ /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.css (working copy) @@ -10,6 +10,9 @@ background-color: #FFECB3; } +.invitation-text { + color: #999999; +} .focus { border: 2px solid #777777; } Index: /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.html =================================================================== --- /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.html (revision 5221) +++ /Users/team/fluid-repos/FLUID-755/src/webapp/tests/fluid-tests/manual/inline-edit/InlineEdit.html (working copy) @@ -50,7 +50,9 @@ These edit fields are all set up with a single - function call. + function call + and with + selectOnEdit true.