Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-9383

Action system should support Access Key bindings



    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.6
    • Component/s: Seam / JSF UI
    • Impact type:
      API added


      Actions are mainly rendered as links, but so far we don't have a way to assign key binding to have keyboard shortcuts.

      Keyboard shortcurts are clearly not used by all types of users, but for advanced users that spend several hours per day in front of a WebApp this can really make sense to provide such a feature.

      This is especially true for specific business app that may need to do binding on the most usual actions.

      HTML provides a native system to bind keyboard shortcuts to a link : the accesskey attribute.

      Using custom JavaScript to intercept keybord events would probably give us more power :

      • complex key combinations (like the Konami code already included)
      • per-user configurable key bindings

      But as a first step, I guess we can start with the standard accesskey system :

      • that is supported by all browsers without requiring JS
      • that is supported by most JSF tags that generates links

      This means that at least for a first step, we can simply :

      • add the accessKey attribute to the Action descriptor
      • update actions template to fill the accesskey attribute according to related action

      Of course, this won't prevent from having overlapped keyboard bindings, but I think we can not easily solve this.

      An important point is that keyboard binding is not visible from the Web UI : you have to be aware of it and "know the keys".
      Here, it think we must do a simple JQuery stuff that will display all accessKey next to their target link.


          Issue Links



              • Votes:
                0 Vote for this issue
                2 Start watching this issue


                • Created:


                  Error rendering 'com.pagerduty.jira-server-plugin:PagerDuty'. Please contact your Jira administrators.