diff --git a/plugin/build.properties b/plugin/build.properties index 945624d1..5eba3e21 100644 --- a/plugin/build.properties +++ b/plugin/build.properties @@ -5,7 +5,6 @@ bin.includes = plugin.xml,\ icons/,\ target/classes/,\ webview/build/,\ - lsp/,\ target/dependency/,\ auth/ jre.compilation.profile = JavaSE-17 diff --git a/plugin/lsp/token-standalone-macos b/plugin/lsp/token-standalone-macos deleted file mode 100755 index 034fecc5..00000000 Binary files a/plugin/lsp/token-standalone-macos and /dev/null differ diff --git a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQChatWebview.java b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQChatWebview.java index 783bc2ce..0d7cbc1b 100644 --- a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQChatWebview.java +++ b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQChatWebview.java @@ -3,18 +3,9 @@ package software.aws.toolkits.eclipse.amazonq.views; -import org.eclipse.jface.preference.PreferenceDialog; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.swt.browser.Browser; import org.eclipse.swt.browser.BrowserFunction; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.ui.dialogs.PreferencesUtil; - -import jakarta.inject.Inject; import software.aws.toolkits.eclipse.amazonq.lsp.manager.LspConstants; import software.aws.toolkits.eclipse.amazonq.util.AuthUtils; import software.aws.toolkits.eclipse.amazonq.util.PluginLogger; @@ -26,9 +17,6 @@ public class AmazonQChatWebview extends AmazonQView { public static final String ID = "software.aws.toolkits.eclipse.amazonq.views.AmazonQChatWebview"; - @Inject - private Shell shell; - private Browser browser; private AmazonQCommonActions amazonQCommonActions; private final ViewCommandParser commandParser; @@ -42,16 +30,13 @@ public AmazonQChatWebview() { @Override public final void createPartControl(final Composite parent) { setupAmazonQView(parent, true); - browser = getBrowser(); + var browser = getBrowser(); amazonQCommonActions = getAmazonQCommonActions(); AuthUtils.isLoggedIn().thenAcceptAsync(isLoggedIn -> { handleAuthStatusChange(isLoggedIn); }, ThreadingUtils::executeAsyncTask); - BrowserFunction prefsFunction = new OpenPreferenceFunction(browser, "openEclipsePreferences", this::openPreferences); - browser.addDisposeListener(e -> prefsFunction.dispose()); - new BrowserFunction(browser, "ideCommand") { @Override public Object function(final Object[] arguments) { @@ -68,26 +53,6 @@ public Object function(final Object[] arguments) { }; } - private class OpenPreferenceFunction extends BrowserFunction { - private Runnable function; - - OpenPreferenceFunction(final Browser browser, final String name, final Runnable function) { - super(browser, name); - this.function = function; - } - - @Override - public Object function(final Object[] arguments) { - function.run(); - return getName() + " executed!"; - } - } - - private void openPreferences() { - PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(shell, null, null, null); - dialog.open(); - } - private String getContent() { String jsFile = PluginUtils.getAwsDirectory(LspConstants.LSP_SUBDIRECTORY).resolve("amazonq-ui.js").toString(); return String.format("\n" @@ -135,21 +100,9 @@ private String generateJS(final String jsEntrypoint) { + " ", jsEntrypoint); } - @Override - public final void selectionChanged(final IWorkbenchPart part, final ISelection selection) { - if (selection.isEmpty()) { - return; - } - if (selection instanceof IStructuredSelection) { - browser.execute("setSelection(\"" + part.getTitle() + "::" - + ((IStructuredSelection) selection).getFirstElement().getClass().getSimpleName() + "\");"); - } else { - browser.execute("setSelection(\"Something was selected in part " + part.getTitle() + "\");"); - } - } - @Override protected final void handleAuthStatusChange(final boolean isLoggedIn) { + var browser = getBrowser(); Display.getDefault().asyncExec(() -> { amazonQCommonActions.updateActionVisibility(isLoggedIn, getViewSite()); if (!isLoggedIn) { diff --git a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQView.java b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQView.java index abf9293c..e772f485 100644 --- a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQView.java +++ b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/AmazonQView.java @@ -2,7 +2,6 @@ package software.aws.toolkits.eclipse.amazonq.views; - import java.util.Set; import org.eclipse.swt.SWT; @@ -10,7 +9,6 @@ import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; -import org.eclipse.ui.ISelectionListener; import org.eclipse.ui.IViewReference; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.PlatformUI; @@ -21,7 +19,7 @@ import software.aws.toolkits.eclipse.amazonq.util.PluginLogger; import software.aws.toolkits.eclipse.amazonq.views.actions.AmazonQCommonActions; -public abstract class AmazonQView extends ViewPart implements ISelectionListener { +public abstract class AmazonQView extends ViewPart { private static final Set AMAZON_Q_VIEWS = Set.of( ToolkitLoginWebview.ID, @@ -77,7 +75,6 @@ protected final void setupAmazonQView(final Composite parent, final boolean isLo setupBrowser(parent); setupActions(browser, isLoggedIn); setupAuthStatusListeners(); - setupSelectionListener(); } private void setupBrowser(final Composite parent) { @@ -99,10 +96,6 @@ private void setupAuthStatusListeners() { AuthUtils.addAuthStatusChangeListener(amazonQCommonActions.getFeedbackDialogContributionAction()); } - private void setupSelectionListener() { - getSite().getPage().addSelectionListener(this); - } - @Override public final void setFocus() { browser.setFocus(); @@ -117,7 +110,6 @@ public final void setFocus() { @Override public void dispose() { AuthUtils.removeAuthStatusChangeListener(authStatusChangedListener); - getSite().getPage().removeSelectionListener(this); super.dispose(); } diff --git a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/BrowserView.js b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/BrowserView.js deleted file mode 100644 index 8a66e9d6..00000000 --- a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/BrowserView.js +++ /dev/null @@ -1,31 +0,0 @@ -// Call from Java to set the random background color -function changeColor() { - var x = Math.floor(Math.random() * 256); - var y = Math.floor(Math.random() * 256); - var z = Math.floor(Math.random() * 256); - var bgColor = "rgb(" + x + "," + y + "," + z + ")"; - document.body.style.background = bgColor; - document.getElementById("lastAction").innerText = "Background color set to " + bgColor; -} - -// Call from Java to set the current selection -function setSelection(text) { - document.getElementById("selection").innerText = text; - document.getElementById("lastAction").innerText = "Selection set to " + text; -} - -// Call to Java to open the preferences -function openPreferences() { - try { - var result = openEclipsePreferences(); // Java callback - document.getElementById("lastAction").innerText = "Preferences were opened. Return value was: " + result; - } catch (e) { - document.getElementById("lastAction").innerText = "A Java error occured: " + e.message; - } -} - -// Call from java to say something -function say(something) { - alert("Java says: " + something); - document.getElementById("lastAction").innerText = "We said: " + something; -} diff --git a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/ToolkitLoginWebview.java b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/ToolkitLoginWebview.java index aa7d0ed7..cd8e910d 100644 --- a/plugin/src/software/aws/toolkits/eclipse/amazonq/views/ToolkitLoginWebview.java +++ b/plugin/src/software/aws/toolkits/eclipse/amazonq/views/ToolkitLoginWebview.java @@ -6,18 +6,9 @@ import java.io.IOException; import java.net.URL; -import org.eclipse.jface.preference.PreferenceDialog; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.swt.browser.Browser; import org.eclipse.swt.browser.BrowserFunction; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.ui.dialogs.PreferencesUtil; - -import jakarta.inject.Inject; import software.aws.toolkits.eclipse.amazonq.util.AuthUtils; import software.aws.toolkits.eclipse.amazonq.util.PluginUtils; import software.aws.toolkits.eclipse.amazonq.util.ThreadingUtils; @@ -27,9 +18,6 @@ public final class ToolkitLoginWebview extends AmazonQView { public static final String ID = "software.aws.toolkits.eclipse.amazonq.views.ToolkitLoginWebview"; - @Inject - private Shell shell; - private Browser browser; private AmazonQCommonActions amazonQCommonActions; private final ViewCommandParser commandParser; @@ -43,17 +31,13 @@ public ToolkitLoginWebview() { @Override public void createPartControl(final Composite parent) { setupAmazonQView(parent, true); - browser = getBrowser(); + var browser = getBrowser(); amazonQCommonActions = getAmazonQCommonActions(); AuthUtils.isLoggedIn().thenAcceptAsync(isLoggedIn -> { handleAuthStatusChange(isLoggedIn); }, ThreadingUtils::executeAsyncTask); - BrowserFunction prefsFunction = new OpenPreferenceFunction(browser, "openEclipsePreferences", this::openPreferences); - browser.addDisposeListener(e -> prefsFunction.dispose()); - - new BrowserFunction(browser, ViewConstants.COMMAND_FUNCTION_NAME) { @Override public Object function(final Object[] arguments) { @@ -65,6 +49,7 @@ public Object function(final Object[] arguments) { } protected void handleAuthStatusChange(final boolean isLoggedIn) { + var browser = getBrowser(); Display.getDefault().asyncExec(() -> { amazonQCommonActions.updateActionVisibility(isLoggedIn, getViewSite()); if (!isLoggedIn) { @@ -76,27 +61,6 @@ protected void handleAuthStatusChange(final boolean isLoggedIn) { }); } - - private class OpenPreferenceFunction extends BrowserFunction { - private Runnable function; - - OpenPreferenceFunction(final Browser browser, final String name, final Runnable function) { - super(browser, name); - this.function = function; - } - - @Override - public Object function(final Object[] arguments) { - function.run(); - return getName() + " executed!"; - } - } - - private void openPreferences() { - PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(shell, null, null, null); - dialog.open(); - } - private String getContent() { try { URL jsFile = PluginUtils.getResource("webview/build/assets/js/getStart.js"); @@ -125,16 +89,4 @@ private String getContent() { } } - @Override - public void selectionChanged(final IWorkbenchPart part, final ISelection selection) { - if (selection.isEmpty()) { - return; - } - if (selection instanceof IStructuredSelection) { - browser.execute("setSelection(\"" + part.getTitle() + "::" - + ((IStructuredSelection) selection).getFirstElement().getClass().getSimpleName() + "\");"); - } else { - browser.execute("setSelection(\"Something was selected in part " + part.getTitle() + "\");"); - } - } }