[Bug 19007] New: additional function request for Mutation methods (5.2.2)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 19007] New: additional function request for Mutation methods (5.2.2)

Bugzilla from bugzilla@jessica.w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=19007

           Summary: additional function request for Mutation methods
                    (5.2.2)
           Product: WebAppsWG
           Version: unspecified
          Platform: PC
        OS/Version: Windows NT
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DOM
        AssignedTo: [hidden email]
        ReportedBy: [hidden email]
         QAContact: [hidden email]
                CC: [hidden email], [hidden email]


The new DOM mutation methods are excellently great, but I would like to request
the addition of one more function: swap.

Particularly for DOM diffing (turning one element into another) where the
operations are removals, insertions and relocations, as well as "collection"
relocations (moving a sequence of elements up/down in their container) a swap()
operation will greatly improve legibility as well as writability.

Compare these two DOM fragments:

A:

<figure>
  <!--image-->
  <img...>
  <!-- guide text -->
  <figcaption>text</figcaption>
<figure>

B:

<figure>
  <!-- guide text -->
  <figcaption>text</figcaption>
  <!--image-->
  <img...>
<figure>

Turning A into B (as a diff, or because a user did something that was
equivalent to a drag operation on the first two or last two non-Text nodes)
using a .swap() operation would be a two line constructions:

  figure.swap(1,5); // or figure.swap(commentElement1, commentElement2)
  figure.swap(2,6); // or figure.swap(imgelement, figCaptionElement)

This code would be preferable to having to relocate elements using inserts,
where each insert must be followed by checks to see whether a relocation now
requires an insert, or an append because the next swap can be performed.

It would also reduce the number of DOM mutation events being generated for a
swap from two events that are either the same (two inserts) or different (an
insert and an append) to a single event that always represents a swap.

--
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

Reply | Threaded
Open this post in threaded view
|

[Bug 19007] Consider adding a swap() method

nobody
https://www.w3.org/Bugs/Public/show_bug.cgi?id=19007

Anne <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX
         Whiteboard|blocked on insufficient     |
                   |interest                    |

--- Comment #2 from Anne <[hidden email]> ---
Closing this due to insufficient interest. If you want to pursue this we'll
need the following:

* Libraries that offer this
* A processing model that illustrates how this generates better mutation
records than doing it manually
* A GitHub issue since we stopped using Bugzilla for the DOM Standard

--
You are receiving this mail because:
You are on the CC list for the bug.