diff --git a/dependencies/common/install-gwt b/dependencies/common/install-gwt index fb6e63cabeb..70aaf07d601 100755 --- a/dependencies/common/install-gwt +++ b/dependencies/common/install-gwt @@ -41,7 +41,7 @@ LIB_DIR=$GWT_DIR/lib mkdir -p $LIB_DIR # gin -GIN_VER=1.5 +GIN_VER=2.1.2 GIN=gin-$GIN_VER GIN_ZIP=$GIN.zip if [ -d "$LIB_DIR/gin/$GIN_VER" ] diff --git a/dependencies/windows/install-dependencies.cmd b/dependencies/windows/install-dependencies.cmd index 8dd21056d18..eb940ef3962 100644 --- a/dependencies/windows/install-dependencies.cmd +++ b/dependencies/windows/install-dependencies.cmd @@ -10,7 +10,7 @@ set UNZIP_ARGS=-q set BASEURL=https://s3.amazonaws.com/rstudio-buildtools/ set BOOST_GCC493_FILE=boost-1.63-win-rtools33-gcc493.zip set RTOOLS_FILE=Rtools33.exe -set GIN_FILE=gin-1.5.zip +set GIN_FILE=gin-2.1.2.zip set GWT_FILE=gwt-2.8.1.zip set SELENIUM_FILE=selenium-java-2.37.0.zip set SELENIUM_SERVER_FILE=selenium-server-standalone-2.37.0.jar @@ -112,11 +112,11 @@ if not exist ..\..\src\gwt\lib ( ) pushd ..\..\src\gwt\lib -if not exist gin\1.5 ( +if not exist gin\2.1.2 ( wget %WGET_ARGS% "%BASEURL%%GIN_FILE%" - mkdir gin\1.5 + mkdir gin\2.1.2 echo Unzipping %GIN_FILE% - unzip %UNZIP_ARGS% "%GIN_FILE%" -d gin\1.5 + unzip %UNZIP_ARGS% "%GIN_FILE%" -d gin\2.1.2 del "%GIN_FILE%" ) diff --git a/src/gwt/.classpath b/src/gwt/.classpath index 42f6200f0dd..a2f9198bf8b 100644 --- a/src/gwt/.classpath +++ b/src/gwt/.classpath @@ -4,11 +4,11 @@ - - - - - + + + + + diff --git a/src/gwt/build.xml b/src/gwt/build.xml index 8a04f034ba9..67d3c93e0d7 100644 --- a/src/gwt/build.xml +++ b/src/gwt/build.xml @@ -28,7 +28,7 @@ - + diff --git a/src/gwt/src/org/rstudio/core/client/command/ApplicationCommandManager.java b/src/gwt/src/org/rstudio/core/client/command/ApplicationCommandManager.java index 466ec4faffa..f6981fc546f 100644 --- a/src/gwt/src/org/rstudio/core/client/command/ApplicationCommandManager.java +++ b/src/gwt/src/org/rstudio/core/client/command/ApplicationCommandManager.java @@ -24,6 +24,7 @@ import org.rstudio.studio.client.RStudioGinjector; import org.rstudio.studio.client.application.events.EventBus; import org.rstudio.studio.client.workbench.commands.Commands; +import org.rstudio.studio.client.workbench.views.files.model.FilesServerOperations; import org.rstudio.studio.client.workbench.views.source.editors.text.events.EditorLoadedEvent; import org.rstudio.studio.client.workbench.views.source.editors.text.events.EditorLoadedHandler; @@ -41,6 +42,7 @@ public ApplicationCommandManager() RStudioGinjector.INSTANCE.injectMembers(this); bindings_ = new FileBacked( + server_, KEYBINDINGS_PATH, false, EditorKeyBindings.create()); @@ -70,9 +72,10 @@ public void onRStudioKeybindingsChanged(RStudioKeybindingsChangedEvent event) } @Inject - private void initialize(EventBus events, Commands commands) + private void initialize(EventBus events, FilesServerOperations server, Commands commands) { events_ = events; + server_ = server; commands_ = commands; } @@ -169,5 +172,6 @@ public void execute() // Injected ---- private EventBus events_; + private FilesServerOperations server_; private Commands commands_; } diff --git a/src/gwt/src/org/rstudio/core/client/command/EditorCommandManager.java b/src/gwt/src/org/rstudio/core/client/command/EditorCommandManager.java index c6df4addd90..7ccec6f07c6 100644 --- a/src/gwt/src/org/rstudio/core/client/command/EditorCommandManager.java +++ b/src/gwt/src/org/rstudio/core/client/command/EditorCommandManager.java @@ -108,6 +108,7 @@ public EditorCommandManager() manager_ = AceCommandManager.create(); bindings_ = new FileBacked( + files_, KEYBINDINGS_PATH, false, EditorKeyBindings.create()); diff --git a/src/gwt/src/org/rstudio/core/client/files/FileBacked.java b/src/gwt/src/org/rstudio/core/client/files/FileBacked.java index a095d2d6a7f..f16453b05f5 100644 --- a/src/gwt/src/org/rstudio/core/client/files/FileBacked.java +++ b/src/gwt/src/org/rstudio/core/client/files/FileBacked.java @@ -17,22 +17,21 @@ import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.user.client.Command; import com.google.gwt.user.client.Timer; -import com.google.inject.Inject; import org.rstudio.core.client.CommandWithArg; import org.rstudio.core.client.Debug; -import org.rstudio.studio.client.RStudioGinjector; import org.rstudio.studio.client.server.ServerError; import org.rstudio.studio.client.server.ServerRequestCallback; import org.rstudio.studio.client.workbench.views.files.model.FilesServerOperations; public class FileBacked { - public FileBacked(String filePath, + public FileBacked(FilesServerOperations server, + String filePath, boolean logErrorIfNotFound, T defaultValue) { - RStudioGinjector.INSTANCE.injectMembers(this); + server_ = server; filePath_ = filePath; logErrorIfNotFound_ = logErrorIfNotFound; object_ = defaultValue; @@ -41,12 +40,6 @@ public FileBacked(String filePath, loading_ = false; } - @Inject - private void initialize(FilesServerOperations server) - { - server_ = server; - } - public boolean isLoaded() { return loaded_; diff --git a/src/gwt/src/org/rstudio/studio/RStudio.gwt.xml b/src/gwt/src/org/rstudio/studio/RStudio.gwt.xml index f31a730b5c0..30468ab2295 100644 --- a/src/gwt/src/org/rstudio/studio/RStudio.gwt.xml +++ b/src/gwt/src/org/rstudio/studio/RStudio.gwt.xml @@ -116,4 +116,7 @@ + + + diff --git a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java index 617d919c8dc..ae4e9fdfc03 100644 --- a/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java +++ b/src/gwt/src/org/rstudio/studio/client/RStudioGinjector.java @@ -25,7 +25,6 @@ import org.rstudio.core.client.command.ShortcutManager; import org.rstudio.core.client.command.ShortcutViewer; import org.rstudio.core.client.command.UserCommandManager; -import org.rstudio.core.client.files.FileBacked; import org.rstudio.core.client.files.filedialog.PathBreadcrumbWidget; import org.rstudio.core.client.theme.WindowFrame; import org.rstudio.core.client.widget.CaptionWithHelp; @@ -195,7 +194,6 @@ public interface RStudioGinjector extends Ginjector void injectMembers(UserCommandManager manager); void injectMembers(EditorCommandManager manager); void injectMembers(ApplicationCommandManager manager); - void injectMembers(FileBacked object); void injectMembers(TextEditingTargetNotebook notebook); void injectMembers(WindowFrame frame); void injectMembers(ShinyGadgetDialog dialog); diff --git a/src/gwt/src/org/rstudio/studio/client/workbench/addins/AddinsCommandManager.java b/src/gwt/src/org/rstudio/studio/client/workbench/addins/AddinsCommandManager.java index 1ed0de53128..48cab997659 100644 --- a/src/gwt/src/org/rstudio/studio/client/workbench/addins/AddinsCommandManager.java +++ b/src/gwt/src/org/rstudio/studio/client/workbench/addins/AddinsCommandManager.java @@ -22,6 +22,7 @@ import org.rstudio.studio.client.workbench.events.SessionInitEvent; import org.rstudio.studio.client.workbench.events.SessionInitHandler; import org.rstudio.studio.client.workbench.model.Session; +import org.rstudio.studio.client.workbench.views.files.model.FilesServerOperations; import org.rstudio.studio.client.workbench.views.source.SourceWindowManager; import java.util.ArrayList; @@ -32,11 +33,13 @@ public class AddinsCommandManager { @Inject public AddinsCommandManager(EventBus events, + FilesServerOperations server, final Session session) { events_ = events; bindings_ = new FileBacked( + server, KEYBINDINGS_PATH, false, EditorKeyBindings.create());