We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

      1. Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
      2. Breaking form submission, as it is hardwired for a specific page structure This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

      Target features for "phase 1"

      (All features build on #1)

      1. Version 1 of a JavaScript API for config forms that can be used as a foundation on which to build all other config page UX improvements. This will hopefully help compensate for the fact that there is no structure within the markup/DOM. See config/table-metadata.js.
      2. Tabbed sections. Uses the above config forms API. See config/tabbar.js. Yes, can try other things (accordions etc) in a future iteration.
      3. Config finder. Find text across the different sections, only showing the user those sections that contain the text.
      4. Remember last active section. Remember the last section the user was on when last configuring the Job e.g. if they were on Build Triggers, bring them back there immediately on next configure of that Job.
      5. Toggle classic config view on/off. Allow people to opt-out and revert back to the "classic" configuration view.

          [JENKINS-32357] Better config page navigation - phase 1

          Tom FENNELLY created issue -
          Tom FENNELLY made changes -
          Epic Link New: JENKINS-31156 [ 165812 ]
          Tom FENNELLY made changes -
          Issue Type Original: Improvement [ 4 ] New: Story [ 10002 ]
          Tom FENNELLY made changes -
          Summary Original: Better config page navigation New: Better config page navigation - phase 1
          Tom FENNELLY made changes -
          Issue Type Original: Story [ 10002 ] New: Epic [ 10001 ]
          Tom FENNELLY made changes -
          Epic Link Original: JENKINS-31156 [ 165812 ]
          Tom FENNELLY made changes -
          Issue Type Original: Epic [ 10001 ] New: Story [ 10002 ]
          Tom FENNELLY made changes -
          Description Original: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

          When doing the ACE Editor some time ago, I also played with another approach to this problem that did not involve changes to the page structure and so, in theory, should not have the above negative side effects.

          Here's a short video: https://youtu.be/Kup043PhN38

          NOTE: This is a quick hack and would still require work ... I really only addressed the issue of adding section tabs that make navigating the config a bit/lot easier.

          Code (if you want to take it for a spin):
          * https://github.com/tfennelly/jenkins-js-widgets (you must build this locally first)
          * https://github.com/tfennelly/workflow-plugin/tree/with-config-tabbar (workflow plugin branch that applies the tabs to the workflow config page - yes, it would be done globally)
          New: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

          When doing the ACE Editor some time ago, I also played with another approach to this problem that did not involve changes to the page structure and so, in theory, should not have the above negative side effects.

          Here's a short video: https://youtu.be/Kup043PhN38

          NOTE: This is a quick hack and would still require work ... I really only addressed the issue of adding section tabs that make navigating the config a bit/lot easier.

          Code (if you want to take it for a spin):
          * https://github.com/tfennelly/jenkins-js-widgets (you must build this locally first)
          * https://github.com/tfennelly/workflow-plugin/tree/with-config-tabbar (workflow plugin branch that applies the tabs to the workflow config page - yes, it would be done globally)

          Tom FENNELLY made changes -
          Description Original: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

          When doing the ACE Editor some time ago, I also played with another approach to this problem that did not involve changes to the page structure and so, in theory, should not have the above negative side effects.

          Here's a short video: https://youtu.be/Kup043PhN38

          NOTE: This is a quick hack and would still require work ... I really only addressed the issue of adding section tabs that make navigating the config a bit/lot easier.

          Code (if you want to take it for a spin):
          * https://github.com/tfennelly/jenkins-js-widgets (you must build this locally first)
          * https://github.com/tfennelly/workflow-plugin/tree/with-config-tabbar (workflow plugin branch that applies the tabs to the workflow config page - yes, it would be done globally)

          New: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

          See comments.
          Tom FENNELLY made changes -
          Description Original: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.

          See comments.
          New: We've been talking about what we can do wrt config page cleanups for Jenkins 2.x. One approach we were looking at was to change the config page structure (change the actual DOM). Doing this is not trivial for a few reasons ...

          # Breaking the UI for plugins that rely on the current structure. Imo, this can not be fixed easily and should not be hand-waved away.
          # Breaking form submission, as it is hardwired for a specific page structure :( This can be fixed within Jenkins core, but I'd fear there's be ripple effects for a time after.
          Tom FENNELLY made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]

            tfennelly Tom FENNELLY
            tfennelly Tom FENNELLY
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: