Adds registered custom properties to the dropdown menus, which can be set in another stylesheet at any level (either on the direct element or on an ancestor) or use the default values given.
Adds the `disabled` attribute to a menu-item button if it's disabled, not just as a className. Styling changes centered on that as well.
Also changes the `beta` class to `status` because it is used for both `beta` and `disabled` indicators. Styling changes for that.
The snippets are a `menubar` in terms of role, and is a list of items (`menitem`, `li`).
Note for myself: submenus are `menu` roles that immediately follow their triggering `menuitem` and are direct children of the parent `menu`, per WCAG. This is done in this commit.
commit e02ce4f898 unintentionally undid some changes for v4 by dbolack, I'm not really sure how. It's evidently not possible to directly "revert" those changes without having a conflicted file, i think something was borked in the process.
manually reverting the changes here, hopefully it works out.
to decrease the width used for the snippet bar triggers, removed the down arrows (for the top level triggers only). And, reduced the padding on the icons in the snippetbar while retaining it inside the menus.
The icons still align between the menu list and the menu trigger, but the text labels do not.
Unless a menu item has the `no-dismiss` attribute (set to either `''` or `'true'`), clicking a menu item will dismiss the menu. Clicking a submenu trigger will not dismiss the menu.
The `no-dismiss` attribute must take a string, either empty or `'true'` because react doesn't allow boolean custom attributes.
Ideally side effects (server calls, etc.) should happen outside of useEffect anyway for reasons like this; Putting the save in the button click keeps the logic in one place instead of spread across multiple functions and renders,
(This change was already made in my local copy toward combining Edit/New/Home pages.)
Since the print cycle now loads all images not-yet-loaded (due to lazy loading), there can be a moment of time where it appears pressing Get PDF is doing nothing, depending on connection speed. To add a "loading" message, a custom event is fired at the start and end of the print cycle (before the print dialog comes up).
Adds a "copy url (page N)" option to the Share dropdown (edit page) and
the source dropdown (share page). Copies a URL with a #pN hash anchor.
The existing scrollToHash handler in brewRenderer already navigates to
the correct page when the URL is opened.
should be window.onbeforeunload = xyz. However in this case, it's not needed anyway since we are only adding the event listener once on page load, which already gets cleared when you reload the page.