• 
      

    Add plumbing to let InlineEditorView save without triggering events.

    Review Request #13042 — Created May 11, 2023 and submitted — Latest diff uploaded

    Information

    Review Board
    release-6.x

    Reviewers

    In order to make the "save before publish" operation a little more
    streamlined, I'm rearranging things so that it can be somewhat less
    event driven. Right now, this involves:

    1. ReviewRequestEditorView calls finishSave for each open field.
    2. The field calls InlineEditorView.submit.
    3. InlineEditorView.save triggers the "complete" event.
    4. "complete" is handled by the field view, which calls
      ReviewRequestEditor.setDraftField
    5. ReviewRequestEditor.setDraftField calls ReviewRequestDraft.save
      with the new data.
    6. As each of the fields are saved, ReviewRequestEditor is keeping
      track via a pendingSaveCount attribute, which will trigger a new
      call to publishDraft once the count is zero.

    This is all unnecessarily complex, and involves making an API call per
    field before we can publish, when we should be able to save all of the
    data in a single go.

    This change is the first step in addressing this, allowing the inline
    editor to save/submit without triggering that "complete" event, and
    returning the new value instead.

    Ran js-tests.

    Commits

    Files