How to propagate LayoutEvents.LayoutClickEvent

I use the new vaadin 8 grid, and I define a new componantColumn that allow to insert any vaadin componant instead of default (kind of cellRenderer).
It works fine, but the problem is that the line select or deselect can’t be done when the click is done on the componant.
I found a workaround that consist to wrap the componant inside a CssLayout and to add a LayoutClickListener to intercept mouse clicks done on it.

Using this code, I can select or deselect my line.

layout.addLayoutClickListener(new LayoutEvents.LayoutClickListener() {
            @Override
            public void layoutClick(LayoutEvents.LayoutClickEvent event) {
                if (event.getButton() == MouseEventDetails.MouseButton.LEFT) {

                    boolean select = true;
                    for (T t : getSelectedItems()) {
                        if (t == (T) lineId) {
                            select = false;
                            break;
                        }
                    }

                    if (select) {
                        select((T) lineId);
                    } else {
                        deselect((T) lineId);
                    }
                }
            }
        })

Now, my problem is that the listener intercept all click, That’s disable to all parent element (and the browser) to intercept any mouse clicks.

How to say to my listener (in case of a RIGHT click), to ignore or continue to progagate the click event to parent object ?

I don’t think you can do it from the server side. At that point, the original event is gone. I think your best bet might be a custom Renderer.

-Olli