Add fallback resolvers for CurrentInstance (#10974)
This allow applications to inject custom default instances when the
current instances cannot be found by regular means.
For example, when VaadinServlet.getCurrent() would return null, a
fallback resolver could be invoked to properly create the servlet and
return it.
* ColorTextField, helper methods, and regex for validating and handling text input
* Refactored structure to avoid creating new component for validation
* Style to adapt to error indicator
* Tests for validating input in ColorPickerPreview component's TextField
* Merge branch 'master' into colorpicker_validation
* Fix path to server class
* Fix test: Submit the new value
* Fix test: ignore Phantom JS
* Fix hsl+hsla validation patterns to accept '%', test value tweaking
* Merge branch 'master' of github.com:vaadin/framework into colorpicker_validation
* Fix: remove warning when color is updated from elsewhere
* Revisions: input validation only once, Logging level WARN
* Revisions: unit tests for color pattern matching
* Revisions: moved parsing to utility class, tests for parsing all accepted input formats
* Fixed import in tests, comments
* Revisions: Logger as constant, ignore utility class in serialization test
* Corner case tests
* Revisions: protected method for parsing error text, fix to test
* Revisions: NPE fix
Add ContentMode for the description of MenuItems (#9984)
Adds the ability to set the content mode for the description of a menu item that is part of a menu bar.
This functionality was already available for every AbstractComponent but missing for the menu items of menu bars.
If no content mode is specified it defaults to the PREFORMATED content mode.
* Changed retrieval of names of nested properties (#10159)
The getName() function in NestedBeanPropertyDefinition will return only the top level name, which causes problems when adding a nested property that has the same name as a non-nested (e.g "value" & "sub.value")
This change should fix this behaviour by changing the return value of "getName()" of NestedBeanPropertyDefinition and introducing a function "getTopLevelName()" that only returns the last part of the full name for where it's needed
* Rename HierarchicalDataCommunicator#getMapper to getHierarchyMapper
* Make rpc field in Notification private
* Change DropIndexCalculator.ALWAYS_DROP_TO_END to a generic static method
* Move EditorImpl#editRow documentation to the interface level
* Correct GridDragEndEvent, GridDragStartEvent constructor javadocs
* Revert SharedState.registeredEventListeners to a Set
* Rename GridDropTarget dropAllowedOnSortedGridRows
* Rename ColumnState.contentMode to tooltipContentMode
Extract AbstractBeanPropertyDefinition and PropertyFilterDefinition (#10344)
This commit extracts the private nested class AbstractBeanPropertyDefinition from BeanPropertySet to a public class of package com.vaadin.data.
Additionally, the nested protected class PropertyFilterDefinition is extracted from NestedBeanPropertyDefinition to a public class in package com.vaadin.data.