package com.vaadin.tests.components.ui; import com.vaadin.server.Page.UriFragmentChangedEvent; import com.vaadin.server.Page.UriFragmentChangedListener; import com.vaadin.server.VaadinRequest; import com.vaadin.tests.components.AbstractTestUI; import com.vaadin.tests.util.Log; import com.vaadin.ui.Button; import com.vaadin.ui.Button.ClickEvent; public class InitialFragmentEvent extends AbstractTestUI { private String lastKnownFragment = "\"no event received\""; private Log log = new Log(5); @Override protected void setup(VaadinRequest request) { getPage().addUriFragmentChangedListener( new UriFragmentChangedListener() { @Override public void uriFragmentChanged( UriFragmentChangedEvent source) { String newFragment = source.getUriFragment(); log.log("Fragment changed from " + lastKnownFragment + " to " + newFragment); lastKnownFragment = newFragment; } }); addComponent(log); addComponent(new Button("Set fragment to 'foo'", new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { setFragment("foo"); } })); addComponent(new Button("Set fragment to 'bar'", new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { setFragment("bar"); } })); } protected void setFragment(String fragment) { getPage().setUriFragment(fragment); } @Override protected Integer getTicketNumber() { // TODO Auto-generated method stub return null; } @Override protected String getTestDescription() { // TODO Auto-generated method stub return null; } }