From: Marc Englund Date: Fri, 6 Jun 2008 09:58:15 +0000 (+0000) Subject: Removes FF2 caret fix while moving/resizing, making it much faster; fixes #1751 X-Git-Tag: 6.7.0.beta1~4650 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=fdc67583664c6b71b56e402c4314b6dd8776034b;p=vaadin-framework.git Removes FF2 caret fix while moving/resizing, making it much faster; fixes #1751 svn changeset:4773/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IWindow.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IWindow.java index d3fef82484..764e7ebe65 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IWindow.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IWindow.java @@ -356,17 +356,29 @@ public class IWindow extends PopupPanel implements Paintable, ScrollListener { showModalityCurtain(); } super.show(); - if (Util.isFF2()) { - // "missing cursor" browser bug workaround for FF2 in Windows and - // Linux + + setFF2CaretFixEnabled(true); + + } + + private void setFF2CaretFixEnabled(boolean enable) { + // "missing cursor" browser bug workaround for FF2 in Windows andLinux + if (!Util.isFF2()) { + return; + } + if (enable) { DeferredCommand.addCommand(new Command() { public void execute() { String overflow = DOM.getStyleAttribute(getElement(), "overflow"); DOM.setStyleAttribute(getElement(), "overflow", "auto"); } + }); + } else { + DOM.setStyleAttribute(getElement(), "overflow", ""); } + } public void hide() { @@ -424,7 +436,9 @@ public class IWindow extends PopupPanel implements Paintable, ScrollListener { */ private void showDraggingCurtain(boolean show) { if (show && draggingCurtain == null) { - ApplicationConnection.getConsole().log("SHOW"); + + setFF2CaretFixEnabled(false); // makes FF2 slow + draggingCurtain = DOM.createDiv(); DOM.setStyleAttribute(draggingCurtain, "position", "absolute"); DOM.setStyleAttribute(draggingCurtain, "top", "0px"); @@ -436,7 +450,9 @@ public class IWindow extends PopupPanel implements Paintable, ScrollListener { DOM.appendChild(RootPanel.getBodyElement(), draggingCurtain); } else if (!show && draggingCurtain != null) { - ApplicationConnection.getConsole().log("HIDE"); + + setFF2CaretFixEnabled(true); // makes FF2 slow + DOM.removeChild(RootPanel.getBodyElement(), draggingCurtain); draggingCurtain = null; }