FLUID-4235: The global UI Enhancer should store itself in the staticEnvironment so that it can be addressed via IoC

Metadata

Source
FLUID-4235
Type
Improvement
Priority
Critical
Status
Closed
Resolution
Fixed
Assignee
Michelle D'Souza
Reporter
Colin Clark
Created
2011-05-13T18:32:12.778-0400
Updated
2011-06-07T16:22:11.054-0400
Versions
  1. 1.3.1
Fixed Versions
  1. 1.4
Component
  1. UIEnhancer
  2. UI Options

Description

At the moment, the UI Enhancer stores itself on its container using jQuery.data(). In order to find the "global UI Enhancer," UI Options looks for it on the Document element.

There are two problems with this:

1. Anyone who wants to use the global UI Enhancer has to write code to do so
2. UI Options needn't be aware of UI Enhancer's container--it's an implementation detail

Instead, the global, page-level UI Enhancer should be stored in the staticEnvironment, where it will be easily addressable via IoC.

Comments

  • Colin Clark commented 2011-05-13T18:33:33.236-0400

    The symptoms Anastasia reports in FLUID-4205 are due to the brittle use of jQuery.data() as an API for discovering the global UI Enhancer.

  • Justin Obara commented 2011-05-17T09:40:24.209-0400

    Bug Parade Infusion

  • Michelle D'Souza commented 2011-05-26T14:03:30.541-0400

    Pull request issued: https://github.com/fluid-project/infusion/pull/55

  • Michelle D'Souza commented 2011-05-31T15:19:30.391-0400

    This was merged into the merge branch FLUID-4267, at 14633ff7b66ff8b98df9afad96fe2d8d14f2e811