При изменении состояния или при наведении курсора на кнопку GWT добавит дополнительные элементы к элементу. Эти стили являются стандартными, и даже если вы переопределите основной стиль (как вы это сделали с demo-ToggleButton), GWT все равно будет использовать те же дополнительные стили.
Итак, вы увидите что-то вроде этого:
<div tabindex="0" class="gwt-ToggleButton gwt-ToggleButton-up-hovering">
Обратите внимание, что даже если вы используете свой основной стиль, вы все равно увидите, что GWT добавляет .gwt-ToggleButton-up-hovering ... он не будет знать, чтобы поддерживать ваш префикс "demo":
<div tabindex="0" class="demo-ToggleButton gwt-ToggleButton-up-hovering">
Таким образом, в разделе стилей вашего пользовательского интерфейса Binder вы должны добавить следующие стили:
@external gwt-ToggleButton-up, gwt-ToggleButton-down, gwt-ToggleButton-up-hovering, gwt-ToggleButton-down-hovering;
.gwt-ToggleButton-up { }
.gwt-ToggleButton-down { }
.gwt-ToggleButton-up-hovering { }
.gwt-ToggleButton-down-hovering { }
Обязательно объявите их как "внешние", как указано выше, что предотвратит их запутывание компилятором GWT. Это должно позволить вам переопределить стили GWT по умолчанию.