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

MenuItem, Menu, SubMenu, and MenuBar widgets #104

Closed
wants to merge 36 commits into from

Commits on Apr 19, 2017

  1. Add Menu widget

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    cb2941a View commit details
    Browse the repository at this point in the history
  2. Add keypress and focusin events to the menu widget

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    30225d1 View commit details
    Browse the repository at this point in the history
  3. Fix animation when menu starts opened.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    78d111a View commit details
    Browse the repository at this point in the history
  4. Update menu widgets tests

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    f2f55aa View commit details
    Browse the repository at this point in the history
  5. Add menu comments and animate function property

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    4c359b0 View commit details
    Browse the repository at this point in the history
  6. Menu updates

    - Use `properties.hidden` directly instead of passing it around.
    - Disambiguate `isHidden` to `requestShow` in `_toggleDisplay`.
    - Create an export base classes from Menu and MenuItem.
    - Remove underscore prefix from protected class members.
    - Fix doc comments for Menu/MenuItem properties.
    - Fix MenuItem child type.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    dd359ee View commit details
    Browse the repository at this point in the history
  7. Menu and MenuItem updates

    - Remove the ability to specify `animate` as a function.
    - Remove `getAriaProperties` in favor of individual properties.
    - Simplify the MenuItem widget.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    2938530 View commit details
    Browse the repository at this point in the history
  8. Additional Menu/MenuItem updates

    - Remove unused import
    - Remove menu/example.html
    - Fix example page
    - Use `KeyboardEvent#keyCode` where `key` is unavailable
    - Consolidate menu CSS into a single module
    - Ensure menu is scrolled to top when animating open
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    97135c7 View commit details
    Browse the repository at this point in the history
  9. Move menu.css to menu.m.css

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    487f07c View commit details
    Browse the repository at this point in the history
  10. Move menu colors into common variables

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    dd1bd20 View commit details
    Browse the repository at this point in the history
  11. Menu and MenuItem updates

    - Use `onElementCreated` and `onElementUpdated`
    - Correct use of `KeyboardEvent#keyCode`
    - Privacy updates
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    9745208 View commit details
    Browse the repository at this point in the history
  12. Menu and MenuItem updates

    `MenuItem`:
    - Allow tag and vnode properties to be set.
    - Fix ARIA properties.
    - Allow different `role`s to be applied.
    
    `Menu`:
    - Update keyboard handling to more accurately match the WAI-ARIA spec.
    - Add handling for right/left arrows, space key.
    - Internalize active index management.
    - Add an `orientation` property.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    00a2c82 View commit details
    Browse the repository at this point in the history
  13. Fix: animate only when hidden changes.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    21d8899 View commit details
    Browse the repository at this point in the history
  14. Menu/MenuItem updates

    - Rename event listener names for consistency with other widgets.
    - Change `container`/`nestedMenuContainer` CSS classes to
      `root`/`nestedMenuRoot`, respectively.
    - Use CSS variable for menu animation duration.
    - Simplify function property checks.
    - Only move focus from the label into the menu when navigating via the
      keyboard.
    - Add `hideOnActivate` options.
    - Always expand submenus when the designated "descend" key is pressed.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    56b962f View commit details
    Browse the repository at this point in the history
  15. Add aria-checked property to checkbox/radio menu items

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    3f8cb65 View commit details
    Browse the repository at this point in the history
  16. Add Menu widget README.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    c149e2f View commit details
    Browse the repository at this point in the history
  17. Menu/MenuItem updates

    - general cleanup
    - remove tabIndex from menu container
    - reset active index on hide
    - move focus on click
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    7317abf View commit details
    Browse the repository at this point in the history
  18. Key management update.

    - Prevent the default action when the down arrow key is pressed while
      the menu trigger is focused.
    - Add `parentOrientation` property to ensure that vertical submenus of
      horizontal menus are opened with down arrow key instead of the right
      arrow key.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    06b0706 View commit details
    Browse the repository at this point in the history
  19. Simplify _getKeys method.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    90dd3d5 View commit details
    Browse the repository at this point in the history
  20. Separate menu and hideable menu.

    Simplify the `Menu` widget to do nothing more than render a list of menu
    children and manage the keyboard/mouse event interactions with them.
    Create a separate `SubMenu` widget that renders a menu item that
    toggles the menu in-and-out of view.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    0ec6398 View commit details
    Browse the repository at this point in the history
  21. Implement dropdown functionality.

    Update `SubMenu` with dropdown functionality and the beginnings of popup
    functionality.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    7947e12 View commit details
    Browse the repository at this point in the history
  22. wip menubar widget

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    5676050 View commit details
    Browse the repository at this point in the history
  23. Menu fixes

    - Add guard to focusout handler to prevent destroyed widgets from being
      manually inactivated.
    - Change `animate` to `animation`.
    - Toggle menu with space key.
    - `MenuItem`s default to `a` tag.
    - Implement `hideOnBlur` property.
    - Respond to submenu key events only when active
    - Update privacy of MenuItem methods.
    - Stop propagation when an arrow key is pressed on a SubMenu trigger to
      prevent navigation within a parent menu.
    - Focus menu items within a rAF call in order to give any animations
      time to complete.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    84ee217 View commit details
    Browse the repository at this point in the history
  24. Add menu bar unit tests.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    d2f3a64 View commit details
    Browse the repository at this point in the history
  25. Ignore transpiled super calls in constructors.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    1f75bba View commit details
    Browse the repository at this point in the history
  26. Split Menu and SubMenu styles.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    0fc3d80 View commit details
    Browse the repository at this point in the history
  27. Fix menu item focus logic.

    Update the focus logic in `MenuItem` to account for browsers that
    require more than one task to mark as visible elements being animated
    from `visibility: hidden`. Also update Menu readme.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    6b13dd8 View commit details
    Browse the repository at this point in the history
  28. MenuItem focus logic update.

    Put a cap on how many frames `MenuItem` will wait before ceasing to wait
    for its DOM node to become hidden.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    ce92ceb View commit details
    Browse the repository at this point in the history
  29. Menu fixes.

    - Improve popup logic and add an example.
    - Activate menu items when the enter key is pressed.
    - Add a `menuId` property to `MenuItem` so that ancestor menus can
      ignore clicks within nested menus.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    cf2621b View commit details
    Browse the repository at this point in the history
  30. Use @dojo/core/lang.createHandle in menu widgets.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    567ecb2 View commit details
    Browse the repository at this point in the history
  31. Allow menu/trigger CSS in SubMenu to be overridden.

    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    afb9019 View commit details
    Browse the repository at this point in the history
  32. Simplify menu fade CSS.

    Replace the `fadeIn`/`fadeOut` keyframes with a simpler transition (h/t
    @smhigley).
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    203b884 View commit details
    Browse the repository at this point in the history
  33. wip menu updates

    - Use spaces for the TypeDoc comments.
    - Remove unneeded `nested` property.
    - Create common `Keys` and `observeViewport` utilities.
    - Allow slide pane trigger to be a DNode.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    a3ce238 View commit details
    Browse the repository at this point in the history
  34. Remove menuId property from MenuItem.

    Replace the `menuId` property from `MenuItem` with a `onMouseDown`
    property, and update event-related properties to accept both the event
    and an optional `index`.
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    ab0c84d View commit details
    Browse the repository at this point in the history
  35. Menu updates

    - Fix util tests
    - Use updated `Keys` enum
    - Remove variables.css.d.ts
    Matt Wistrand committed Apr 19, 2017
    Configuration menu
    Copy the full SHA
    dbf3e5c View commit details
    Browse the repository at this point in the history

Commits on Apr 20, 2017

  1. Menu updates

    - Convert `Orientation` to an enum
    - Add custom element descriptors
    - Only create a default menu id when the property is missing
    Matt Wistrand committed Apr 20, 2017
    Configuration menu
    Copy the full SHA
    b66fb22 View commit details
    Browse the repository at this point in the history