Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add invokers (invoketarget & invokeaction) #9841

Open
wants to merge 69 commits into
base: main
Choose a base branch
from

Commits on Feb 13, 2024

  1. Add InvokeElement, InvokeEvent, steps for invocation

    This specifies some of the detail within the Invokers proposal (whatwg#9625).
    
    This introduces 2 new IDLs:
    
    - InvokeEvent: A new event that has `action` and `invoker`.
    - InvokeElement: A mixin applied to Buttons to add
      `invokeTargetElement`/`invokeAction`
    
    It also adds the `invoketarget` & `invokeaction` attributes which are
    reflected to the IDL properties.
    
    It also adds the steps for invocation: button activation checks if the
    node has an invokeTarget and dispatches an InvokeEvent if so.
    
    Things NOT covered in this commit that are included in the proposal (whatwg#9625):
    
    - Default per element behaviours (invocation action algorithms), this
      will be dealt with in subsequent individual commits.
    
    - `interestaction` and `interesttarget`.
    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    c1c34a1 View commit details
    Browse the repository at this point in the history
  2. Add popover default behavior for invoke targets

    This specifies what buttons with an invoketarget pointing to an element
    with `popover` should do, based on the Invokers proposal (whatwg#9625).
    
    This introduces new specifications just within the "invoke target attribute activation behavior" algorithm such that:
    
     - If an `invoketarget` points to an element with `popover`
        - If the `invokeaction` is `auto` or `togglePopover`, try to toggle the popover
        - If the `invokeaction` is `hidePopover`, try to hide the popover
        - If the `invokeaction` is `showPopover`, try to show the popover
    
    If the `invokeaction` is none of the above, then it will fall through
    the logic and be passed over to the "invocation action algorithm" for
    the invokee element, if present.
    
    Things NOT covered in this commit that are included in the proposal (whatwg#9625):
    
    - Default per element behaviours (invocation action algorithms) beyond
      popovers. These will be dealt with in subsequent commits adding each
      elements "invocation action algorithm".
    
    - `interestaction` and `interesttarget`.
    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    e06b509 View commit details
    Browse the repository at this point in the history
  3. Add dialog associated invocation action algorithm

    This specifies what buttons with an invoketarget pointing to a dialog element
    should do, based on the Invokers proposal (whatwg#9625).
    
    This introduces new specifications within the HTMLDialogElement, giving it an "associated invocation action algorithm" such that:
    
     - If an `invoketarget` points to an HTMLDialogElement element
        - If the `invokeaction` is `auto` or `close`, and the Dialog is
          open, then try to close the dialog.
        - If the `invokeaction` is `auto` or `showmodal` and the Dialog is
          not open, then try to open the dialog.
    
    If the `invokeaction` is none of the above, then it will do nothing.
    
    Things NOT covered in this commit that are included in the proposal (whatwg#9625):
    
    - Other per element behaviours (invocation action algorithms) beyond
      HTMLDialogElement. These will be dealt with in subsequent commits
      adding each elements "invocation action algorithm".
    
    - `interestaction` and `interesttarget`.
    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    5332696 View commit details
    Browse the repository at this point in the history
  4. Add non-normative reference table for invoke actions

    This assists developers (and to a degree implementers) in providing a
    quick reference from which to see the action hints that an invokeaction
    may supply in order to have an effect on given elements.
    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    53ca0af View commit details
    Browse the repository at this point in the history
  5. fix punctuation

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    3fa0df4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0641590 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c099437 View commit details
    Browse the repository at this point in the history
  8. fix punctuation

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    b6de0d8 View commit details
    Browse the repository at this point in the history
  9. allow null actions

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    c942d37 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    c1d0578 View commit details
    Browse the repository at this point in the history
  11. remove extra </li>

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    4cefcf4 View commit details
    Browse the repository at this point in the history
  12. move </li>

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    e03d894 View commit details
    Browse the repository at this point in the history
  13. s/follwoing/following

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    74eabd9 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    d71aa2c View commit details
    Browse the repository at this point in the history
  15. fix typo

    keithamus committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    fa0b8dd View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2024

  1. Configuration menu
    Copy the full SHA
    42c2c3d View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2024

  1. Configuration menu
    Copy the full SHA
    8dfcbc5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b40ba86 View commit details
    Browse the repository at this point in the history
  3. fix wonky tag

    keithamus committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    8eb6c3c View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2024

  1. Configuration menu
    Copy the full SHA
    7ce17a7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cfcda15 View commit details
    Browse the repository at this point in the history
  3. fix missing closing tag

    keithamus committed Mar 16, 2024
    Configuration menu
    Copy the full SHA
    89bd8c8 View commit details
    Browse the repository at this point in the history
  4. fix nested <ol>

    keithamus committed Mar 16, 2024
    Configuration menu
    Copy the full SHA
    015f935 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2024

  1. camelCase vars

    keithamus committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    910e232 View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2024

  1. add missing period

    keithamus committed Mar 21, 2024
    Configuration menu
    Copy the full SHA
    ed07121 View commit details
    Browse the repository at this point in the history
  2. drop erroneous plural

    keithamus committed Mar 21, 2024
    Configuration menu
    Copy the full SHA
    43f7a9e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8dca0ab View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2024

  1. address review commentary

    keithamus committed Apr 9, 2024
    Configuration menu
    Copy the full SHA
    6ffe325 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2024

  1. Configuration menu
    Copy the full SHA
    c6bca61 View commit details
    Browse the repository at this point in the history
  2. drop whitespace lines

    keithamus committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    d0da230 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8271024 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8b2d5ef View commit details
    Browse the repository at this point in the history
  5. fixup button invoke steps

    keithamus committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    4ad74f1 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2024

  1. add invokeaction/invoketarget attributes to indices

    This also makes distinct the "valid custom invokeaction" algorithm
    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    d11e9a8 View commit details
    Browse the repository at this point in the history
  2. refine the button invoke/popover steps

    This allows us to remove the checks in invoke target attribute activation behavior
    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    57a2ec4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    053eea6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0ae49ba View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2013e27 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    deadc6d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3a6b40b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    02d1cc0 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    4dd6cbc View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    3b933bc View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    d6a49a0 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    5baf467 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    93e12cc View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    5231e73 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    d845085 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    8f2f147 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    d56ea6a View commit details
    Browse the repository at this point in the history
  18. use InvokerElement mixin!

    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    0c6a899 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    a72df39 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    7e164d6 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    a38016e View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    6de6013 View commit details
    Browse the repository at this point in the history
  23. add assert

    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    daefd79 View commit details
    Browse the repository at this point in the history
  24. s/set/initialized

    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    e2eef3f View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    7631962 View commit details
    Browse the repository at this point in the history
  26. s/popover/invokee

    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    1560ba7 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    48c5376 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    8b6a3c4 View commit details
    Browse the repository at this point in the history
  29. s/invokee/element

    keithamus committed May 3, 2024
    Configuration menu
    Copy the full SHA
    fa2a481 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    546167a View commit details
    Browse the repository at this point in the history

Commits on May 8, 2024

  1. Configuration menu
    Copy the full SHA
    49cf0ad View commit details
    Browse the repository at this point in the history
  2. s/node/element

    keithamus committed May 8, 2024
    Configuration menu
    Copy the full SHA
    1e3795b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2a45f6c View commit details
    Browse the repository at this point in the history
  4. capitalize sentence

    keithamus committed May 8, 2024
    Configuration menu
    Copy the full SHA
    b13df14 View commit details
    Browse the repository at this point in the history
  5. add assert

    keithamus committed May 8, 2024
    Configuration menu
    Copy the full SHA
    9a5ab06 View commit details
    Browse the repository at this point in the history

Commits on May 10, 2024

  1. Configuration menu
    Copy the full SHA
    2dd96e2 View commit details
    Browse the repository at this point in the history