You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

MenuItemStyleRemoved.java 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package com.vaadin.tests.components.menubar;
  2. import com.vaadin.server.Page;
  3. import com.vaadin.server.VaadinRequest;
  4. import com.vaadin.server.WebBrowser;
  5. import com.vaadin.tests.components.AbstractReindeerTestUI;
  6. import com.vaadin.ui.Button;
  7. import com.vaadin.ui.JavaScript;
  8. import com.vaadin.ui.MenuBar;
  9. public class MenuItemStyleRemoved extends AbstractReindeerTestUI {
  10. protected static final String MENUITEM_CLASS = "v-menubar-menuitem";
  11. @Override
  12. protected void setup(VaadinRequest request) {
  13. MenuBar menuBar = new MenuBar();
  14. MenuBar.MenuItem first = menuBar.addItem("first", null, null);
  15. first.addItem("first sub-item 1", null, null);
  16. first.addItem("first sub-item 2", null, null);
  17. MenuBar.MenuItem second = menuBar.addItem("second", null, null);
  18. second.addItem("second sub-item 2", null, null);
  19. second.addItem("second sub-item 2", null, null);
  20. addComponent(menuBar);
  21. addButton("Add styles", new Button.ClickListener() {
  22. @Override
  23. public void buttonClick(Button.ClickEvent event) {
  24. String method = "getElementsByClassName('" + MENUITEM_CLASS
  25. + "')";
  26. WebBrowser webBrowser = Page.getCurrent().getWebBrowser();
  27. if (webBrowser.isIE()
  28. && webBrowser.getBrowserMajorVersion() == 8) {
  29. method = "querySelectorAll('." + MENUITEM_CLASS + "')";
  30. }
  31. JavaScript.getCurrent()
  32. .execute("var x=document." + method + ";"
  33. + " var i; for (i=0; i < x.length; i++)"
  34. + " {x[i].className += ' custom-menu-item'};");
  35. }
  36. });
  37. }
  38. @Override
  39. protected Integer getTicketNumber() {
  40. return 17242;
  41. }
  42. @Override
  43. protected String getTestDescription() {
  44. return "MenuItem's custom class names removed when hovering";
  45. }
  46. }