Use generated id of the menu item to help testing of the menubar (#12124)
Use generated IDs for MenuItems when an ID is set for MenuBar. Tying the ID to MenuBar's ID helps with the possible case of having multiple MenuBars on the same view and avoids to have excess id's when not needed.
Fixes: https://github.com/vaadin/framework/issues/8186
* Improve VMenuBar click handling logic
During `updateFromUIDL` inside MenuBarConnector we empty and re-instantiate the components of MenuBar. When we are modifying the Menubar from the BlurEventListener of another component, we ,by this, remove widgets, therefore clickEvent is not fired and the action of the MenuItem is not proceed as a result. (The BlurEvent is fired before the click event in the chain of events. )
To improve the situation, we catch onMouseDown event , which is fired before BlurEvent,by assigning mouseDown flag to true. Then if no click event has yet happened, we delay the execution of update inside `updateFromUIDL` by default 500 ms. Then if click event occurs, it proceeds normally. The time can be increased/decreased using setter.
There is no delay, if we are clicking on the MenuBar as usual or no Blur listener is set.
This change allows setting descriptions
* Remove accidentally committed comment
* Don't update the state on the getDelayMs call
* Accessibility for MenuBar (#3922)
* TabIndex handling fix and an indexing tweak
* Make disabled MenuItems selectable for accessibility (#3922)
- It should be possible to navigate to a disabled MenuItem, even if
triggering the related command is disabled
* Refactor primary style name and aria attribute handling to own method
In some places, getWidget() is called many times, and I believe this can
have a litte performance improvement, since in some cases
super.getWidget() is called more than once.
* Fix java packaging order (#106)
Closes vaadin/archetypes#113
* Use proper UTF-8 encoding for Content-Disposition filenames (#19527) (#6607)
* Enable changing the backing bean for BeanItem (#4302) (#77)
When storing a bean to the database, you typically get a new and updated
bean instance back. By allowing to change the bean instance, we make it
possible to just update the single BeanItem instance which can be used
in many places.
* Make AtmospherePushConnection methods public (#7973)
There is no sensible way to use a custom version of APC, so protected
access does not help in any way to access the underlying resource and/or
connected UI.
* Use correct indexes in multiselect checkboxes after removing rows (#8072)
Fixes #8011
* Fix removal of hidden Grid columns (#8071)
Fixes #8018
* Call error handler for exceptions in UI.init() (#8055)
Fixes #4995
* Render font icon correctly on the 'more' menu item (#8126)
* Render font icon correctly on the 'more' menu item
Fixes #8125
* Reopen Grid details on attach, fixes #8015 (#8074)
Fixes #8015
* Fix broken Grid tests after picking changes from 7.7.7
Removed duplicate setDetailsVisible calls from onDetach
* Correctly detach components in merged cells when a static row is removed (#8142)
Fixes #8140
Changed implementations and APIs to use the non-deprecated Element class
wherever possible without breaking backwards compatibility.
* Methods defined in interfaces have not been touched.
* Return types have only been changed methods that should have no
existing third party callers (i.e. private, internal or @since 7.2)
* For methods that third party code might have overridden, the method
has been deprecated in favor of a new method that just delegates to the
old method.
* For methods that can't reasonably be overridden by third party code
(i.e. private, final, static, internal or @since 7.2), the parameter
type has been changed without retaining the old method.
Change-Id: I7da943a77b8d0d0b9185d8c70f87d676a275d24b
Renamed Icon to ImageIcon
Change-Id: I608815f17a3651b205fed81b5294385df0d68802
Extracted the abstract client-side Icon class
Change-Id: Ic32e270595a5796d0bbd1dd31f34282b56672aa9
Created the FontIcon class
Change-Id: Iad13871e7bf1807dee2c538c76306d4620191f5e
Renamed AbstractComponentConnector.getIcon to getIconUri
Change-Id: I6953ab79661993b561655d483c1bd013b66407f3
Added the AbstractComponentConnector.getIcon method
Change-Id: I6fb91dc643fb09da3ba53666b1a8a289901702e3
Refactored getIcon
Change-Id: Ibae39e66d0fb8449e20ac5209eb8c18b6ada4387
Made all existing uses of Icon compatible with FontIcons
Change-Id: I8f28ec5254f2e5282a887519d3f44bc1e27aba72
Initial server-side support for font icons - does not include an actual icon set yet (#13152)
Change-Id: Ie6c09b17dd577c726e0efc13567749f6f4d56d8d
Changed server side FontIcon URI generation to match the correct scheme
Change-Id: I3628b930b310b3f285bc58a3f471e31e641d307e
Initial server-side icon font (FontAwesome) with scss - to be considered placeholder for testing (#13152)
Change-Id: I361e62aba0d943a736471824e149d65c7eea9c76
Changed the FontIcon URI scheme
Change-Id: I15c92f6bb3d0aa0a800f3f0bfa80419979453e17
Added FontIcon support to AbstractOrderedLayoutConnector
Change-Id: I3b2b45b22d29622fd888dbe922aa0cc8a718104d
Added FontIcon support to table items
Change-Id: Id22ce94c96a892420aab1e39663688fc9f3bc282
Added FontIcon support to OptionGroup items
Change-Id: Ie08bef688f6802182ef5f8b2bf82cf8b1f9096bb
Switched to openly use FontAwesome (#13152)
Change-Id: I18c3325ce93915b7fd6e338c8c293a89711277bc
VaadinIcons are now FontAwesome (#13152)
Change-Id: I0ab2a80735cbf08b6e33d358e3e8c6a205626fc4
VCaption does not longer set icon to 0x0px if it's a FontIcon (#13152)
Change-Id: Ibcd96e0f79f0adf2e217a8580d17f1cc93705710
Fixed typo in @font-face, removed .otf (#13152)
Change-Id: I698ca32c560e5f198c32a6c44f7884d3030ee610
Make font icons behave more like img (display:inline-block) (#13152)
Change-Id: Ic79186c90f1fc566deae1f4d8d4ba2c21d89a42e
Moved each component to its own package on client side
Class loaders have problems with referring to static inner classes (e.g.
state classes) when they cannot load the declaring class. To deal with
this the components have been moved to their own packages and state/rpc
classes will be defined in their own Java files.