dunand [Mon, 8 May 2017 05:52:15 +0000 (01:52 -0400)]
Update example to Vaadin 8 (#9260)
Replaced Result<String> with ValidationResult.
Replaced variable input by value.
Removed first phrase after example since it does not make sense anymore.
Pekka Hyvönen [Fri, 5 May 2017 09:39:32 +0000 (12:39 +0300)]
Fix HTML5 DnD regression for FF (#9245)
- Always set some drag data
- Set the dropEffect on dragEnter and dragOver events on drop target
- Send the dropEffect to server on drop event with disclaimer of current support
- Remove _dragOverCriteria_ and use _dropCriteria_ for `dragenter`, `dragover` and `drop` criteria
Tested manually basic DnD and Grid DnD on Mac with Chrome, Firefox, Safari.
Safari is still missing drag image (regression).
Tested manually basic DnD and Grid Dnd on Windows IE11 and Edge.
Drop event for both is still not working properly #9174.
Fix ComponentLocator with inherited classes without custom connector (#9176)
Logic for finding elements corresponding a server-side classname does
not work with inherited classes. For example making MyGrid extends Grid,
you could not find the specific MyGrid, but only the common Grid.
In most cases this is not a problem since these components are usually
the only instance of said superclass, but the Composite introduced in
the same UI, which makes testing them impossible.
This patch adds the specific classname information for ServerConnectors
that can be used to find the correct connector instance.
This patch introduces a Tree component, implemented as a Composite
using TreeGrid. As initial version of the component, some functionality
of the old Tree component has been left out for now.
Aleksi Hietanen [Tue, 2 May 2017 07:58:29 +0000 (10:58 +0300)]
Improve expand and collapse of items in TreeGrid (#9159)
Fixes a race condition when expanding multiple items.
Only one expand or collapse request should be sent from
the client before waiting for a response, otherwise the
indexing in subsequent requests will be incorrect.
Adds API to collapse and expand multiple items from the
server, reducing the amount of round trips with multiple
item expands and collapses.
HierarchyMapper now correctly keeps expanded nodes expanded
if their parent is collapsed.
Remove dependency of portlets to liferay-integration bundle
A property can be used instead of the convenience annotation to mark a UI
as a Portlet UI registration that should be picked up by the liferay
integration. This removes the unnecessary dependency on the liferay-integration
bundle.
Add scr component to help registering VaadinServlet configurations
This component will detect VaadinServlet configurations, add the static
resource configuration property and then register a servlet using the
HttpWhiteboard specification.
This works with pax-jetty but not pax-http-tomcat. Partly covers #7173
Fix race condition between rendering TreeGrid and setting up headers (#9105)
* Fix race condition between rendering Grid and setting up headers
* Remove Grid default headers when initializing the widget
* Fix header clean up, add null check to select all checkbox
Artur [Tue, 18 Apr 2017 09:53:30 +0000 (12:53 +0300)]
Fix problem when reading a nested Design based on a GridLayout (#9092)
The parent Design must leave child handling to the nested design, when
there are no children defined in the parent Design. This fixes a problem
with com.vaadin.ui.GridLayout$OutOfBoundsException when the reading
operation of the parent design tries to set number of rows according to
its empty content.
Artur [Tue, 18 Apr 2017 07:57:11 +0000 (10:57 +0300)]
Composite component (#8952)
A composite is included in the server side hierarchy and in the connector
hierarchy on the client side but does not have its own widget or DOM.
To ensure that captions etc are renderer correctly for the root contents,
the client side connector returns both the widget and state for the content
connector.
Server side API related to width and height are automatically forwarded to
the root component to enable easy use of the composite inside different
layout configurations.
Other server side API inherited from AbstractComponent is unwanted, should be
optional and therefore throw an exception by default.
Use setCaption Javadocs inherited from Component (#9066)
Component.setCaption has thorough Javadocs that are shadowed by a very
brief snippet in AbstractComponent and an erroneous description in
Panel. By removing those snippets, component classes will instead
inherit a much more useful description of the method.