]> source.dussan.org Git - vaadin-framework.git/commitdiff
piece forgot from last commit
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 30 Mar 2007 13:02:46 +0000 (13:02 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 30 Mar 2007 13:02:46 +0000 (13:02 +0000)
svn changeset:1073/svn branch:trunk

src/com/itmill/toolkit/Application.java

index 513a0ca3eb0e3d4691335b0956c2c71820b3f779..bff944bdc9045367f173258a4e7c32dc4808bfce 100644 (file)
@@ -32,7 +32,9 @@ import com.itmill.toolkit.service.ApplicationContext;
 import com.itmill.toolkit.service.License;
 import com.itmill.toolkit.terminal.*;
 import com.itmill.toolkit.ui.AbstractComponent;
+import com.itmill.toolkit.ui.Component;
 import com.itmill.toolkit.ui.Window;
+import com.itmill.toolkit.ui.Component.Focusable;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -159,6 +161,8 @@ public abstract class Application implements URIHandler, Terminal.ErrorListener
         */
        private String logoutURL = null;
 
+       private Focusable pendingFocus;
+
        /**
         * Gets a window by name. Returns <code>null</code> if the application is
         * not running or it does not contain a window corresponding to
@@ -861,4 +865,18 @@ public abstract class Application implements URIHandler, Terminal.ErrorListener
                this.license = license;
        }
 
+       public void setFocusedComponent(Focusable focusable) {
+               this.pendingFocus = focusable;
+       }
+       /**
+        * Gets and nulls focused component in this window
+        * 
+        * @return Focused component or null if none is focused.
+        */
+       public Component.Focusable consumeFocus() {
+               Component.Focusable f = this.pendingFocus;
+               this.pendingFocus= null;
+               return f;
+       }
+
 }
\ No newline at end of file