From 625d80d1e82cbbd5d874be0a75efd610bd71ad69 Mon Sep 17 00:00:00 2001 From: Anastasia Cheetham Date: Wed, 18 Jul 2012 10:35:02 -0400 Subject: [PATCH] FLUID-4725: Update bindHighlightHander API to remove dependency on 'that' --- .../components/inlineEdit/js/InlineEdit.js | 16 +++++++++------- .../inlineEdit/js/InlineEditTests.js | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/webapp/components/inlineEdit/js/InlineEdit.js b/src/webapp/components/inlineEdit/js/InlineEdit.js index f707c9acd4..cf393b3ad3 100644 --- a/src/webapp/components/inlineEdit/js/InlineEdit.js +++ b/src/webapp/components/inlineEdit/js/InlineEdit.js @@ -647,19 +647,21 @@ var fluid_1_5 = fluid_1_5 || {}; /** * Bind keyboard focus and blur event handlers to an element * + * Note: This function is an unsupported, NON-API function + * * @param {Object} element The element to which the event handlers are bound * @param {Object} displayModeRenderer The display mode container * @param {Ojbect} styles The default styling for the display mode container on mouse hover */ - fluid.inlineEdit.bindHighlightHandler = function (element, displayModeRenderer, that) { + fluid.inlineEdit.bindHighlightHandler = function (element, displayModeRenderer, styles, strings, model) { element = $(element); var makeFocusSwitcher = function (focusOn) { return function () { - displayModeRenderer.toggleClass(that.options.styles.focus, focusOn); - displayModeRenderer.toggleClass(that.options.styles.invitation, focusOn); - if (!that.model || !that.model.value) { - displayModeRenderer.prevObject.text(focusOn ? that.options.strings.defaultFocussedViewText : that.options.strings.defaultViewText); + displayModeRenderer.toggleClass(styles.focus, focusOn); + displayModeRenderer.toggleClass(styles.invitation, focusOn); + if (!model || !model.value) { + displayModeRenderer.prevObject.text(focusOn ? strings.defaultFocussedViewText : strings.defaultViewText); } }; }; @@ -737,8 +739,8 @@ var fluid_1_5 = fluid_1_5 || {}; fluid.inlineEdit.bindMouseHandlers(that.viewEl, that.edit); fluid.inlineEdit.bindMouseHandlers(that.textEditButton, that.edit); fluid.inlineEdit.bindKeyboardHandlers(that.textEditButton, that.edit); - fluid.inlineEdit.bindHighlightHandler(that.viewEl, displayModeContainer, that); - fluid.inlineEdit.bindHighlightHandler(that.textEditButton, displayModeContainer, that); + fluid.inlineEdit.bindHighlightHandler(that.viewEl, displayModeContainer, that.options.styles, that.options.strings, that.model); + fluid.inlineEdit.bindHighlightHandler(that.textEditButton, displayModeContainer, that.options.styles, that.options.strings, that.model); }; /** diff --git a/src/webapp/tests/component-tests/inlineEdit/js/InlineEditTests.js b/src/webapp/tests/component-tests/inlineEdit/js/InlineEditTests.js index f22d472d36..ec7a39c5c7 100644 --- a/src/webapp/tests/component-tests/inlineEdit/js/InlineEditTests.js +++ b/src/webapp/tests/component-tests/inlineEdit/js/InlineEditTests.js @@ -841,7 +841,7 @@ https://github.com/fluid-project/infusion/raw/master/Infusion-LICENSE.txt // Add event handlers. fluid.inlineEdit.bindHoverHandlers(displayModeRenderer, styles.invitation); fluid.inlineEdit.bindMouseHandlers(that.viewEl, that.edit); - fluid.inlineEdit.bindHighlightHandler(that.viewEl, displayModeRenderer, that); + fluid.inlineEdit.bindHighlightHandler(that.viewEl, displayModeRenderer, that.options.styles, that.options.strings, that.model); return displayModeRenderer; };