/** * Creates a FileUpload widget that wraps an existing <input type='file'> element. * * <p>This element must already be attached to the document. If the element is removed from the * document, you must call {@link RootPanel#detachNow(Widget)}. * * @param element the element to be wrapped */ public static FileUpload wrap(Element element) { // Assert that the element is attached. assert Document.get().getBody().isOrHasChild(element); FileUpload fileUpload = new FileUpload(element); // Mark it attached and remember it for cleanup. fileUpload.onAttach(); RootPanel.detachOnWindowClose(fileUpload); return fileUpload; }