From a0475419932d6c596c61a9ee520379ab2a86bcef Mon Sep 17 00:00:00 2001
From: Jouni Koivuviita
Date: Thu, 3 Sep 2009 11:01:44 +0000
Subject: [PATCH] Fixes #3233: Write migration guide for Button theme
svn changeset:8648/svn branch:6.1
---
WebContent/release-notes.html | 110 ++++++++++++++++++++++++++++------
1 file changed, 93 insertions(+), 17 deletions(-)
diff --git a/WebContent/release-notes.html b/WebContent/release-notes.html
index 0103d86261..bcb21e67bc 100644
--- a/WebContent/release-notes.html
+++ b/WebContent/release-notes.html
@@ -25,6 +25,7 @@
- Google Web Toolkit (GWT) is upgraded to version 1.7. You should recompile custom widget sets using the new version.
- - Performance improvements (general, Table caching)
+ - Performance improvements (general, Table caching)
- Google App Engine (GAE) support.
- Maven support
- - New NativeButton component that always uses the native button in the browser
- - New CssLayout layout component
-
- - A fast low-level layout where the contained components are rendered as trivially as possible under a single div element.
- - Result can be similar to VerticalLayout or HorizontalLayout, depending on CSS, but is noticeably faster.
- - No spacing, alignment or expansion rations, unlike with the more feature rich layouts.
- - No abstraction of browser differences; you need to make sure the CSS supports all the browser that you want your application to support.
-
+ - Major refactoring of the Button component implementation on the client side. See the section about Button modifications for more info.
+ - New NativeButton component that always uses the native button in the browser See the section about Button modifications for more info.
+ - New CssLayout layout component
+
+ - A fast low-level layout where the contained components are rendered as trivially as possible under a single div element.
+ - Result can be similar to VerticalLayout or HorizontalLayout, depending on CSS, but is noticeably faster.
+ - No spacing, alignment or expansion rations, unlike with the more feature rich layouts.
+ - No abstraction of browser differences; you need to make sure the CSS supports all the browser that you want your application to support.
+
+
- Full support for Internet Explorer 8
@@ -56,6 +59,79 @@ fixes, the most significant additions are:
Vaadin @version@ uses Google Web Toolkit 1.7.0, which is included in the gwt folder of the installation package.
+
+The previous version of the VButton widget (i.e. GWT counterpart for the Button component) was built using the native BUTTON element in the browser. Because of multiple theming issues that resulted from that (final nail in the coffin, #3079), the implementation was changed to a DIV based one.
+For the Runo theme this means that your application buttons will change their style when you update to 6.1. See the migration instructions for more help.
+
The previous version is now included as a new component called NativeButton, and it is always rendered with the native BUTTON element in the client side and will contain no additional styling.
+You shouldn't notice this change in any way, unless you've made modifications to the button CSS in a custom theme, or you're using the Runo theme. Below are listed the most important changes you need to consider.
+
+ - First off, all the original CSS class names of the button stay unmodified. Only the root element type is changed.
+ - One additional wrapping element is introduced in the DIV-based implementation.
+ - The CSS class names for VNativeButton are prefixed with
v-nativebutton
.
+ - The resulting HTML structures for both Button and NativeButton are shown below (changes emphasized):
+
+
+
+
+ VButton widget structure
+ div.v-button
+ span.v-button-wrap
+ [span.v-errorindicator]
+ [img.v-icon]
+ span.v-button-caption
+ |
+
+ VNativeButton widget structure
+ button.v-nativebutton
+ [span.v-errorindicator]
+ [img.v-icon]
+ span.v-nativebutton-caption
+ |
+
+
+
+
+
+
+
+If you've made additional styling to buttons in your custom theme, you may need to make changes both to your Java and CSS code.
+
+
+
+
+ Runo theme
+ Unmodified Buttons
+
+ - If you prefer the original, native button look, change all buttons in your application from Button to NativeButton.
+
+ Themed Buttons
+
+ - Replace the Button with NativeButton
+ - In your theme CSS, find-and-replace
.v-button → .v-nativebutton
+
+ |
+
+ Reindeer theme
+ Unmodified Buttons
+
+ - No actions are needed.
+
+ Buttons with a completely different look
+
+ - Replace the Button with NativeButton
+ - In your theme CSS, find-and-replace
.v-button → .v-nativebutton
+
+ Buttons with a some modifications/additions
+ We cannot provide a comprehensive migration guide for these situations, since every case will most likely require different actions.
+ But if your modified buttons looks broken, it is most likely caused by the additional element in the HTML structure (span.v-button-wrap ). Most of the styles previously applied on .v-button-caption have been moved to .v-button-wrap , so be sure to change your CSS accordingly.
+ |
+
+
+
+And if all else fails, you're always welcome to ask further questions on our forum, we're there to help.
+
+
+
When upgrading from an earlier version of the Vaadin library, you should always do the following:
@@ -66,7 +142,7 @@ fixes, the most significant additions are:
If you have custom widget sets, recompile them with the new Vaadin library using the included GWT compiler
If using the Eclipse IDE:
- - Refresh the Eclipse project by selecting the project folder and pressing F5
+ - Refresh the Eclipse project by selecting the project folder and pressing F5
- Restart the application server
@@ -87,7 +163,7 @@ some name prefixes, and some other details.
In all Java files using IT Mill Toolkit, rename package prefix com.itmill.toolkit → com.vaadin
You also need to update the web.xml deployment descriptor:
- - The servlet class is now com.vaadin.terminal.gwt.server.ApplicationServlet.
+ - The servlet class is now com.vaadin.terminal.gwt.server.ApplicationServlet.
@@ -121,7 +197,7 @@ some name prefixes, and some other details.
Other changes in naming:
- - Rename references to translateToolkitUri() → translateVaadinUri() method in ApplicationConnection class.
+
- Rename references to translateToolkitUri() → translateVaadinUri() method in ApplicationConnection class.
@@ -143,8 +219,8 @@ client-side widgets with Google Web Toolkit (GWT).
Possible problems when building widgetset using Windows and JDK 1.5. See Known Problems #2891 below.
- The "I" (IT Mill) prefix in client-side widget classes has been changed to "V" (Vaadin), for example: IButton → VButton.
- Rename IToolkitOverlay → VOverlay
+ The "I" (IT Mill) prefix in client-side widget classes has been changed to "V" (Vaadin), for example: IButton → VButton.
+ Rename IToolkitOverlay → VOverlay
@@ -316,10 +392,10 @@ application servers:
it:
- - Mozilla Firefox release 3
+ - Mozilla Firefox 3
- Internet Explorer releases 6, 7, and 8
- - Safari 3
- - Opera 9.6
+ - Safari 3 and 4
+ - Opera 9.6 and 10
The support for browsers follows the support by GWT. The browsers are supported on both
--
2.39.5