Uploaded image for project: 'MyFaces Tomahawk'
  1. MyFaces Tomahawk
  2. TOMAHAWK-1607

focus cannot locate targets inside UIData elements

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.1.6
    • 1.1.15-SNAPSHOT
    • Focus
    • None

    Description

      focus cannot generate correct clientIds for targets inside UIData elements because UIComponent.findComponent() does not preserve row index information.

      I noticed this in my legacy 1.1.6 app, but I suspect after glancing at the latest Tomahawk 1.1.9 code that the problem still persists.

      However, I don't know how much focus is really used anymore – it never made it out of the sandbox, and ajax makes doing much of this a lot easier now.

      I created a workaround for focus by reimplementing a local version of findComponent() in a custom focus subclass and this workaround will work, except in those cases where a parent component had customized findComponent() behavior which I will attach to this issue.

      A more modern solution would likely be to dump findComponent for invokeOnComponent which correctly sets the rowIndex.

      Attachments

        1. ExtendedHtmlFocus.java
          7 kB
          Mike Kienenberger

        Issue Links

          Activity

            People

              mkienenb Mike Kienenberger
              mkienenb Mike Kienenberger
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: