1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2025-08-17 16:31:45 +02:00

Compare commits

...

8 Commits
0.46 ... 0.47

Author SHA1 Message Date
Andrey Vlasovskikh
f3b4726b34 Version 0.47 2016-10-19 15:58:35 +03:00
Andrey Vlasovskikh
30d7c6edf1 Remove obsolete pluginId 2016-09-30 21:15:51 +03:00
Andrey Vlasovskikh
f33f73d2f5 VIM-1190 Fixed exception "Write access is allowed from write-safe contexts only"
We now use IntelliJ's version of invokeLater() in order to satisfy the
new protocol for running read-write actions in modal dialogs.
2016-09-30 20:44:16 +03:00
Andrey Vlasovskikh
b595dfd443 VIM-1098 Don't start visual selection when mouse click was actually drag over single character 2016-09-01 20:50:55 +03:00
Andrey Vlasovskikh
a3e15b5c76 Possibility to publish the plugin to multiple channels 2016-09-01 18:32:16 +03:00
Andrey Vlasovskikh
31d85c0221 Update gradle-intellij-plugin to 0.2.0-SNAPSHOT for multi-channel plugin publishing 2016-09-01 18:26:30 +03:00
Andrey Vlasovskikh
124bd55e18 Update gradle-intellij-plugin to 0.0.43 2016-07-08 12:19:02 +03:00
Andrey Vlasovskikh
bb9b5b5bde Use IntelliJ 15.0.5 by default 2016-07-08 12:19:02 +03:00
13 changed files with 55 additions and 51 deletions

View File

@@ -16,6 +16,19 @@ It is important to distinguish EAP from traditional pre-release software.
Please note that the quality of EAP versions may at times be way below even Please note that the quality of EAP versions may at times be way below even
usual beta standards. usual beta standards.
To Be Released
--------------
0.47, 2016-10-19
----------------
A bugfix release.
Bug fixes:
* VIM-1098 Don't start visual selection when mouse click was actually drag over single character
* VIM-1190 Fixed exception "Write access is allowed from write-safe contexts only"
0.46, 2016-07-07 0.46, 2016-07-07
---------------- ----------------

View File

@@ -1,7 +1,19 @@
plugins { buildscript {
id "org.jetbrains.intellij" version "0.0.39" repositories {
mavenCentral()
maven {
url "https://oss.sonatype.org/content/repositories/snapshots/"
}
maven {
url 'http://dl.bintray.com/jetbrains/intellij-plugin-service'
}
}
dependencies {
classpath "org.jetbrains.intellij.plugins:gradle-intellij-plugin:0.2.0-SNAPSHOT"
}
} }
apply plugin: 'org.jetbrains.intellij'
apply plugin: 'java' apply plugin: 'java'
sourceCompatibility = javaVersion sourceCompatibility = javaVersion
@@ -26,8 +38,7 @@ intellij {
downloadSources Boolean.valueOf(downloadIdeaSources) downloadSources Boolean.valueOf(downloadIdeaSources)
publish { publish {
pluginId '164' channels publishChannels
channel publishChannel
username publishUsername username publishUsername
password publishPassword password publishPassword
} }

View File

@@ -1,7 +1,7 @@
ideaVersion IC-15.0.2 ideaVersion IC-15.0.5
downloadIdeaSources true downloadIdeaSources true
version SNAPSHOT version SNAPSHOT
javaVersion 1.6 javaVersion 1.6
publishUsername username publishUsername username
publishPassword password publishPassword password
publishChannel eap publishChannels eap

View File

@@ -2,6 +2,10 @@
<name>IdeaVim</name> <name>IdeaVim</name>
<id>IdeaVIM</id> <id>IdeaVIM</id>
<change-notes><![CDATA[ <change-notes><![CDATA[
<p>0.47:</p>
<ul>
<li>Various bug fixes</li>
</ul>
<p>0.46:</p> <p>0.46:</p>
<ul> <ul>
<li>Support for <code>incsearch</code> option for showing search results while typing</li> <li>Support for <code>incsearch</code> option for showing search results while typing</li>
@@ -32,28 +36,6 @@
<li>Support comments in <code>%</code> brace matching</li> <li>Support comments in <code>%</code> brace matching</li>
<li>Various bug fixes</li> <li>Various bug fixes</li>
</ul> </ul>
<p>0.39:</p>
<ul>
<li>Various bug fixes</li>
</ul>
<p>0.38:</p>
<ul>
<li>Support for <code>:action</code> and <code>:actionlist</code> for executing arbitrary IDE actions</li>
<li>Support for <code>number</code> and <code>relativenumber</code> options</li>
<li>Support for <code>clipboard=unnamed</code> option</li>
<li>Various bug fixes</li>
</ul>
<p>0.37:</p>
<ul>
<li>Various bug fixes</li>
</ul>
<p>0.36:</p>
<ul>
<li>Window commands from the <code>&lt;C-W&gt;</code> family</li>
<li>Support for <code>:split</code>/<code>:vsplit</code> commands</li>
<li>Fixed visual block selection mode</li>
<li>Various bug fixes</li>
</ul>
<p>See also the complete <a href="https://github.com/JetBrains/ideavim/blob/master/CHANGES.md">changelog</a>.</p> <p>See also the complete <a href="https://github.com/JetBrains/ideavim/blob/master/CHANGES.md">changelog</a>.</p>
]]></change-notes> ]]></change-notes>
<description><![CDATA[ <description><![CDATA[

View File

@@ -21,6 +21,7 @@ package com.maddyhome.idea.vim;
import com.intellij.codeInsight.lookup.Lookup; import com.intellij.codeInsight.lookup.Lookup;
import com.intellij.codeInsight.lookup.LookupManager; import com.intellij.codeInsight.lookup.LookupManager;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.actionSystem.TypedActionHandler; import com.intellij.openapi.editor.actionSystem.TypedActionHandler;
@@ -50,7 +51,7 @@ public class VimTypedActionHandler implements TypedActionHandler {
public void execute(@NotNull final Editor editor, final char charTyped, @NotNull final DataContext context) { public void execute(@NotNull final Editor editor, final char charTyped, @NotNull final DataContext context) {
if (isEnabled(editor)) { if (isEnabled(editor)) {
// Run key handler outside of the key typed command for creating our own undoable commands // Run key handler outside of the key typed command for creating our own undoable commands
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
@Override @Override
public void run() { public void run() {
try { try {

View File

@@ -24,6 +24,7 @@ import com.intellij.notification.Notification;
import com.intellij.notification.NotificationListener; import com.intellij.notification.NotificationListener;
import com.intellij.notification.NotificationType; import com.intellij.notification.NotificationType;
import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.keymap.KeymapUtil; import com.intellij.openapi.keymap.KeymapUtil;
@@ -99,7 +100,7 @@ public class VimShortcutKeyAction extends AnAction implements DumbAware {
} }
// Should we use InjectedLanguageUtil.getTopLevelEditor(editor) here, as we did in former EditorKeyHandler? // Should we use InjectedLanguageUtil.getTopLevelEditor(editor) here, as we did in former EditorKeyHandler?
// Run key handler later to restore input events sequence due to VimTypedActionHandler // Run key handler later to restore input events sequence due to VimTypedActionHandler
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
@Override @Override
public void run() { public void run() {
try { try {

View File

@@ -19,6 +19,7 @@
package com.maddyhome.idea.vim.ex.handler; package com.maddyhome.idea.vim.ex.handler;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.maddyhome.idea.vim.KeyHandler; import com.maddyhome.idea.vim.KeyHandler;
import com.maddyhome.idea.vim.VimPlugin; import com.maddyhome.idea.vim.VimPlugin;
@@ -29,8 +30,6 @@ import com.maddyhome.idea.vim.ex.ExException;
import com.maddyhome.idea.vim.helper.EditorDataContext; import com.maddyhome.idea.vim.helper.EditorDataContext;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import javax.swing.*;
public class EditFileHandler extends CommandHandler { public class EditFileHandler extends CommandHandler {
public EditFileHandler() { public EditFileHandler() {
super(new CommandName[]{ super(new CommandName[]{
@@ -56,7 +55,7 @@ public class EditFileHandler extends CommandHandler {
} }
// Don't open a choose file dialog under a write action // Don't open a choose file dialog under a write action
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
@Override @Override
public void run() { public void run() {
KeyHandler.executeAction("OpenFile", new EditorDataContext(editor)); KeyHandler.executeAction("OpenFile", new EditorDataContext(editor));

View File

@@ -19,6 +19,7 @@
package com.maddyhome.idea.vim.ex.handler; package com.maddyhome.idea.vim.ex.handler;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.maddyhome.idea.vim.KeyHandler; import com.maddyhome.idea.vim.KeyHandler;
import com.maddyhome.idea.vim.VimPlugin; import com.maddyhome.idea.vim.VimPlugin;
@@ -27,8 +28,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
import com.maddyhome.idea.vim.ex.ExException; import com.maddyhome.idea.vim.ex.ExException;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import javax.swing.*;
/** /**
* *
*/ */
@@ -48,7 +47,7 @@ public class FindClassHandler extends CommandHandler {
return res; return res;
} }
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
KeyHandler.executeAction("GotoClass", context); KeyHandler.executeAction("GotoClass", context);
} }

View File

@@ -19,6 +19,7 @@
package com.maddyhome.idea.vim.ex.handler; package com.maddyhome.idea.vim.ex.handler;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.maddyhome.idea.vim.KeyHandler; import com.maddyhome.idea.vim.KeyHandler;
import com.maddyhome.idea.vim.VimPlugin; import com.maddyhome.idea.vim.VimPlugin;
@@ -27,8 +28,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
import com.maddyhome.idea.vim.ex.ExException; import com.maddyhome.idea.vim.ex.ExException;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import javax.swing.*;
/** /**
* *
*/ */
@@ -48,7 +47,7 @@ public class FindFileHandler extends CommandHandler {
return res; return res;
} }
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
KeyHandler.executeAction("GotoFile", context); KeyHandler.executeAction("GotoFile", context);
} }

View File

@@ -19,6 +19,7 @@
package com.maddyhome.idea.vim.ex.handler; package com.maddyhome.idea.vim.ex.handler;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.maddyhome.idea.vim.KeyHandler; import com.maddyhome.idea.vim.KeyHandler;
import com.maddyhome.idea.vim.ex.CommandHandler; import com.maddyhome.idea.vim.ex.CommandHandler;
@@ -26,8 +27,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
import com.maddyhome.idea.vim.ex.ExException; import com.maddyhome.idea.vim.ex.ExException;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import javax.swing.*;
/** /**
* *
*/ */
@@ -38,7 +37,7 @@ public class FindSymbolHandler extends CommandHandler {
public boolean execute(@NotNull Editor editor, @NotNull final DataContext context, @NotNull ExCommand cmd) throws ExException { public boolean execute(@NotNull Editor editor, @NotNull final DataContext context, @NotNull ExCommand cmd) throws ExException {
// TODO: Check the command argument and jump to a specific symbol // TODO: Check the command argument and jump to a specific symbol
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
KeyHandler.executeAction("GotoSymbol", context); KeyHandler.executeAction("GotoSymbol", context);
} }

View File

@@ -19,6 +19,7 @@
package com.maddyhome.idea.vim.group; package com.maddyhome.idea.vim.group;
import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.command.CommandProcessor; import com.intellij.openapi.command.CommandProcessor;
import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
@@ -127,7 +128,7 @@ public class MacroGroup {
} }
}; };
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
CommandProcessor.getInstance().executeCommand(project, run, "Vim Macro Playback", keys.get(pos)); CommandProcessor.getInstance().executeCommand(project, run, "Vim Macro Playback", keys.get(pos));
} }
@@ -137,7 +138,7 @@ public class MacroGroup {
public void postKey(@NotNull KeyStroke stroke, @NotNull Editor editor) { public void postKey(@NotNull KeyStroke stroke, @NotNull Editor editor) {
final Component component = SwingUtilities.getAncestorOfClass(Window.class, editor.getComponent()); final Component component = SwingUtilities.getAncestorOfClass(Window.class, editor.getComponent());
final KeyEvent event = createKeyEvent(stroke, component); final KeyEvent event = createKeyEvent(stroke, component);
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
if (logger.isDebugEnabled()) { if (logger.isDebugEnabled()) {
logger.debug("posting " + event); logger.debug("posting " + event);

View File

@@ -149,14 +149,11 @@ public class MotionGroup {
ExOutputModel.getInstance(editor).clear(); ExOutputModel.getInstance(editor).clear();
CommandState.SubMode visualMode = CommandState.SubMode.NONE; CommandState.SubMode visualMode = CommandState.SubMode.NONE;
switch (event.getClickCount() % 3) { switch (event.getClickCount()) {
case 1: // Single click or quad click case 2:
visualMode = CommandState.SubMode.NONE;
break;
case 2: // Double click
visualMode = CommandState.SubMode.VISUAL_CHARACTER; visualMode = CommandState.SubMode.VISUAL_CHARACTER;
break; break;
case 0: // Triple click case 3:
visualMode = CommandState.SubMode.VISUAL_LINE; visualMode = CommandState.SubMode.VISUAL_LINE;
// Pop state of being in Visual Char mode // Pop state of being in Visual Char mode
if (CommandState.getInstance(editor).getMode() == CommandState.Mode.VISUAL) { if (CommandState.getInstance(editor).getMode() == CommandState.Mode.VISUAL) {
@@ -247,6 +244,7 @@ public class MotionGroup {
int start = editor.getSelectionModel().getSelectionStart(); int start = editor.getSelectionModel().getSelectionStart();
int end = editor.getSelectionModel().getSelectionEnd(); int end = editor.getSelectionModel().getSelectionEnd();
if (start == end) return;
if (mode == CommandState.SubMode.VISUAL_LINE) { if (mode == CommandState.SubMode.VISUAL_LINE) {
end--; end--;

View File

@@ -18,6 +18,7 @@
package com.maddyhome.idea.vim.ui; package com.maddyhome.idea.vim.ui;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import com.intellij.ui.components.JBScrollPane; import com.intellij.ui.components.JBScrollPane;
@@ -262,7 +263,7 @@ public class ExOutputPanel extends JPanel {
} }
private void close(@Nullable final KeyEvent e) { private void close(@Nullable final KeyEvent e) {
SwingUtilities.invokeLater(new Runnable() { ApplicationManager.getApplication().invokeLater(new Runnable() {
public void run() { public void run() {
deactivate(true); deactivate(true);