[gwt-contrib] [google-web-toolkit] kellegous commented on revision r4076.
[google-web-toolkit] kellegous commented on revision r4076. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4076 General Comment: HandlerManager updates. Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (r4074) === Line 136: H handler = getFlatHandler(base, i); --- Doesn't compile: H handler = this.getFlatHandler(base, i); That fixes the compilation issue. Seems like an odd failure to me, could be a JDT problem in our compiler. Line 145: H handler = getHandler(handlers, i); --- Same compilation issue. Line 167: throw new IndexOutOfBoundsException("index: " + index); --- When would an IndexOutOfBoundsException not be our bug here? I'm wondering if this should just be an assert. Line 187: return this[base + 1]; --- this space is still here. Line 250:for(var i = 0; i < count;i++){ --- Indentation is still off here. Line 292: javaScriptRegistry = JavaScriptObject.createObject().cast(); --- Shouldn't this be JavaScriptObject.createArray().cast()? Line 327: if (event.isLive() == false) { --- !event.isLive() Line 463: @SuppressWarnings("unchecked") --- No uncheck operations in here now. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4076 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] kellegous commented on revision r4076.
[google-web-toolkit] kellegous commented on revision r4076. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4076 General Comment: Going back through changes since last review. Some more comments on GwtEvent. Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEvent.java (r4046) === Line 19: * Root of all gwt events. All gwt events are considered dead and should no --- s/gwt/GWT/ Line 26: public abstract class GwtEvent { --- I must admit that I'm still bothered by the fact that the ability to revive events is part of the root class of events and therefore must be a part of every event in the system. Yet, it's a system we don't even use in our non-dom events. Plus, if we were to remove everything pertaining to reviving events, the only thing left would be the source. When you do that, GwtEvent as an interface seems pretty appealing. Line 38: private int index; --- final Line 59: private boolean dead; --- Did we ever resolve this: "Do we need this? It seems like dead == true and source == null have the same meaning." Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4076 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4076 - trunk/tools/api-checker/config
Author: [EMAIL PROTECTED] Date: Thu Nov 13 21:11:40 2008 New Revision: 4076 Modified: trunk/tools/api-checker/config/gwt15_16userApi.conf Log: LinkedHashMap_CustomFieldSerializer.java was included twice when building the TypeOracle, one in user/super and the other in user/src. It seems that when both were included, sometime both were dropped. And when that happened for the 1.6/trunk api, it resulted in an error. The proper fix seems to be to just include one of them in this file, and have another api-checker run to check compatibility between the super-source and non-super-source files. Patch by: amitmanjhi Review by: scottb (TBR) Modified: trunk/tools/api-checker/config/gwt15_16userApi.conf == --- trunk/tools/api-checker/config/gwt15_16userApi.conf (original) +++ trunk/tools/api-checker/config/gwt15_16userApi.conf Thu Nov 13 21:11:40 2008 @@ -3,7 +3,7 @@ name_old gwt15userApi #sourceFiles and excludedFiles are specified as colon-separated list of files sourceFiles_old @OLDROOT@/dev/core/super:@OLDROOT@/user/super:@OLDROOT@/user/src -excludedFiles_old @OLDROOT@/user/src/com/google/gwt/benchmarks:@OLDROOT@/user/src/com/google/gwt/junit:@OLDROOT@/user/src/com/google/gwt/i18n/rebind:@OLDROOT@/user/src/com/google/gwt/i18n/tools:@OLDROOT@/user/src/com/google/gwt/json:@OLDROOT@/user/src/com/google/gwt/user/rebind:@OLDROOT@/user/src/com/google/gwt/user/server:@OLDROOT@/user/src/com/google/gwt/user/tools:@OLDROOT@/user/super/com/google/gwt/benchmarks:@OLDROOT@/user/super/com/google/gwt/junit +excludedFiles_old @OLDROOT@/user/src/com/google/gwt/benchmarks:@OLDROOT@/user/src/com/google/gwt/junit:@OLDROOT@/user/src/com/google/gwt/i18n/rebind:@OLDROOT@/user/src/com/google/gwt/i18n/tools:@OLDROOT@/user/src/com/google/gwt/json:@OLDROOT@/user/src/com/google/gwt/user/rebind:@OLDROOT@/user/src/com/google/gwt/user/server:@OLDROOT@/user/src/com/google/gwt/user/tools:@OLDROOT@/user/super/com/google/gwt/benchmarks:@OLDROOT@/user/super/com/google/gwt/junit:@OLDROOT@/user/super/com/google/gwt/user ## #new Api @@ -12,7 +12,7 @@ #sourceFiles and excludedFiles are specified as colon-separated list of files sourceFiles_new ./dev/core/super:./user/super:./user/src #:dev/core/src -excludedFiles_new ./user/src/com/google/gwt/benchmarks:./user/src/com/google/gwt/junit:./user/src/com/google/gwt/i18n/rebind:./user/src/com/google/gwt/i18n/tools:./user/src/com/google/gwt/json:./user/src/com/google/gwt/user/rebind:./user/src/com/google/gwt/user/server:./user/src/com/google/gwt/user/tools:./user/super/com/google/gwt/benchmarks:./user/super/com/google/gwt/junit +excludedFiles_new ./user/src/com/google/gwt/benchmarks:./user/src/com/google/gwt/junit:./user/src/com/google/gwt/i18n/rebind:./user/src/com/google/gwt/i18n/tools:./user/src/com/google/gwt/json:./user/src/com/google/gwt/user/rebind:./user/src/com/google/gwt/user/server:./user/src/com/google/gwt/user/tools:./user/super/com/google/gwt/benchmarks:./user/super/com/google/gwt/junit:./user/super/com/google/gwt/user ## #excluded packages --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4075 - branches/1_6_clean_events/user/test/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 20:44:59 2008 New Revision: 4075 Modified: branches/1_6_clean_events/user/test/com/google/gwt/user/client/ui/TextBoxBaseTestBase.java Log: TextBox needs to be attached to root panel for events to consistantly fire. Modified: branches/1_6_clean_events/user/test/com/google/gwt/user/client/ui/TextBoxBaseTestBase.java == --- branches/1_6_clean_events/user/test/com/google/gwt/user/client/ui/TextBoxBaseTestBase.java (original) +++ branches/1_6_clean_events/user/test/com/google/gwt/user/client/ui/TextBoxBaseTestBase.java Thu Nov 13 20:44:59 2008 @@ -98,6 +98,9 @@ public void testValueChangeEvent() { TextBoxBase tb = createTextBoxBase(); + +// To work cross-platform, the tb must be added to the root panel. +RootPanel.get().add(tb); Handler h = new Handler(); tb.addValueChangeHandler(h); tb.setText("able"); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4074 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 20:25:01 2008 New Revision: 4074 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: busting down the public methods in Js and Java handle registries to be private. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Thu Nov 13 20:25:01 2008 @@ -35,7 +35,7 @@ private static class JavaHandlerRegistry extends HashMap, ArrayList> { -public void addHandler(Type type, H handler) { +private void addHandler(Type type, H handler) { ArrayList l = get(type); if (l == null) { l = new ArrayList(); @@ -44,7 +44,7 @@ l.add(handler); } -public void fireEvent(GwtEvent event) { +private void fireEvent(GwtEvent event) { Type type = event.getAssociatedType(); int count = getHandlerCount(type); for (int i = 0; i < count; i++) { @@ -53,13 +53,19 @@ } } -public H getHandler(GwtEvent.Type eventKey, +@SuppressWarnings("unchecked") +private ArrayList get(GwtEvent.Type type) { + // This cast is safe because we control the puts. + return (ArrayList) super.get(type); +} + +private H getHandler(GwtEvent.Type eventKey, int index) { ArrayList l = get(eventKey); return l.get(index); } -public int getHandlerCount(GwtEvent.Type eventKey) { +private int getHandlerCount(GwtEvent.Type eventKey) { ArrayList l = super.get(eventKey); if (l == null) { return 0; @@ -68,19 +74,13 @@ } } -public void removeHandler(GwtEvent.Type eventKey, H handler) { +private void removeHandler(GwtEvent.Type eventKey, H handler) { ArrayList l = get(eventKey); if (l != null) { boolean result = l.remove(handler); assert result : "Tried to remove unknown handler"; } } - -@SuppressWarnings("unchecked") -private ArrayList get(GwtEvent.Type type) { - // This cast is safe because we control the puts. - return (ArrayList) super.get(type); -} } /** @@ -101,7 +101,7 @@ protected JsHandlerRegistry() { } -public final void addHandler( +private void addHandler( Type type, H myHandler) { // The base is the equivalent to a c pointer into the flattened handler @@ -125,7 +125,7 @@ setCount(base, count + 1); } -public final void fireEvent(GwtEvent event) { +private void fireEvent(GwtEvent event) { Type type = event.getAssociatedType(); int base = type.hashCode(); int count = getCount(base); @@ -150,35 +150,6 @@ } } -public final H getHandler(GwtEvent.Type type, -int index) { - int base = type.hashCode(); - int count = getCount(base); - if (index >= count) { -throw new IndexOutOfBoundsException("index: " + index); - } - return getHandler(base, index, isFlattened(base)); -} - -public final int getHandlerCount(GwtEvent.Type eventKey) { - return getCount(eventKey.hashCode()); -} - -public final void removeHandler(GwtEvent.Type eventKey, -EventHandler handler) { - int base = eventKey.hashCode(); - - // Removing a handler is unusual, so smaller code is preferable to - // handling both flat and dangling list of pointers. - if (isFlattened(base)) { -unflatten(base); - } - boolean result = removeHelper(base, handler); - // Hiding this behind an assertion as we'd rather not force the compiler - // to have to include all handler.toString() instances. - assert result : handler + " did not exist"; -} - private native int getCount(int index) /*-{ var count = this[index]; return count == null? 0:count; @@ -188,6 +159,16 @@ return this[base + 2 + index]; }-*/; +private H getHandler(GwtEvent.Type type, +int index) { + int base = type.hashCode(); + int count = getCount(base); + if (index >= count) { +throw new IndexOutOfBoundsException("index: " + index); + } + return getHandler(base, index, isFlattened(base)); +} + private native H getHandler(int base, int index, boolean flattened) /*-{ return flattened? this[base + 2 + index]: this[base + 1][index]; @@ -198,6 +179,10 @@ return handlers[index]; }-*/; +private int getHandlerCount(GwtEvent.Type eventKey) { + return getCount(eventKey.hashCode()); +} + private native JavaScriptObject getHandlers(int base) /*-{ return t
[gwt-contrib] [google-web-toolkit commit] r4073 - trunk/tools/api-checker/src/com/google/gwt/tools/apichecker
Author: [EMAIL PROTECTED] Date: Thu Nov 13 20:23:38 2008 New Revision: 4073 Modified: trunk/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java Log: Turning on logging to figure out what is going on in the build machine. Will revert these later. Patch by: amitmanjhi Modified: trunk/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java == --- trunk/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java (original) +++ trunk/tools/api-checker/src/com/google/gwt/tools/apichecker/ApiCompatibilityChecker.java Thu Nov 13 20:23:38 2008 @@ -87,7 +87,7 @@ public static final boolean DEBUG = false; // prints the API of the two containers, false by default. - public static final boolean DEBUG_PRINT_ALL_API = false; + public static final boolean DEBUG_PRINT_ALL_API = true; // these two parameters print APIs common in the two repositories. Should be // false by default. @@ -106,7 +106,7 @@ public static final boolean DEBUG_DUPLICATE_REMOVAL = false; // Tweak for log output. - public static final TreeLogger.Type type = TreeLogger.WARN; + public static final TreeLogger.Type type = TreeLogger.INFO; // remove duplicates by default public static Collection getApiDiff(ApiContainer newApi, @@ -276,4 +276,4 @@ return hashSet; } -} \ No newline at end of file +} --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4072 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 20:22:40 2008 New Revision: 4072 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: As initial benchmarks are leaning towards the desire to include the more complicated handler registry, it seems reasonably safe to add it back in. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Thu Nov 13 20:22:40 2008 @@ -15,6 +15,8 @@ */ package com.google.gwt.event.shared; +import com.google.gwt.core.client.GWT; +import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.event.shared.GwtEvent.Type; import com.google.gwt.user.client.Command; @@ -81,10 +83,182 @@ } } + /** + * Default JavaScript handler registry. This is in the shared class but should + * never be called outside of a GWT runtime environment. + * + * The JsHandlerRegistry makes use of the fact that in the large majority of + * cases, only one or two handlers are added for each event type. Therefore, + * rather than storing handlers in a list of lists, we store then in a single + * flattened array with an escape clause to handle the rare case where we have + * more handlers then expected. + */ + private static class JsHandlerRegistry extends JavaScriptObject { + +/** + * Required constructor. + */ +protected JsHandlerRegistry() { +} + +public final void addHandler( +Type type, H myHandler) { + + // The base is the equivalent to a c pointer into the flattened handler + // data structure. + int base = type.hashCode(); + int count = getCount(base); + boolean flattened = isFlattened(base); + H handler = myHandler; + // If we already have the maximum number of handlers we can store in the + // flattened data structure, store the handlers in an external list + // instead. + if ((count == EXPECTED_HANDLERS) & flattened) { +unflatten(base); +flattened = false; + } + if (flattened) { +setFlatHandler(base, count, handler); + } else { +setHandler(base, count, handler); + } + setCount(base, count + 1); +} + +public final void fireEvent(GwtEvent event) { + Type type = event.getAssociatedType(); + int base = type.hashCode(); + int count = getCount(base); + boolean isFlattened = isFlattened(base); + if (isFlattened) { +for (int i = 0; i < count; i++) { + // Gets the given handler to fire. + H handler = getFlatHandler(base, i); + // Fires the handler. + event.dispatch(handler); +} + } else { +JavaScriptObject handlers = getHandlers(base); +for (int i = 0; i < count; i++) { + // Gets the given handler to fire. + + H handler = getHandler(handlers, i); + + // Fires the handler. + event.dispatch(handler); +} + } +} + +public final H getHandler(GwtEvent.Type type, +int index) { + int base = type.hashCode(); + int count = getCount(base); + if (index >= count) { +throw new IndexOutOfBoundsException("index: " + index); + } + return getHandler(base, index, isFlattened(base)); +} + +public final int getHandlerCount(GwtEvent.Type eventKey) { + return getCount(eventKey.hashCode()); +} + +public final void removeHandler(GwtEvent.Type eventKey, +EventHandler handler) { + int base = eventKey.hashCode(); + + // Removing a handler is unusual, so smaller code is preferable to + // handling both flat and dangling list of pointers. + if (isFlattened(base)) { +unflatten(base); + } + boolean result = removeHelper(base, handler); + // Hiding this behind an assertion as we'd rather not force the compiler + // to have to include all handler.toString() instances. + assert result : handler + " did not exist"; +} + +private native int getCount(int index) /*-{ + var count = this[index]; + return count == null? 0:count; +}-*/; + +private native H getFlatHandler(int base, int index) /*-{ + return this[base + 2 + index]; +}-*/; + +private native H getHandler(int base, int index, +boolean flattened) /*-{ + return flattened? this[base + 2 + index]: this[base + 1][index]; +}-*/; + +private native H getHandler( +JavaScriptObject handlers, int index) /*-{ + return handlers[index]; +}-*/; + +private native JavaScriptObject getHandlers(int base) /*-{ + return this[base + 1]; +}-*/; + +priva
[gwt-contrib] Re: review request: GwtTransient annotation
@NotSerializable, however, doesn't capture the "serializable for other purposes, just not for GWT" semantic. Granted, the FQCN of the annotation specifies that it's a GWT annotation, but it may still be worth putting something into the base name, e.g. @NotGwtSerializable. However, moving towards Bruce's comment about more general use cases and trying to retain some sense of "cool," we might consider @SerializationHints(...) or @GwtSerializationHints(...), using the value to specify attributes: @SerializationHints(TRANSIENT), @SerializationHints(@Nullable Class[] whitelist, @Nullable Class[] blacklist), @SerializationHints(OBFUSCATEDCLASSNAMES), etc. (A value-sensitive annotation also concerns me less if it doesn't basename-identify as "Gwt," but that may be my aesthetic quirk.) On Thu, Nov 13, 2008 at 8:41 PM, Bruce Johnson <[EMAIL PROTECTED]> wrote: > Minor nit regarding the terminology, probably mostly just aesthetic on my > part. "GwtTransient" doesn't sound that cool to me. > Could we name it now to align with a more comprehensive effort later > related to more developer control of RPC? For example, what if we called the > annotation @NotSerializable. Then, we could also honor the annotation > applying to an entire class in addition to fields. If that spanned > inheritance, then it would be an easy way to blacklist entire hierarchies of > classes. > > It isn't perfect, but we'd get a useful first step toward an full-featured > RPC whitelist/blacklist facility. (In the general case, of course, you want > to specify serializable-ness relative to a particular RPC service interface, > not on the class itself. But it's a start...) > > > On Thu, Nov 13, 2008 at 11:30 AM, Lex Spoon <[EMAIL PROTECTED]> wrote: > >> Bob, can you review the small attached patch? I can ask others if you >> are slammed, but it's small and affects code you are familiar with, so >> I thought I'd ask you first. >> >> This patch implements support for a @GwtTransient annotation. >> @GwtTransient means the same thing as the transient keyword, but it is >> ignored by all serialization systems other than GWT's. Usually the >> transient keyword should be used in preference to this >> annotation. However, for types used with multiple serialization >> systems, it can be useful. The motivation is discussed further in >> these bug reports: >> >> http://code.google.com/p/google-web-toolkit/issues/detail?id=2931 >> http://code.google.com/p/google-web-toolkit/issues/detail?id=2964 >> >> >> The patch simply adds the annotation and checks it in the places >> isTransient is currently checked. So, from GWT's point of view, >> isTransient and @GwtTransient are equivalent. >> >> >> -Lex >> >> >> > > > > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Flurry of Data binding threads
Hello Emily, > > *Metadata Systems, comprising Models and Controllers* > xforms, Ian's databinding system, Arthur's validation system, gwt team's > upcoming proposal for data management: Do you have links to the above resources please, where we could find more details/sources? Also, you mentioned GWT team's upcoming proposal for data management - is it available online yet? Thanks, Rahul --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: review request: GwtTransient annotation
Minor nit regarding the terminology, probably mostly just aesthetic on my part. "GwtTransient" doesn't sound that cool to me. Could we name it now to align with a more comprehensive effort later related to more developer control of RPC? For example, what if we called the annotation @NotSerializable. Then, we could also honor the annotation applying to an entire class in addition to fields. If that spanned inheritance, then it would be an easy way to blacklist entire hierarchies of classes. It isn't perfect, but we'd get a useful first step toward an full-featured RPC whitelist/blacklist facility. (In the general case, of course, you want to specify serializable-ness relative to a particular RPC service interface, not on the class itself. But it's a start...) On Thu, Nov 13, 2008 at 11:30 AM, Lex Spoon <[EMAIL PROTECTED]> wrote: > Bob, can you review the small attached patch? I can ask others if you > are slammed, but it's small and affects code you are familiar with, so > I thought I'd ask you first. > > This patch implements support for a @GwtTransient annotation. > @GwtTransient means the same thing as the transient keyword, but it is > ignored by all serialization systems other than GWT's. Usually the > transient keyword should be used in preference to this > annotation. However, for types used with multiple serialization > systems, it can be useful. The motivation is discussed further in > these bug reports: > > http://code.google.com/p/google-web-toolkit/issues/detail?id=2931 > http://code.google.com/p/google-web-toolkit/issues/detail?id=2964 > > > The patch simply adds the annotation and checks it in the places > isTransient is currently checked. So, from GWT's point of view, > isTransient and @GwtTransient are equivalent. > > > -Lex > > > > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4071 - branches/1_6_clean_events
Author: [EMAIL PROTECTED] Date: Thu Nov 13 17:14:57 2008 New Revision: 4071 Modified: branches/1_6_clean_events/branch-info.txt Log: update branchinfo.txt w/previous up-integrate change number Modified: branches/1_6_clean_events/branch-info.txt == --- branches/1_6_clean_events/branch-info.txt (original) +++ branches/1_6_clean_events/branch-info.txt Thu Nov 13 17:14:57 2008 @@ -6,6 +6,6 @@ /branches/1_6_clean_events was created from /releases/[EMAIL PROTECTED] Merges: -/releases/[EMAIL PROTECTED]:3957 was merged () into this branch +/releases/[EMAIL PROTECTED]:3957 was merged (3963) into this branch -> The next merge into this branch will be r3957: --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Turning off runtime checks
It's quit easy to determine if an argument to a checl method has side effects - if I recall there's a has side effects() ... At worst the method invocation is removed but the "block" is kept because of the sideeffects... In the end some statements have been eliminated which can only help make things just a bit faster... Sent from my iPhone On 14/11/2008, at 11:48 AM, "Ray Cromwell" <[EMAIL PROTECTED]> wrote: > > The logic would have to be a little more complicated than that, since > the method invocations could have side effects (checkIndex(i++, x=y, > etc)) which would need hoisting. > > -Ray > > > On Thu, Nov 13, 2008 at 3:02 PM, Miroslav Pokorny > <[EMAIL PROTECTED]> wrote: >> This problem could be solved by introducing the ability to remove >> methods >> marked with a particular annotation when some option was enabled >> and have >> them eliminated accordingly. >> >> Imagine the ClassCastChecking and ArrayIndexChecking were done by two >> methods on some imaginary helper class used by the gwt runtime. >> >> class GwtRuntime >> @CheckClassCast >> - checkClassCast >> >> @CheckArrayIndex >> - checkArrayIndex >> >> Given that the compiler in this contrived example insert calls to >> the above >> two methods all over the place one could easily remove them if you >> wanted to >> improve performance as per Ray's suggestion. >> >> Pseudo code for the JModVisitor could look like this... >> >> Visit all method target invocations. >> if target method has one of the eliminate me annotations then >> remove method invocation. >> end if >> >> If the actual list of annotations could be set on the command line >> it would >> also allow me to eliminate my own check methods which i might not >> want in my >> super fast production version. >> >> As a side note the problem with asserts is its an all of nothing >> its quite >> difficult / hard to pinpoint that one wants to remove only one type >> of js >> construct as opposed to all. Using different annotations allows one >> to >> categorise and eliminate at will. >> >> >> On Thu, Nov 13, 2008 at 9:03 PM, Ray Cromwell >> <[EMAIL PROTECTED]> wrote: >>> >>> Bruce, >>> I'm kinda swamped myself right now, but I can whip something up >>> after Thanksgiving. I like John's proposal too, since I like more >>> powerful general purpose optimizations, but it seems like a lot more >>> work than yours, and given time constraints I'd probably hack in >>> your >>> -X proposals. Of course, I'd like to hear any and all objections >>> from >>> the GWT team before I start a patch, since there's a difference >>> between "potentially unsafe" and "guaranteed to break correct >>> programs" :) >>> >>> -Ray >>> >>> >>> On Tue, Nov 11, 2008 at 12:02 PM, Bruce Johnson <[EMAIL PROTECTED]> >>> wrote: How about we start a convention for -Xunsafe:yyy flags, like -Xunsafe:disableArrayIndexChecks -Xunsafe:disableClassCastChecks -Xunsafe:disableDefensiveCollections then we'd want a roll-up flag like -Xunsafe:all Of course, we'd want to not document these. @Ray: The compiler guys are slammed right now. But if you have anything resembling a patch that could start this pattern, I think that's the only realistic way to get this done in the short term. Also, I'd like to see if Scott/Lex/anyone else disagree before we proceeded down this path. On Tue, Nov 11, 2008 at 2:47 PM, Ray Cromwell <[EMAIL PROTECTED] > wrote: > > Is there any objection to changing the checkIndex() method in > AbstractList to an assert? I suppose one might want JRE behavior > in HM > even if assertions are disabled, but perhaps we could just check > !GWT.isScript() and use if vs assert. I noticed that if you > hammer on > ArrayList, a very large number of calls are generated to > checkIndex. > Current, about 1.5% of runtime. There's also it's friend, setCheck > too. > > These seem like easy performance wins with very little work, of > course, we want the compiler to continue to get better at well, > like > doing range check elimination where it can. :) > > -Ray > > On Tue, Nov 11, 2008 at 7:54 AM, Bruce Johnson <[EMAIL PROTECTED]> > wrote: >> On Tue, Nov 11, 2008 at 10:51 AM, Isaac Truett >> <[EMAIL PROTECTED]> >> wrote: >>> I'm curious what things you're referring to here. Generally, I think we're pretty open to more checks in hosted mode. As an example, hosted mode always runs with assertions enabled. >>> >>> More assertions are exactly what I've been hoping for. The one >>> case >>> that's stuck with me was issue 2365. As I understand it, those >>> assertions (and the check method, if only called in >>> assertions) will >>> all be compiled away, so there's no
[gwt-contrib] Re: Turning off runtime checks
The logic would have to be a little more complicated than that, since the method invocations could have side effects (checkIndex(i++, x=y, etc)) which would need hoisting. -Ray On Thu, Nov 13, 2008 at 3:02 PM, Miroslav Pokorny <[EMAIL PROTECTED]> wrote: > This problem could be solved by introducing the ability to remove methods > marked with a particular annotation when some option was enabled and have > them eliminated accordingly. > > Imagine the ClassCastChecking and ArrayIndexChecking were done by two > methods on some imaginary helper class used by the gwt runtime. > > class GwtRuntime > @CheckClassCast > - checkClassCast > > @CheckArrayIndex > - checkArrayIndex > > Given that the compiler in this contrived example insert calls to the above > two methods all over the place one could easily remove them if you wanted to > improve performance as per Ray's suggestion. > > Pseudo code for the JModVisitor could look like this... > > Visit all method target invocations. > if target method has one of the eliminate me annotations then > remove method invocation. > end if > > If the actual list of annotations could be set on the command line it would > also allow me to eliminate my own check methods which i might not want in my > super fast production version. > > As a side note the problem with asserts is its an all of nothing its quite > difficult / hard to pinpoint that one wants to remove only one type of js > construct as opposed to all. Using different annotations allows one to > categorise and eliminate at will. > > > On Thu, Nov 13, 2008 at 9:03 PM, Ray Cromwell <[EMAIL PROTECTED]> wrote: >> >> Bruce, >> I'm kinda swamped myself right now, but I can whip something up >> after Thanksgiving. I like John's proposal too, since I like more >> powerful general purpose optimizations, but it seems like a lot more >> work than yours, and given time constraints I'd probably hack in your >> -X proposals. Of course, I'd like to hear any and all objections from >> the GWT team before I start a patch, since there's a difference >> between "potentially unsafe" and "guaranteed to break correct >> programs" :) >> >> -Ray >> >> >> On Tue, Nov 11, 2008 at 12:02 PM, Bruce Johnson <[EMAIL PROTECTED]> wrote: >> > How about we start a convention for -Xunsafe:yyy flags, like >> > >> > -Xunsafe:disableArrayIndexChecks >> > -Xunsafe:disableClassCastChecks >> > -Xunsafe:disableDefensiveCollections >> > >> > then we'd want a roll-up flag like >> > >> > -Xunsafe:all >> > >> > Of course, we'd want to not document these. >> > @Ray: The compiler guys are slammed right now. But if you have anything >> > resembling a patch that could start this pattern, I think that's the >> > only >> > realistic way to get this done in the short term. Also, I'd like to see >> > if >> > Scott/Lex/anyone else disagree before we proceeded down this path. >> > On Tue, Nov 11, 2008 at 2:47 PM, Ray Cromwell <[EMAIL PROTECTED]> >> > wrote: >> >> >> >> Is there any objection to changing the checkIndex() method in >> >> AbstractList to an assert? I suppose one might want JRE behavior in HM >> >> even if assertions are disabled, but perhaps we could just check >> >> !GWT.isScript() and use if vs assert. I noticed that if you hammer on >> >> ArrayList, a very large number of calls are generated to checkIndex. >> >> Current, about 1.5% of runtime. There's also it's friend, setCheck >> >> too. >> >> >> >> These seem like easy performance wins with very little work, of >> >> course, we want the compiler to continue to get better at well, like >> >> doing range check elimination where it can. :) >> >> >> >> -Ray >> >> >> >> On Tue, Nov 11, 2008 at 7:54 AM, Bruce Johnson <[EMAIL PROTECTED]> >> >> wrote: >> >> > On Tue, Nov 11, 2008 at 10:51 AM, Isaac Truett <[EMAIL PROTECTED]> >> >> > wrote: >> >> >> >> >> >> > I'm curious what things you're referring to here. Generally, I >> >> >> > think >> >> >> > we're >> >> >> > pretty open to more checks in hosted mode. As an example, hosted >> >> >> > mode >> >> >> > always >> >> >> > runs with assertions enabled. >> >> >> >> >> >> More assertions are exactly what I've been hoping for. The one case >> >> >> that's stuck with me was issue 2365. As I understand it, those >> >> >> assertions (and the check method, if only called in assertions) will >> >> >> all be compiled away, so there's no size or performance penalty in >> >> >> web >> >> >> mode. >> >> > >> >> > That's exactly right. And as we add new library classes, I anticipate >> >> > we'll >> >> > be doing a lot more assertion checking versus if/then/throw type >> >> > tests. >> >> > This >> >> > is one area where I honestly believe the traditional Java patterns >> >> > are >> >> > just >> >> > plain wrong: coding that's far too defensive. >> >> > > >> >> > >> >> >> >> >> > >> > >> > > >> > >> >> > > > > -- > mP > > > > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~---
[gwt-contrib] Re: prune serializers depending on whether types are sent to/from the browser
LGTM. Makes sense. Good news on the savings!! kathrin On Wed, Nov 12, 2008 at 6:24 PM, Lex Spoon <[EMAIL PROTECTED]> wrote: > Hi, Kathrin, > > Can you review this patch for me? > > This implements an idea the group has been talking about a long time: > when generating serializers and deserializers for RPC, don't support > sending types *to* the browser that are only sent *from* the browser, > and vice versa. > > The main changes are: > > 1. Instead of a single set of types, several classes now have two sets > named "typesSentToBrowser" and "typesSentFromBrowser". > > 2. ProxyCreator.writeTypeMethods leaves out entries for methods that > are not used. > > 3. The format of the RPC serialization policy file needed updating. > Previously it only had to indicate which types could be sent across > the wire. Now it needs to include info about which direction the > types can be sent in. > > > There are also some rippling changes: > > - Many of the instance methods of SerializableTypeOracle are > made static methods in SerializableUtils. It got weird > to have to choose which of to STO's to query, even though > they would both have the same answer. > > - JsParser can now handle "undefined". > > > > -Lex > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Turning off runtime checks
This problem could be solved by introducing the ability to remove methods marked with a particular annotation when some option was enabled and have them eliminated accordingly. Imagine the ClassCastChecking and ArrayIndexChecking were done by two methods on some imaginary helper class used by the gwt runtime. class GwtRuntime @CheckClassCast - checkClassCast @CheckArrayIndex - checkArrayIndex Given that the compiler in this contrived example insert calls to the above two methods all over the place one could easily remove them if you wanted to improve performance as per Ray's suggestion. Pseudo code for the JModVisitor could look like this... Visit all method target invocations. if target method has one of the eliminate me annotations then remove method invocation. end if If the actual list of annotations could be set on the command line it would also allow me to eliminate my own check methods which i might not want in my super fast production version. As a side note the problem with asserts is its an all of nothing its quite difficult / hard to pinpoint that one wants to remove only one type of js construct as opposed to all. Using different annotations allows one to categorise and eliminate at will. On Thu, Nov 13, 2008 at 9:03 PM, Ray Cromwell <[EMAIL PROTECTED]> wrote: > > Bruce, > I'm kinda swamped myself right now, but I can whip something up > after Thanksgiving. I like John's proposal too, since I like more > powerful general purpose optimizations, but it seems like a lot more > work than yours, and given time constraints I'd probably hack in your > -X proposals. Of course, I'd like to hear any and all objections from > the GWT team before I start a patch, since there's a difference > between "potentially unsafe" and "guaranteed to break correct > programs" :) > > -Ray > > > On Tue, Nov 11, 2008 at 12:02 PM, Bruce Johnson <[EMAIL PROTECTED]> wrote: > > How about we start a convention for -Xunsafe:yyy flags, like > > > > -Xunsafe:disableArrayIndexChecks > > -Xunsafe:disableClassCastChecks > > -Xunsafe:disableDefensiveCollections > > > > then we'd want a roll-up flag like > > > > -Xunsafe:all > > > > Of course, we'd want to not document these. > > @Ray: The compiler guys are slammed right now. But if you have anything > > resembling a patch that could start this pattern, I think that's the only > > realistic way to get this done in the short term. Also, I'd like to see > if > > Scott/Lex/anyone else disagree before we proceeded down this path. > > On Tue, Nov 11, 2008 at 2:47 PM, Ray Cromwell <[EMAIL PROTECTED]> > wrote: > >> > >> Is there any objection to changing the checkIndex() method in > >> AbstractList to an assert? I suppose one might want JRE behavior in HM > >> even if assertions are disabled, but perhaps we could just check > >> !GWT.isScript() and use if vs assert. I noticed that if you hammer on > >> ArrayList, a very large number of calls are generated to checkIndex. > >> Current, about 1.5% of runtime. There's also it's friend, setCheck > >> too. > >> > >> These seem like easy performance wins with very little work, of > >> course, we want the compiler to continue to get better at well, like > >> doing range check elimination where it can. :) > >> > >> -Ray > >> > >> On Tue, Nov 11, 2008 at 7:54 AM, Bruce Johnson <[EMAIL PROTECTED]> > wrote: > >> > On Tue, Nov 11, 2008 at 10:51 AM, Isaac Truett <[EMAIL PROTECTED]> > >> > wrote: > >> >> > >> >> > I'm curious what things you're referring to here. Generally, I > think > >> >> > we're > >> >> > pretty open to more checks in hosted mode. As an example, hosted > mode > >> >> > always > >> >> > runs with assertions enabled. > >> >> > >> >> More assertions are exactly what I've been hoping for. The one case > >> >> that's stuck with me was issue 2365. As I understand it, those > >> >> assertions (and the check method, if only called in assertions) will > >> >> all be compiled away, so there's no size or performance penalty in > web > >> >> mode. > >> > > >> > That's exactly right. And as we add new library classes, I anticipate > >> > we'll > >> > be doing a lot more assertion checking versus if/then/throw type > tests. > >> > This > >> > is one area where I honestly believe the traditional Java patterns are > >> > just > >> > plain wrong: coding that's far too defensive. > >> > > > >> > > >> > >> > > > > > > > > > > > > > -- mP --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4070 - trunk/tools/api-checker/config
Author: [EMAIL PROTECTED] Date: Thu Nov 13 14:11:33 2008 New Revision: 4070 Modified: trunk/tools/api-checker/config/gwt15_16userApi.conf Log: Made the comment clearer. No review needed Patch by: amitmanjhi Modified: trunk/tools/api-checker/config/gwt15_16userApi.conf == --- trunk/tools/api-checker/config/gwt15_16userApi.conf (original) +++ trunk/tools/api-checker/config/gwt15_16userApi.conf Thu Nov 13 14:11:33 2008 @@ -21,9 +21,11 @@ ## #Api whitelist # when adding to the white-list, include comments as to why the addition is -# being made. This needs to be done for this initial white-list below +# being made. -# the api-checker is currently regarding overloadeded methods that can be -# overriden. TODO(amitmanjhi): Solving this issue correctly in all cases seems +# the api-checker is currently checking overloadeded methods that can be +# overriden, and there are multiple overloaded versions of +# StringBuilder::append(..) +# TODO(amitmanjhi): Solving this issue correctly in all cases seems # to be hard. Come back and fix this issue, if more such cases come up. java.lang.StringBuilder::append(Ljava/lang/StringBuffer;) OVERRIDABLE_METHOD_ARGUMENT_TYPE_CHANGE --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4024.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4024. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4024 General Comment: removed final from isCanceled, javadoc'ed cancel() instead. Hope people listen... Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4024 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4068 - branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 13:13:26 2008 New Revision: 4068 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java Log: Removing final from isCanceled. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java Thu Nov 13 13:13:26 2008 @@ -80,7 +80,9 @@ } /** - * Cancel the selection event. + * Cancel the before selection event. + * + * Classes overriding this method should still call super.cancel(). */ public void cancel() { canceled = true; @@ -100,7 +102,7 @@ * * @return is canceled */ - public final boolean isCanceled() { + public boolean isCanceled() { return canceled; } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 General Comment: Not currently relevant as the class has currently wondered off. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4067 - branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/mu seum/client/defaultm...
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:52:44 2008 New Revision: 4067 Modified: branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java Log: Using diffs to remove whitespace formmatting was NOT a success in last commit, recommitting. Modified: branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java == --- branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java (original) +++ branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java Thu Nov 13 12:52:44 2008 @@ -41,7 +41,7 @@ private final class VisibleDialogBox extends DialogBox { private FlexTable layout = null; -private final Map eventToElement = +private final Map eventToElement = new HashMap(); private boolean maybeClose; @@ -61,8 +61,8 @@ layout.setHTML(0, 0, "VisibleEvents"); layout.setHTML(0, 1, "Status"); - final String style = - "float:right; border: 1px solid blue; color:blue;" + final String style = "float:right; border: 1px solid blue; color:blue;" + + "font-weight:bold; font-size:85%"; setHTML("I Gots a Close Box X "); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4034.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4034. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4034 General Comment: Fixed and committed, 4067 Line-by-line comments: File: /branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java (r4034) === Line 80: } --- because we kept changing our minds if this was public or protected! File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java (r4034) === Line 257: if (index >= getTabCount()) { --- RESPONSE Yep, now committed with reasoning. Line 356: } --- The deprecated is carried my the fact that in implements ClickListener. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4034 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4066 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:51:00 2008 New Revision: 4066 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: Fixing bad HandlerManager commit. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Thu Nov 13 12:51:00 2008 @@ -116,7 +116,7 @@ */ public HandlerManager(Object source) { if (useJs) { - javaScriptRegistry = JavaScriptObject.createObject().cast(); + javaScriptRegistry = null; } else { javaRegistry = new JavaHandlerRegistry(); } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4065 - branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/mu seum/client/defaultm...
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:47:36 2008 New Revision: 4065 Modified: branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java Log: Removed now unneeded getCaption() method override. Modified: branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java == --- branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java (original) +++ branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java Thu Nov 13 12:47:36 2008 @@ -42,7 +42,6 @@ private FlexTable layout = null; private final Map eventToElement = -new HashMap(); private boolean maybeClose; @@ -64,7 +63,6 @@ final String style = "float:right; border: 1px solid blue; color:blue;" - + "font-weight:bold; font-size:85%"; setHTML("I Gots a Close Box X "); @@ -72,11 +70,6 @@ eventToElement.put(e, addResultRow(e.name())); } add(layout); -} - -@Override -public DialogBox.Caption getCaption() { - return super.getCaption(); } @Override --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4064 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:42:58 2008 New Revision: 4064 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Log: Making DialogBox final and adding explanations for why it is final. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Thu Nov 13 12:42:58 2008 @@ -183,10 +183,14 @@ /** * Provides access to the dialog's caption. + * + * This method is final because the Caption interface will expand. Therefore + * it is highly likely that subclasses which implemented this method would end up + * breaking. * * @return the logical caption for this dialog box */ - public Caption getCaption() { + public final Caption getCaption() { return caption; } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4063 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:41:10 2008 New Revision: 4063 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java Log: Explaining why getTab must be final. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java Thu Nov 13 12:41:10 2008 @@ -54,19 +54,11 @@ * .gwt-TabBar .gwt-TabBarItem { unselected tabs } * .gwt-TabBar .gwt-TabBarItem-wrapper { table cell around tab } * .gwt-TabBar .gwt-TabBarItem-selected { additional style for selected - * tabs } - * .gwt-TabBar .gwt-TabBarItem-wrapper-selected { table cell around - * selected tab } - * .gwt-TabBar .gwt-TabBarItem-disabled { additional style for disabled - * tabs } - * .gwt-TabBar .gwt-TabBarItem-wrapper-disabled { table cell around - * disabled tab } - * * * Example * [EMAIL PROTECTED] com.google.gwt.examples.TabBarExample} * - */ + */ @SuppressWarnings("deprecation") public class TabBar extends Composite implements SourcesTabEvents, HasBeforeSelectionHandlers, HasSelectionHandlers, @@ -250,10 +242,14 @@ /** * Gets the given tab. * + * This method is final because the Tab interface will expand. Therefore + * it is highly likely that subclasses which implemented this method would end up + * breaking. + * * @param index the tab's index * @return the tab wrapper */ - public final Tab getTab(int index) { + public final Tab getTab(int index) { if (index >= getTabCount()) { return null; } @@ -363,18 +359,16 @@ /** * @deprecated this method has been doing nothing for the entire last release, - * if what you wanted to do was to listen to key press events on - * tabs, add the key press handler to the individual tab wrappers - * instead. + * if what you wanted to do was to listen to key press events on tabs, add the + * key press handler to the individual tab wrappers instead. */ public void onKeyPress(Widget sender, char keyCode, int modifiers) { } /** * @deprecated this method has been doing nothing for the entire last release, - * if what you wanted to do was to listen to key up events on - * tabs, add the key up handler to the individual tab wrappers - * instead. + * if what you wanted to do was to listen to key up events on tabs, add the + * key up handler to the individual tab wrappers instead. * */ public void onKeyUp(Widget sender, char keyCode, int modifiers) { @@ -407,7 +401,7 @@ * * @param index the index of the tab to be selected * @return true if successful, false if the change - * is denied by the [EMAIL PROTECTED] BeforeSelectionHandler}. + * is denied by the [EMAIL PROTECTED] BeforeSelectionHandler}. */ public boolean selectTab(int index) { checkTabIndex(index); @@ -488,7 +482,7 @@ * Subclasses can use this method to wrap tabs in decorator panels. * * @return a [EMAIL PROTECTED] SimplePanel} to wrap the tab contents, or null to leave - * tabs unwrapped + * tabs unwrapped */ protected SimplePanel createTabTextWrapper() { return null; @@ -558,7 +552,7 @@ * * @param tabWidget The widget for the tab to be selected * @return true if the tab corresponding to the widget for the tab could - * located and selected, false otherwise + * located and selected, false otherwise */ private boolean selectTabByTabWidget(Widget tabWidget) { int numTabs = panel.getWidgetCount() - 1; --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4061 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:29:04 2008 New Revision: 4061 Removed: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEventUtil.java Log: Moving GwtEventUtil to museum, as we will figure out a different way to allow people, in general, to subclass handler manager. --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] e...@google.com commented on revision r4046.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4046. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4046 General Comment: Fixed in r4062 Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4046 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4062 - branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:30:57 2008 New Revision: 4062 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java Log: Made value final. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java Thu Nov 13 12:30:57 2008 @@ -83,7 +83,7 @@ return TYPE; } - private I value; + private final I value; /** * Creates a value change event. --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] e...@google.com commented on revision r4048.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4048. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4048 General Comment: Fixed in 4060 Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4048 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4060 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:15:57 2008 New Revision: 4060 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java Log: Fixed type-o in javadoc Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java Thu Nov 13 12:15:57 2008 @@ -50,7 +50,7 @@ /** * Creates a cell. * @param rowIndex the cell's row - * @param cellIndex the cell's inded + * @param cellIndex the cell's index */ protected Cell(int rowIndex, int cellIndex) { this.cellIndex = cellIndex; --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4059 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:09:40 2008 New Revision: 4059 Added: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEventUtil.java Log: Need to introduce this util class in order to manipulate event firing outside of events package. Added: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEventUtil.java == --- (empty file) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEventUtil.java Thu Nov 13 12:09:40 2008 @@ -0,0 +1,54 @@ +/* + * Copyright 2008 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.google.gwt.event.shared; + +import com.google.gwt.event.shared.GwtEvent.Type; + +/** + * Utility class to help with managing events. + */ +public class GwtEventUtil { + + /** + * Fire the event on the given handler. + * + * @param event the event to dispatch + * @param handler the handler to dispatch it to + * @param the event's handler type + * + */ + public static void dispatch(GwtEvent event, + H handler) { +event.dispatch(handler); + } + + /** + * Gets the event's type. + * + * @param handler type + * + * @param event the event + * @return the associated type + */ + public static Type getType(GwtEvent event) { +return event.getAssociatedType(); + } + + private GwtEventUtil() { +// Utility class, should not have instances. + } +} --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4058 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 12:07:43 2008 New Revision: 4058 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: Removing JsHandlerRegistry while we do benchmarks in the background to determine if we need it. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Thu Nov 13 12:07:43 2008 @@ -15,8 +15,6 @@ */ package com.google.gwt.event.shared; -import com.google.gwt.core.client.GWT; -import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.event.shared.GwtEvent.Type; import com.google.gwt.user.client.Command; @@ -83,182 +81,10 @@ } } - /** - * Default JavaScript handler registry. This is in the shared class but should - * never be called outside of a GWT runtime environment. - * - * The JsHandlerRegistry makes use of the fact that in the large majority of - * cases, only one or two handlers are added for each event type. Therefore, - * rather than storing handlers in a list of lists, we store then in a single - * flattened array with an escape clause to handle the rare case where we have - * more handlers then expected. - */ - private static class JsHandlerRegistry extends JavaScriptObject { - -/** - * Required constructor. - */ -protected JsHandlerRegistry() { -} - -public final void addHandler( -Type type, H myHandler) { - - // The base is the equivalent to a c pointer into the flattened handler - // data structure. - int base = type.hashCode(); - int count = getCount(base); - boolean flattened = isFlattened(base); - H handler = myHandler; - // If we already have the maximum number of handlers we can store in the - // flattened data structure, store the handlers in an external list - // instead. - if ((count == EXPECTED_HANDLERS) & flattened) { -unflatten(base); -flattened = false; - } - if (flattened) { -setFlatHandler(base, count, handler); - } else { -setHandler(base, count, handler); - } - setCount(base, count + 1); -} - -public final void fireEvent(GwtEvent event) { - Type type = event.getAssociatedType(); - int base = type.hashCode(); - int count = getCount(base); - boolean isFlattened = isFlattened(base); - if (isFlattened) { -for (int i = 0; i < count; i++) { - // Gets the given handler to fire. - H handler = getFlatHandler(base, i); - // Fires the handler. - event.dispatch(handler); -} - } else { -JavaScriptObject handlers = getHandlers(base); -for (int i = 0; i < count; i++) { - // Gets the given handler to fire. - - H handler = getHandler(handlers, i); - - // Fires the handler. - event.dispatch(handler); -} - } -} - -public final H getHandler(GwtEvent.Type type, -int index) { - int base = type.hashCode(); - int count = getCount(base); - if (index >= count) { -throw new IndexOutOfBoundsException("index: " + index); - } - return getHandler(base, index, isFlattened(base)); -} - -public final int getHandlerCount(GwtEvent.Type eventKey) { - return getCount(eventKey.hashCode()); -} - -public final void removeHandler(GwtEvent.Type eventKey, -EventHandler handler) { - int base = eventKey.hashCode(); - - // Removing a handler is unusual, so smaller code is preferable to - // handling both flat and dangling list of pointers. - if (isFlattened(base)) { -unflatten(base); - } - boolean result = removeHelper(base, handler); - // Hiding this behind an assertion as we'd rather not force the compiler - // to have to include all handler.toString() instances. - assert result : handler + " did not exist"; -} - -private native int getCount(int index) /*-{ - var count = this[index]; - return count == null? 0:count; -}-*/; - -private native H getFlatHandler(int base, int index) /*-{ - return this[base + 2 + index]; -}-*/; - -private native H getHandler(int base, int index, -boolean flattened) /*-{ - return flattened? this[base + 2 + index]: this[base + 1][index]; -}-*/; - -private native H getHandler( -JavaScriptObject handlers, int index) /*-{ - return handlers[index]; -}-*/; - -private native JavaScriptObject getHandlers(int base) /*-{ - return this[base + 1]; -}-*/; - -private native boolean isFlattened(int base) /*-{ -
[gwt-contrib] review request: GwtTransient annotation
Bob, can you review the small attached patch? I can ask others if you are slammed, but it's small and affects code you are familiar with, so I thought I'd ask you first. This patch implements support for a @GwtTransient annotation. @GwtTransient means the same thing as the transient keyword, but it is ignored by all serialization systems other than GWT's. Usually the transient keyword should be used in preference to this annotation. However, for types used with multiple serialization systems, it can be useful. The motivation is discussed further in these bug reports: http://code.google.com/p/google-web-toolkit/issues/detail?id=2931 http://code.google.com/p/google-web-toolkit/issues/detail?id=2964 The patch simply adds the annotation and checks it in the places isTransient is currently checked. So, from GWT's point of view, isTransient and @GwtTransient are equivalent. -Lex --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~--- gwtTransient-r4049.patch Description: Binary data
[gwt-contrib] Re: Commits & Code Reviews
Jay, You'll find a similar request among the comments of this (now closed/fixed) issue: http://code.google.com/p/support/issues/detail?id=190 Assuming you don't find an existing issue to "star", you can add your request here: http://code.google.com/p/support/issues/list Fred Sauer [EMAIL PROTECTED] On Thu, Nov 13, 2008 at 11:48 AM, jay <[EMAIL PROTECTED]> wrote: > > As a lurker, I have to say I really like seeing the commit messages > come across...it makes me feel like I can see what's coming down the > pipe, and what I ought to be thinking about / getting ready to take > advantage of. > > To save my time, though, I follow this group with Google Reader... > > I was wondering if there is any way that the "synopsis" which gets > produced for the RSS feed could be expanded? For commit messages, it'd > be nice to see some (all?) of the diff. For code reviews, it'd be nice > to just have the complete text. > > thanks, > > jay > > > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] rj...@google.com commented on revision r4024.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4024. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4024 Score: Negative Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java (r4024) === Line 102: public final boolean isCanceled() { --- Please, no final methods without documentation. I really can't see the point of this one, esp. if we're only expecting subclassing for testing purposes. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4024 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4046.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4046. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4046 Score: Negative Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java (r4046) === Line 86: private I value; --- Should be final. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4046 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 Score: Negative General Comment: ping Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4048.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4048. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4048 Score: Negative Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java (r4048) === Line 53: * @param cellIndex the cell's inded --- typo Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4048 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Commits & Code Reviews
As a lurker, I have to say I really like seeing the commit messages come across...it makes me feel like I can see what's coming down the pipe, and what I ought to be thinking about / getting ready to take advantage of. To save my time, though, I follow this group with Google Reader... I was wondering if there is any way that the "synopsis" which gets produced for the RSS feed could be expanded? For commit messages, it'd be nice to see some (all?) of the diff. For code reviews, it'd be nice to just have the complete text. thanks, jay --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Code Review: adding BarChart, LineChart and Gauge support to the Visualisation API and demo
FYI: a patch that adds these visualizations was just committed as r987. On Wed, Aug 27, 2008 at 1:09 PM, Eric Ayers <[EMAIL PROTECTED]> wrote: > Hi James, any further updates? > > On Thu, Aug 21, 2008 at 9:48 AM, Eric Ayers <[EMAIL PROTECTED]> wrote: > > Hi James, > > > > The electronic version of the CLA is just fine - that's the last time > > we'll have to deal with that. > > > > If you don't have checkstyle setup in eclipse, you can find the > > instructions in the main GWT subversion repository under > > 'eclipse/README.txt' > > > > > http://code.google.com/p/google-web-toolkit/source/browse/trunk/eclipse/README.txt > > > > -- > > > > General: > > > > - I don't think it would be much work to add in the rest of the > > DrawOptions for these visualizations, but I'm willing to let it wait > > for a follow on patch. (Uwe, what do you think?) > > > > visualization/src/com/google/gwt/visualization/client/BarChartWidget.java > > 31: eclipse warning on javadoc comment. s/b [EMAIL PROTECTED] > > #draw(DataTable, > > DrawOptions)} > > 49,56,63: Remove these methods. This visualization doesn't support > > selection events. > > > > visualization/src/com/google/gwt/visualization/client/BarChart.java > > 45: This TODO looks leftover from a cut&paste. If you add the TODO, > > your name should be in parens(). Note that ust because your name is > > in there doesn't mean you are the one expected to fix it > > > > visualization/src/com/google/gwt/visualization/client/Gauge.java > > 45: Same comment about TODO as above > > 64: checkstyle error: setMax() method not in correct sort order > > > > visualization/src/com/google/gwt/visualization/client/GaugeWidget.java > > 31: eclipse warning on javadoc comment. s/b [EMAIL PROTECTED] > > #draw(DataTable, > > DrawOptions)} > > 80,84,88: Remove these methods. This visualization doesn't support > > selection events. > > > > visualization/src/com/google/gwt/visualization/client/LineChart.java > > 45: Same comment about TODO as above > > 47: There is not is3D property for this visualization > > > > > > > visualization/src/com/google/gwt/visualization/client/LineChartWidget.java > > 31: eclipse warning on javadoc comment. s/b [EMAIL PROTECTED] > > #draw(DataTable, > > DrawOptions)} > > 49,56,63: Remove these methods. This visualization doesn't support > > selection events. > > > > visualization/src/com/google/gwt/visualization/client/PieChartWidget.java > > 31: eclipse warning on javadoc comment. s/b [EMAIL PROTECTED] > > #draw(DataTable, > > DrawOptions)} > > > > > samples/hellovisualization/src/com/google/gwt/visualization/sample/hellovisualization/public/HelloVisualization.html > > LG > > > > > samples/hellovisualization/src/com/google/gwt/visualization/sample/hellovisualization/client/VisualizationDemo.java > > - I don't think we need to do it for this patch, but the number of > > visualizations is starting to make for an ugly demo. Creating a Stack > > panel or Tab Panel with the different demos would be nice. > > > > 71: checkstyle warning: Extra n/l (this was there before) > > 79: checkstyle warning: Extra n/l > > > > -Eric. > > > > On Wed, Aug 20, 2008 at 4:09 AM, James Strachan > > <[EMAIL PROTECTED]> wrote: > >> Here's a new patch thats been discussed in this thread > >> > http://groups.google.com/group/Google-Web-Toolkit-Contributors/msg/8c32079c92e57379 > >> > >> it enhances the current Visualisation API and demo to also use > >> BarChart, LineChart and Gauge. I followed the coding conventions > >> already there for PieChart so they all appear similar. There are still > >> some pending properties that should be added to the *Info classes for > >> all graphs, but at least this is a pretty good start letting folks use > >> the most common visualisations from GWT nicely. > >> > >> I've signed the CLA electronically with james.strachan at gmail.com. > >> Let me know if a paper version is easier :) being lazy I went straight > >> for the electronic first :) > >> > >> -- > >> James > >> --- > >> http://macstrac.blogspot.com/ > >> > >> Open Source Integration > >> http://open.iona.com > >> > >> > >> > >> > > > > > > > > -- > > Eric Z. Ayers - GWT Team - Atlanta, GA USA > > http://code.google.com/webtoolkit/ > > > > > > -- > Eric Z. Ayers - GWT Team - Atlanta, GA USA > http://code.google.com/webtoolkit/ > -- Eric Z. Ayers - GWT Team - Atlanta, GA USA http://code.google.com/webtoolkit/ --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4045.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4045. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 Score: Positive General Comment: I think you have a good point here, as right now our primary native java use case is for testing, so I think it is reasonable to ask people to put asserts on. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4057 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Thu Nov 13 09:38:03 2008 New Revision: 4057 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: switching illegal argument to assertion. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Thu Nov 13 09:38:03 2008 @@ -72,11 +72,7 @@ ArrayList l = get(eventKey); if (l != null) { boolean result = l.remove(handler); -if (!result) { - // The client code has a similar assert. Relying on asserts in - // server code is dicey - throw new IllegalArgumentException("Tried to remove unknown handler"); -} +assert result : "Tried to remove unknown handler"; } } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4056 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 09:32:55 2008 New Revision: 4056 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesScrollEvents.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTabEvents.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTableEvents.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTreeEvents.java Log: Adding simple depreciated redirects here. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesScrollEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesScrollEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesScrollEvents.java Thu Nov 13 09:32:55 2008 @@ -24,7 +24,8 @@ /** * Adds a listener interface to receive scroll events. * - * @param listener the listener interface to add. + * @param listener the listener interface to add + * @deprecated use addScrollHandler instead */ @Deprecated void addScrollListener(ScrollListener listener); @@ -32,7 +33,7 @@ /** * Removes a previously added scroll listener. * - * @param listener the listener interface to remove. + * @param listener the listener interface to remove */ @Deprecated void removeScrollListener(ScrollListener listener); Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTabEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTabEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTabEvents.java Thu Nov 13 09:32:55 2008 @@ -25,6 +25,7 @@ * Adds a listener interface to receive click events. * * @param listener the listener interface to add + * @deprecated use addBeforeSelectionHandler and addSelectionHandler instead */ @Deprecated void addTabListener(TabListener listener); Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTableEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTableEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTableEvents.java Thu Nov 13 09:32:55 2008 @@ -25,6 +25,7 @@ * Adds a listener interface to receive click events. * * @param listener the listener interface to add + * @deprecated use addClickHandler and getCell(DomEvent) instead */ @Deprecated void addTableListener(TableListener listener); Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTreeEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTreeEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/SourcesTreeEvents.java Thu Nov 13 09:32:55 2008 @@ -25,6 +25,7 @@ * Adds a listener interface to receive tree events. * * @param listener the listener interface to add + * @deprecated use addSelectionHandler,addOpenHandler, and addCloseHandler instead */ @Deprecated void addTreeListener(TreeListener listener); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4055 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:56:22 2008 New Revision: 4055 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FormPanel.java Log: Javadoc tweaks. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FormPanel.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FormPanel.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FormPanel.java Thu Nov 13 08:56:22 2008 @@ -20,8 +20,8 @@ import com.google.gwt.dom.client.Document; import com.google.gwt.dom.client.Element; import com.google.gwt.dom.client.FormElement; -import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.EventHandler; +import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.HandlerRegistration; import com.google.gwt.user.client.Command; import com.google.gwt.user.client.DeferredCommand; @@ -85,6 +85,10 @@ private String resultHtml; +/** + * Create a submit complete event + * @param resultsHtml the results from submitting the form + */ protected SubmitCompleteEvent(String resultsHtml) { this.resultHtml = resultsHtml; } @@ -403,6 +407,7 @@ * Adds a [EMAIL PROTECTED] SubmitCompleteEvent} handler. * * @param handler the handler + * @return the handler registration used to remove the handler */ public HandlerRegistration addSubmitCompleteHandler( SubmitCompleteHandler handler) { @@ -413,6 +418,7 @@ * Adds a [EMAIL PROTECTED] SubmitEvent} handler. * * @param handler the handler + * @return the handler registration used to remove the handler */ public HandlerRegistration addSubmitHandler(SubmitHandler handler) { return addHandler(handler, SubmitEvent.getType()); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4054 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:54:24 2008 New Revision: 4054 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresSuggestionEvents.java Log: Javadoc tweaks. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresSuggestionEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresSuggestionEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresSuggestionEvents.java Thu Nov 13 08:54:24 2008 @@ -24,6 +24,7 @@ /** * Adds a handler interface to receive suggestion events. * + * @deprecated add a selection handler instead * @param handler the handler to add */ @Deprecated @@ -32,7 +33,7 @@ /** * Removes a previously added handler interface. * - * @param handler the handler to remove. + * @param handler the handler to remove */ @Deprecated void removeEventHandler(SuggestionHandler handler); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4053 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:52:43 2008 New Revision: 4053 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresFormEvents.java Log: adding javadoc Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresFormEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresFormEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresFormEvents.java Thu Nov 13 08:52:43 2008 @@ -25,6 +25,8 @@ /** * Adds a handler interface to receive click events. * + * @deprecated use [EMAIL PROTECTED] FormPanel#addSubmitCompleteHandler} and + * [EMAIL PROTECTED] FormPanel#addSubmitHandler} instead * @param handler the handler interface to add */ @Deprecated --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4052 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:49:35 2008 New Revision: 4052 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresDisclosureEvents.java Log: JavaDoc tweaks. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresDisclosureEvents.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresDisclosureEvents.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/FiresDisclosureEvents.java Thu Nov 13 08:49:35 2008 @@ -25,6 +25,7 @@ * Adds a handler interface to receive open events. * * @param handler the handler to add + * @deprecated add an open or close handler to the event source instead */ @Deprecated void addEventHandler(DisclosureHandler handler); @@ -32,7 +33,7 @@ /** * Removes a previously added handler interface. * - * @param handler the handler to remove. + * @param handler the handler to remove */ @Deprecated void removeEventHandler(DisclosureHandler handler); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4051 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:48:19 2008 New Revision: 4051 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/ChangeListener.java Log: Removing extra periods from javadoc. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/AbsolutePanel.java Thu Nov 13 08:48:19 2008 @@ -64,7 +64,7 @@ * it can be used by [EMAIL PROTECTED] RootPanel} or a subclass that wants to substitute * another element. The element is presumed to be a. * - * @param elem the element to be used for this panel. + * @param elem the element to be used for this panel */ protected AbsolutePanel(Element elem) { setElement(elem); Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/ChangeListener.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/ChangeListener.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/ChangeListener.java Thu Nov 13 08:48:19 2008 @@ -27,7 +27,7 @@ * Fired when a widget changes, where 'change' is defined by the widget * sending the event. * - * @param sender the widget that has changed. + * @param sender the widget that has changed */ @Deprecated void onChange(Widget sender); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4050 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:47:31 2008 New Revision: 4050 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java Log: Adding javadoc Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DisclosurePanel.java Thu Nov 13 08:47:31 2008 @@ -305,7 +305,7 @@ * Creates a DisclosurePanel that will be initially closed using the specified * text in the header. * - * @param headerText the text to be displayed in the header. + * @param headerText the text to be displayed in the header */ public DisclosurePanel(String headerText) { this(createDefaultImages(), headerText, false); @@ -363,6 +363,8 @@ * notification. * * @param handler the handler to be added (should not be null) + * @deprecated use [EMAIL PROTECTED] DisclosurePanel#addOpenHandler(OpenHandler)} and + * [EMAIL PROTECTED] DisclosurePanel#addCloseHandler(CloseHandler)} instead */ @Deprecated public void addEventHandler(final DisclosureHandler handler) { @@ -400,7 +402,7 @@ * the header widget does provide such access. * * @return a reference to the header widget if it implements [EMAIL PROTECTED] HasText}, - * null otherwise + * null otherwise */ public HasText getHeaderTextAccessor() { Widget widget = header.getWidget(); @@ -484,7 +486,7 @@ * Changes the visible state of this DisclosurePanel. * * @param isOpen true to open the panel, false to - * close + * close */ public void setOpen(boolean isOpen) { if (this.isOpen != isOpen) { --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4049 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:42:02 2008 New Revision: 4049 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Log: More javadoc tweaks, this time for DialogBox. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Thu Nov 13 08:42:02 2008 @@ -276,7 +276,7 @@ } /** - * @deprecated Use [EMAIL PROTECTED] #finishDragging} and [EMAIL PROTECTED] #getCaption} instead + * @deprecated Use [EMAIL PROTECTED] #endDragging} and [EMAIL PROTECTED] #getCaption} instead */ @Deprecated public void onMouseUp(Widget sender, int x, int y) { @@ -326,7 +326,7 @@ * * @see DOM#setCapture * @see #continueDragging - * @param event + * @param event the mouse down event that triggered dragging */ protected void beginDragging(MouseDownEvent event) { onMouseDown(caption, event.getRelativeX(getElement()), @@ -339,7 +339,7 @@ * * @see #beginDragging * @see #endDragging - * @param event + * @param event the mouse move event that continues dragging */ protected void continueDragging(MouseMoveEvent event) { onMouseMove(caption, event.getRelativeX(getElement()), @@ -368,6 +368,7 @@ /** * Called on mouse up in the caption area, ends dragging by ending event * capture. + * @param event the mouse up event that ended dragging * * @see DOM#releaseCapture * @see #beginDragging --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4048 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:38:29 2008 New Revision: 4048 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java Log: Adding javadoc for cell and depricated table methods Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/HTMLTable.java Thu Nov 13 08:38:29 2008 @@ -47,19 +47,35 @@ private final int rowIndex; private final int cellIndex; +/** + * Creates a cell. + * @param rowIndex the cell's row + * @param cellIndex the cell's inded + */ protected Cell(int rowIndex, int cellIndex) { this.cellIndex = cellIndex; this.rowIndex = rowIndex; } - + +/** + * Gets the cell index. + * @return the cell index + */ public int getCellIndex() { return cellIndex; } - +/** + * Gets the cell's element. + * @return the cell's element. + */ public Element getElement() { return getCellFormatter().getElement(cellIndex, rowIndex); } +/** + * Get row index. + * @return the row index + */ public int getRowIndex() { return rowIndex; } @@ -804,7 +820,7 @@ * Adds a listener to the current table. * * @param listener listener to add - * @deprecated + * @deprecated add a click handler instead and use [EMAIL PROTECTED] HTMLTable#getCellForEvent(ClickEvent)} to get the cell information */ public void addTableListener(TableListener listener) { ListenerWrapper.Table.add(this, listener); --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4047 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:33:15 2008 New Revision: 4047 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/PopupPanel.java Log: Removed bas HasKeyCode reference. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/PopupPanel.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/PopupPanel.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/PopupPanel.java Thu Nov 13 08:33:15 2008 @@ -529,7 +529,7 @@ * * @param key the key code of the depressed key * @param modifiers keyboard modifiers, as specified in - * [EMAIL PROTECTED] com.google.gwt.event.dom.client.HasKeyCodes}. + * [EMAIL PROTECTED] com.google.gwt.event.dom.client.KeyCodes}. * @return false to suppress the event */ public boolean onKeyDownPreview(char key, int modifiers) { @@ -542,7 +542,7 @@ * * @param key the unicode character pressed * @param modifiers keyboard modifiers, as specified in - * [EMAIL PROTECTED] com.google.gwt.event.dom.client.HasKeyCodes}. + * [EMAIL PROTECTED] com.google.gwt.event.dom.client.KeyCodes}. * @return false to suppress the event */ public boolean onKeyPressPreview(char key, int modifiers) { @@ -555,7 +555,7 @@ * * @param key the key code of the released key * @param modifiers keyboard modifiers, as specified in - * [EMAIL PROTECTED] com.google.gwt.event.dom.client.HasKeyCodes}. + * [EMAIL PROTECTED] com.google.gwt.event.dom.client.KeyCodes}. * @return false to suppress the event */ public boolean onKeyUpPreview(char key, int modifiers) { --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4046 - in branches/1_6_clean_events/user: src/com/google/gwt/event/dom/client src/com/google/gwt...
Author: [EMAIL PROTECTED] Date: Thu Nov 13 08:31:02 2008 New Revision: 4046 Removed: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerAdaptor.java Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/BlurEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ChangeEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ContextMenuEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DoubleClickEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ErrorEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/FocusEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/KeyDownEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/KeyEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/KeyPressEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/KeyUpEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/LoadEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/LoseCaptureEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseDownEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseMoveEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseOutEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseOverEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseUpEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/MouseWheelEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ScrollEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/shared/GwtEvent.java branches/1_6_clean_events/user/test/com/google/gwt/event/logical/shared/LogicalEventsTest.java Log: Making javadoc tweaks and removing HandlerAdaptor as unused now. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/BlurEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/BlurEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/BlurEvent.java Thu Nov 13 08:31:02 2008 @@ -40,7 +40,7 @@ /** * Protected constructor, use - * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager) + * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager)} * to fire blur events. */ protected BlurEvent() { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ChangeEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ChangeEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ChangeEvent.java Thu Nov 13 08:31:02 2008 @@ -40,7 +40,7 @@ /** * Protected constructor, use - * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager) + * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager)} * to fire change events. */ protected ChangeEvent() { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ContextMenuEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ContextMenuEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/ContextMenuEvent.java Thu Nov 13 08:31:02 2008 @@ -40,7 +40,7 @@ /** * Protected constructor, use - * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager) + * [EMAIL PROTECTED] DomEvent#fireNativeEvent(Event, com.google.gwt.event.shared.HandlerManager)} * to fire context menu events. */ protected ContextMenuEvent() { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DoubleClickEvent.java == --- branches/1
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4040.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4040. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4040 Score: Positive General Comment: LGTM, and thanks for doing this one so I didn't have to! Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4040 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] kellegous commented on revision r4045.
[google-web-toolkit] kellegous commented on revision r4045. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (r4045) === Line 75: if (!result) { --- From the GWT standpoint, this really should be an assertion. I can't think of any legitmate use of catching IllegalArgException at runtime. If we're going to take on supporting this code on the server side, I think we have to either require assertions on the server or we have to use GWT.isClient/isScript to throw exceptions in pure java and depend on assertions in GWT code. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4044.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4044. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4044 Score: Positive General Comment: LGTM Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4044 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4042.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4042. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4042 Score: Positive General Comment: LGTM Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4042 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4043.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4043. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4043 Score: Positive General Comment: LGTM Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4043 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4045.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4045. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 Score: Positive General Comment: Looks good to me. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4045 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Code Review: Example how to create a GWT based visualization.
Uwe, Sorry we aren't getting a lot of input here. I was thinking that we should just trying the xs linker with Chrome. If that works, then put it in the gwt.xml file with a comment that explains why it is there and commit this patch. Meanwhile, I'll try to corner someone on the SDK team. I was thinking that maybe we should add your callback scheme to the standard linker's selection script, maybe passing back the name of the script in the callback in case there are multiple GWT modules loaded. Still, that would only solve the problem for future releases of GWT, and I think we need to assume that the gviz bindings will be running against the public GWT 1.5 release. -Eric. On Wed, Nov 12, 2008 at 6:59 AM, Eric Ayers <[EMAIL PROTECTED]> wrote: > +scottb,cromwellian,bobv > > > On Tue, Nov 11, 2008 at 7:51 AM, Eric Ayers <[EMAIL PROTECTED]> wrote: > >> Can we get someone to weigh in on this? >> >> This is for the integration of the Google visualization, demonstrating the >> 'preferred' way to create a custom visualization with GWT accessible from >> JavaScript. >> >> The current solution is to use the standard linker and fire a global >> callback >> >> $wnd.onVisualizationNameCallback() from the onModuleLoad() entry point. >> >> which I don't feel would be extensible if we had many visualizations >> implemented with GWT. >> >> -Eric. >> >> >> On Mon, Nov 10, 2008 at 10:55 AM, Uwe Maurer <[EMAIL PROTECTED]>wrote: >> >>> >>> >>> On Nov 10, 3:36 pm, [EMAIL PROTECTED] wrote: >>> > I added some code to have a callback from GWT to javascript, to make >>> > sure the GWT visualization is loaded before using it. >>> > >>> >>> I am wondering what is the preferred way to make sure a GWT >>> application is loaded before some other javascript (non GWT) in the >>> hosting page is executed. >>> >>> In my example I would like to load a GWT application that exports some >>> functions to javascript. The javascript in the hosting page need to be >>> executed after the GWT application is done with registering these >>> functions. >>> >>> Can I just put the script tag that loads the GWT application in the >>> ? Or is a callback from GWT to javascript necessary? If yes, >>> what is the best way to implement such a callback? Can the GWT >>> bootstrap code help or a special linker? >>> >>> As example please see this code: >>> http://galgwt-reviews.appspot.com/202/patch/205/207 >>> http://galgwt-reviews.appspot.com/202/patch/205/209 >>> >>> Thanks, >>> Uwe >>> >>> >>> >>> >>> >> >> >> -- >> Eric Z. Ayers - GWT Team - Atlanta, GA USA >> http://code.google.com/webtoolkit/ >> > > > > -- > Eric Z. Ayers - GWT Team - Atlanta, GA USA > http://code.google.com/webtoolkit/ > -- Eric Z. Ayers - GWT Team - Atlanta, GA USA http://code.google.com/webtoolkit/ --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Turning off runtime checks
Bruce, I'm kinda swamped myself right now, but I can whip something up after Thanksgiving. I like John's proposal too, since I like more powerful general purpose optimizations, but it seems like a lot more work than yours, and given time constraints I'd probably hack in your -X proposals. Of course, I'd like to hear any and all objections from the GWT team before I start a patch, since there's a difference between "potentially unsafe" and "guaranteed to break correct programs" :) -Ray On Tue, Nov 11, 2008 at 12:02 PM, Bruce Johnson <[EMAIL PROTECTED]> wrote: > How about we start a convention for -Xunsafe:yyy flags, like > > -Xunsafe:disableArrayIndexChecks > -Xunsafe:disableClassCastChecks > -Xunsafe:disableDefensiveCollections > > then we'd want a roll-up flag like > > -Xunsafe:all > > Of course, we'd want to not document these. > @Ray: The compiler guys are slammed right now. But if you have anything > resembling a patch that could start this pattern, I think that's the only > realistic way to get this done in the short term. Also, I'd like to see if > Scott/Lex/anyone else disagree before we proceeded down this path. > On Tue, Nov 11, 2008 at 2:47 PM, Ray Cromwell <[EMAIL PROTECTED]> wrote: >> >> Is there any objection to changing the checkIndex() method in >> AbstractList to an assert? I suppose one might want JRE behavior in HM >> even if assertions are disabled, but perhaps we could just check >> !GWT.isScript() and use if vs assert. I noticed that if you hammer on >> ArrayList, a very large number of calls are generated to checkIndex. >> Current, about 1.5% of runtime. There's also it's friend, setCheck >> too. >> >> These seem like easy performance wins with very little work, of >> course, we want the compiler to continue to get better at well, like >> doing range check elimination where it can. :) >> >> -Ray >> >> On Tue, Nov 11, 2008 at 7:54 AM, Bruce Johnson <[EMAIL PROTECTED]> wrote: >> > On Tue, Nov 11, 2008 at 10:51 AM, Isaac Truett <[EMAIL PROTECTED]> >> > wrote: >> >> >> >> > I'm curious what things you're referring to here. Generally, I think >> >> > we're >> >> > pretty open to more checks in hosted mode. As an example, hosted mode >> >> > always >> >> > runs with assertions enabled. >> >> >> >> More assertions are exactly what I've been hoping for. The one case >> >> that's stuck with me was issue 2365. As I understand it, those >> >> assertions (and the check method, if only called in assertions) will >> >> all be compiled away, so there's no size or performance penalty in web >> >> mode. >> > >> > That's exactly right. And as we add new library classes, I anticipate >> > we'll >> > be doing a lot more assertion checking versus if/then/throw type tests. >> > This >> > is one area where I honestly believe the traditional Java patterns are >> > just >> > plain wrong: coding that's far too defensive. >> > > >> > >> >> > > > > > --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---