List of usage examples for com.vaadin.client.ui.layout ElementResizeListener ElementResizeListener
ElementResizeListener
From source file:com.ejt.vaadin.sizereporter.shared.SizeReporterConnector.java
License:Apache License
@Override protected void extend(ServerConnector target) { if (target instanceof ComponentConnector) { widget = ((ComponentConnector) target).getWidget(); if (widget.getOffsetWidth() > 0 && widget.getOffsetHeight() > 0) { reportSize(); // for widgets already in the layout }// w ww .j a va2 s. c o m // ElementResizeListener does not work for widgets that are 'loaded' (e.g. Image...) if (widget instanceof HasLoadHandlers) { ((HasLoadHandlers) widget).addLoadHandler(new LoadHandler() { @Override public void onLoad(LoadEvent event) { reportSize(); } }); } else { LayoutManager.get(getConnection()).addElementResizeListener(widget.getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent event) { reportSize(); } }); } } }
From source file:com.haulmont.cuba.web.widgets.client.addons.aceeditor.AceEditorConnector.java
License:Apache License
@Override public void init() { super.init(); // Needed if inside a resizable subwindow. // Should we check that and only listen if yes? getLayoutManager().addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override/*from w w w . jav a 2 s . c o m*/ public void onElementResize(ElementResizeEvent e) { getWidget().resize(); } }); }
From source file:info.magnolia.ui.vaadin.gwt.client.actionbar.connector.ActionbarConnector.java
License:Open Source License
@Override protected void init() { super.init(); addStateChangeHandler(previewChangeHandler); addStateChangeHandler("sections", sectionRearrangementHandler); addStateChangeHandler("visibleSections", visibleSectionSetChangeHandler); addStateChangeHandler("disabledActions", enabledActionSetChangeHandler); addStateChangeHandler("isOpen", collapseChangeHandler); if (isDeviceTablet()) { setOpened(true);/*from w w w.j a v a 2s. c o m*/ } getLayoutManager().addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { getWidget().updateLayout(); } }); }
From source file:info.magnolia.ui.vaadin.gwt.client.applauncher.widget.AppLauncherViewImpl.java
License:Open Source License
public void addTemporaryAppGroup(AppGroup groupParams) { final VTemporaryAppTileGroup group = new VTemporaryAppTileGroup(groupParams.getBackgroundColor()); group.setClientGroup(groupParams.isClientGroup()); groups.put(groupParams.getName(), group); temporarySectionsBar.addGroup(groupParams.getCaption(), group); add(group);//from w w w . j av a 2 s .c o m presenter.registerElementResizeListener(group.getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { final VTemporaryAppTileGroup currentOpenGroup = temporarySectionsBar.getCurrentOpenGroup(); if (currentOpenGroup == null || group == currentOpenGroup) { permanentAppScrollPanel.getElement().getStyle() .setBottom(TEMPORARY_PERMANENT_SECTIONS_OFFSET + group.getOffsetHeight(), Unit.PX); updatePermanentAppGroupBorder(); } } }); }
From source file:info.magnolia.ui.vaadin.gwt.client.applauncher.widget.AppLauncherViewImpl.java
License:Open Source License
public void addPermanentAppGroup(AppGroup groupParams) { final VPermanentAppTileGroup group = new VPermanentAppTileGroup(groupParams.getCaption(), groupParams.getBackgroundColor()); group.setClientGroup(groupParams.isClientGroup()); groups.put(groupParams.getName(), group); permanentAppContainer.add(group);//from ww w .j a v a 2s. c o m presenter.registerElementResizeListener(permanentAppScrollPanel.getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { updatePermanentAppGroupBorder(); } }); }
From source file:info.magnolia.ui.vaadin.gwt.client.layout.thumbnaillayout.connector.LazyThumbnailLayoutConnector.java
License:Open Source License
@Override protected void init() { super.init(); registerRpc(ThumbnailLayoutClientRpc.class, new ThumbnailLayoutClientRpc() { @Override/* w ww .j a v a2 s. c o m*/ public void addThumbnails(List<ThumbnailData> data, int startingFrom) { final Range received = Range.withLength(startingFrom, data.size()); final Range maxCacheRange = getMaxCacheRange(); final Range[] partition = received.partitionWith(maxCacheRange); final Range newUsefulData = partition[1]; if (!newUsefulData.isEmpty()) { // Update the parts that are actually inside for (int i = newUsefulData.getStart(); i < newUsefulData.getEnd(); i++) { final ThumbnailData thumbnailData = data.get(i - startingFrom); if (thumbnailData.isRealResource()) { idToUrl.put(thumbnailData.getThumbnailId(), getResourceUrl(thumbnailData.getThumbnailId())); } indexToThumbnail.put(i, thumbnailData); idToIndex.put(thumbnailData.getThumbnailId(), i); } final Range toPushToWidget = newUsefulData.restrictTo(getWidget().getDisplayedRange()); for (int i = toPushToWidget.getStart(); i < toPushToWidget.getEnd(); ++i) { updateThumbnailContentAtIndex(i); } // Potentially extend the range if (cachedThumbnails.isEmpty()) { cachedThumbnails = newUsefulData; } else { purgeCache(); if (!cachedThumbnails.isEmpty()) { cachedThumbnails = cachedThumbnails.combineWith(newUsefulData); } else { cachedThumbnails = newUsefulData; } } } waitingData = false; // Eventually check whether all needed rows are now available serveThumbnails(); } @Override public void refresh() { refreshViewport(); } }); getLayoutManager().addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { getWidget().resize(); } }); }
From source file:info.magnolia.ui.vaadin.gwt.client.magnoliashell.shell.MagnoliaShellConnector.java
License:Open Source License
@Override protected void init() { super.init(); addStateChangeHandler(new StateChangeHandler() { @Override//from w w w . ja v a 2s. c o m public void onStateChanged(StateChangeEvent event) { MagnoliaShellState state = getState(); Iterator<Entry<ShellAppType, Integer>> it = state.indications.entrySet().iterator(); while (it.hasNext()) { final Entry<ShellAppType, Integer> entry = it.next(); view.setShellAppIndication(entry.getKey(), entry.getValue()); } } }); registerRpc(ShellClientRpc.class, new ShellClientRpc() { @Override public void showMessage(String type, String topic, String msg, String id) { view.showMessage(MessageType.valueOf(type), topic, msg, id); } @Override public void hideAllMessages() { view.hideAllMessages(); } @Override public void setFullScreen(boolean isFullScreen) { MagnoliaShellConnector.this.doFullScreen(isFullScreen); } }); getLayoutManager().addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { view.updateShellDivet(); } }); eventBus.addHandler(CurrentAppCloseEvent.TYPE, new CurrentAppCloseEvent.Handler() { @Override public void onViewportClose(CurrentAppCloseEvent event) { closeCurrentApp(); } }); /** * Fired when the transition that reveals a shell app has just started. */ eventBus.addHandler(ShellAppStartingEvent.TYPE, new ShellAppStartingEvent.Handler() { @Override public void onShellAppStarting(ShellAppStartingEvent event) { ShellState.get().setShellAppStarting(); view.onShellAppStarting(event.getType()); } }); /** * Fired when the transition that reveals a shell app has just finished. */ eventBus.addHandler(ShellAppStartedEvent.TYPE, new ShellAppStartedEvent.Handler() { @Override public void onShellAppStarted(ShellAppStartedEvent event) { final String currentHistoryToken = History.getToken(); final Fragment fragment = Fragment.fromString(currentHistoryToken); String newShellAppName = event.getType().name(); ShellState.get().setShellAppStarted(); if (currentHistoryToken.isEmpty() || !fragment.isShellApp() || !fragment.getAppName().equalsIgnoreCase(newShellAppName)) { final Fragment newFragment = Fragment .fromString("shell:" + newShellAppName.toLowerCase() + ":"); History.newItem(newFragment.toFragment(), false); lastHandledFragment = newFragment; activateShellApp(newFragment); } } }); /** * Fired when the shell app icon was clicked twice, or area outside of a shell app was clicked. */ eventBus.addHandler(HideShellAppsRequestedEvent.TYPE, new HideShellAppsRequestedEvent.Handler() { @Override public void onHideShellAppsRequest(HideShellAppsRequestedEvent event) { if (ShellState.get().isShellAppStarted() || ShellState.get().isShellAppStarting()) { onHideShellAppsRequested(); } } }); /** * Fired when the shell app viewport is completely hidden. */ eventBus.addHandler(ShellAppsHiddenEvent.TYPE, new ShellAppsHiddenEvent.Handler() { @Override public void onShellAppsHidden(ShellAppsHiddenEvent event) { rpc.stopCurrentShellApp(); } }); /** * This one is only fired after swipe/keyboard navigation. */ eventBus.addHandler(ActivateAppEvent.TYPE, new ActivateAppEvent.Handler() { @Override public void onActivateApp(ActivateAppEvent event) { if (!ShellState.get().isShellAppStarting()) { log.log(Level.WARNING, "Starting from swipe/keyboard: " + event.getName()); ShellState.get().setAppStarting(); rpc.activateApp(Fragment.fromString("app:" + event.getName())); } } }); /** * Handles the address bar navigation. */ History.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { final Fragment newFragment = Fragment.fromString(event.getValue()); if (newFragment.equals(lastHandledFragment)) { return; } if (newFragment.isShellApp()) { if (!getConnection().hasActiveRequest() || !ShellState.get().isAppStarting()) { doShowShellApp(newFragment.resolveShellAppType()); } } else { if (lastHandledFragment != null) { log.warning("App navigation from " + lastHandledFragment.toFragment() + " to " + newFragment.toFragment() + (!newFragment.sameSubApp(lastHandledFragment) ? "" : "not") + ", request will %s be sent"); } // The fragment of the app that was last displayed in the viewport. final Fragment latestLoadedAppLocation = getState().currentAppUriFragment; /** * The new location points to the same app as before, means probably we have returned from the server roundtrip and app * state/location was refined. Either was - we should mark the state as 'app started'. */ if (newFragment.isSameApp(latestLoadedAppLocation)) { log.warning("Switching to 'APP STARTED' state since the updated app is already active"); ShellState.get().setAppStarted(); } /** * We either have no active request -> the location change came directly from address bar, so we have to navigate, * or the new app is requested, so we notify the server about it. */ if (!getConnection().hasActiveRequest() || !newFragment.isSameApp(lastHandledFragment)) { loadApp(newFragment.getAppName()); } if (ShellState.get().isAppStarting() || !getConnection().hasActiveRequest()) { rpc.activateApp(newFragment); } } lastHandledFragment = newFragment; } }); }
From source file:org.dussan.vaadin.dcharts.client.connector.DChartsConnector.java
License:Apache License
@Override protected void init() { super.init(); registerRpc(DChartsClientRPC.class, new DChartsClientRPC() { private static final long serialVersionUID = -3966553309119744743L; @Override/*from w w w . j a va2s. co m*/ public void setChartId(String id) { getWidget().setChartId(id); } @Override public void setChartData(Map<Integer, String> chartData) { getWidget().processChartData(chartData); } }); LayoutManager.get(getConnection()).addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { if (!getWidget().isChartPrepared()) { getWidget().prepareChart(); } } }); getWidget().addValueChangeHandler(this); }
From source file:org.vaadin.addons.portallayout.gwt.client.portal.connection.PortalLayoutConnector.java
License:Apache License
@Override protected void init() { super.init(); rpc = initRpc();//from w w w .j a va 2s .c o m this.heightRedistributionStrategy = initHeightRedistributionStrategy(); getLayoutManager().addElementResizeListener(getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { } }); }
From source file:org.vaadin.addons.portallayout.gwt.client.portal.connection.PortalLayoutConnector.java
License:Apache License
@Override protected Panel createWidget() { this.view = initView(); this.dropController = initDropController(); commonDragController.registerDropController(dropController); view.asWidget().addAttachHandler(new AttachEvent.Handler() { @Override// www . ja v a 2s . c o m public void onAttachOrDetach(AttachEvent event) { getLayoutManager().addElementResizeListener( ((ComponentConnector) getParent()).getWidget().getElement(), new ElementResizeListener() { @Override public void onElementResize(ElementResizeEvent e) { LayoutManager lm = e.getLayoutManager(); if (lm.getOuterHeight(e.getElement()) > lm .getOuterHeight(getWidget().getElement())) { //getWidget().getElement().getStyle().setProperty("height", lm.getOuterHeight(e.getElement()) + "px"); } } }); } }); return view.asWidget(); }