Commit Graph
10430 Commits
Author SHA1 Message Date
Filipp Vakhitov cdbaf73b1e Remove unused fields from VimProcessGroup 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 7f911b7e72 Fix VisualAreaMatcher
It looks for the last selection info in all conditions, not the ones that were specified
2024-07-17 13:30:54 +03:00
Filipp Vakhitov c03a2dfe7e Add support for finishOn in readInputAndProcess 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 75935ce4d1 Add readInputAndProcess to replace inputString and save us from using secondary loop 2024-07-17 13:30:54 +03:00
Filipp Vakhitov f0b203409e Replace cancelExEntry with close method in VimCommandLine 2024-07-17 13:30:54 +03:00
Filipp Vakhitov b3b369eb59 Remove unnecessary write action
`insertRegister` is self synchronized
2024-07-17 13:30:54 +03:00
Filipp Vakhitov 96072982cf Replace deprecated inputString() with ModalInput 2024-07-17 13:30:54 +03:00
Filipp Vakhitov de016fc445 Always register shortcuts
No matter what kind of panel we have, we want VimShortcutKeyAction to be triggered and pass the shortcut keys (e.g. CTRL-C to close panel)
2024-07-17 13:30:54 +03:00
Filipp Vakhitov 554d9b5f7b Create a Wrapper for ExEntryPanel
ExEntryPanel already extends JPanel, so we need a wrapper to make it extend VimModalInputBase
2024-07-17 13:30:54 +03:00
Filipp Vakhitov 149edefad5 Delegate handling closing keystrokes to implementations
Sometimes it may mean aborting interception (CTRL-C), sometimes finishing it (CR)
2024-07-17 13:30:54 +03:00
Filipp Vakhitov 52d3840c83 Rename argument 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 793677d4fd Add typeText() method to VimModalInput 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 2376ee4877 Fix tests 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 68dcab6262 Introduce ModalInput to get rid of Swing's secondary loop 2024-07-17 13:30:54 +03:00
Filipp Vakhitov f38fd3512c Fix passing key to editor when the output panel is scrolled to its end 2024-07-17 13:30:54 +03:00
Filipp Vakhitov e515278ba3 Add label field to VimOutputPanel 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 9cc69e41ee Add KeyHandling logic to VimOutputPanel 2024-07-17 13:30:54 +03:00
Filipp Vakhitov 2109ff235c Fix tests 2024-07-16 20:32:11 +03:00
Filipp Vakhitov d6910aa81d Fix(VIM-3538): Can't select a block in {} when the cursor is on commented Line 2024-07-16 19:23:43 +03:00
Filipp Vakhitov 8369391902 Fix(VIM-3530): "Yank inner block"/"Change inner block" uses wrong block 2024-07-16 18:47:58 +03:00
Alex Plate f336807498 Bring back IU for copilot compatibility testing 2024-07-16 09:09:35 +03:00
Alex Plate 14ba5d7126 Convert Troubleshooter field to function to avoid early initialization 2024-07-15 13:54:20 +03:00
Alex Plate 288394d25f Update the notification text for undo 2024-07-15 13:19:03 +03:00
Alex Plate fb08b5fd65 Prepare to changing the default value of the undo
A notification added to give the information about what happened

Related: VIM-547
2024-07-15 13:16:01 +03:00
Alex Plate 3465e11c3a Initialize the injector in multiple entry points of IntelliJ
Initially, injector was initialized in VimPlugin, assuming that almost every interaction with the plugin goes through it. However, with the plugin evolution, this class starts to be less used.
As IJ doesn't have any single entry point for the plugins, we initialize it in multiple places.
However, the architecture where the plugin might be not initizlied is considered as a bad acrhitecture and should be reviewed.

Related ticket: VIM-3369
2024-07-12 15:09:18 +03:00
Matt Ellis e07a16863e Show possible IDs based on the action's shortcuts
Fixes VIM-3499
2024-07-12 15:09:02 +03:00
kun-codes 64f7532510 added rename functionality 2024-07-12 09:53:07 +03:00
kun-codes dd892e77fb added paste functionality 2024-07-12 09:53:07 +03:00
kun-codes 65aeeba521 added copy functionality 2024-07-12 09:53:07 +03:00
dependabot[bot] ca3e56d0d6 Bump org.mockito.kotlin:mockito-kotlin from 5.3.1 to 5.4.0
Bumps [org.mockito.kotlin:mockito-kotlin](https://github.com/mockito/mockito-kotlin) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/mockito/mockito-kotlin/releases)
- [Commits](https://github.com/mockito/mockito-kotlin/compare/5.3.1...5.4.0)

---
updated-dependencies:
- dependency-name: org.mockito.kotlin:mockito-kotlin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-10 18:21:34 +03:00
dependabot[bot] bcbfb0dc32 Bump org.jetbrains.changelog from 2.2.0 to 2.2.1
Bumps org.jetbrains.changelog from 2.2.0 to 2.2.1.

---
updated-dependencies:
- dependency-name: org.jetbrains.changelog
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-10 18:21:20 +03:00
Alex Plate 46a4a10e63 Reformat code in tests 2024-07-10 10:06:27 +03:00
Alex Plate d5bddd077f Disable Gradle configuration cache in CI tests
With gradle plugin 2.0 this cache fails on GitHub Actions. This solution is temporlly and generally the `integrationsTest` should be migrated from `doLast` to some other task approach
2024-07-10 09:02:26 +03:00
Alex Plate e22fd263cc Test compatibility of copilot on PyCharm
The current execution reports the absence of python plugin. Probably there is a dependency on PyCharm there
2024-07-09 16:35:32 +03:00
Alex Plate f3902d0ae0 Convert property to function to avoid extra service creation 2024-07-09 16:07:57 +03:00
Alex Plate f9213ee45d Mute some tests that depend on oldundo option 2024-07-09 15:46:41 +03:00
Alex Plate 281bc2573e Bring back some methods to preserve the compatibility with other plugins 2024-07-09 15:38:50 +03:00
Alex Plate ae8c7f6bfa Revert "Remove old compatibility layers"
This reverts commit 6cee04a4be.
2024-07-09 15:32:39 +03:00
filipp c0419d6018 Fix project leak 2024-07-08 13:09:08 +03:00
filipp ea98e50f65 Sometimes safety is a bad thing 2024-07-08 13:09:08 +03:00
filipp 168174e383 Add missing resetOpPending to KeyHandler.reset 2024-07-08 13:09:08 +03:00
filipp 53cd4e1b88 Remove KeyHandlerStateResetter
It's an oneliner that we can live without
2024-07-08 13:09:08 +03:00
filipp 27e3561bb8 Safer VimListenersNotifier 2024-07-08 13:09:08 +03:00
filipp 9bb9cb13e3 Fix possible bug in the ExOutputModel.show() method and add documentation 2024-07-08 13:09:08 +03:00
filipp 16455f7241 Remove the update() method from VimOutputPanel 2024-07-08 13:09:08 +03:00
filipp 82225aa519 Use new interface instead of the old one 2024-07-08 13:09:08 +03:00
Filipp Vakhitov 5f2baefc6c Introduce new interface for VimOutputPanel to support the output panel in Fleet
Why is the old interface bad?
- it is not obvious. You cannot create a new panel or check if it is already created. Only "getOrCreate" it
- output panel is bound to editor while in Vim it is global
- we have the `isActive` field and the `clear()` method at the same time, because interface implies that you store the same instance of the panel and reactivate it for each output and I don't like it. We also can forget to call `clear()` after reusing panel
- we cannot "build" output before showing to make the panel more efficient. With multiple carets we can only cal `output(oldText + newText)` for each caret, and it is bad. (imagine we have global command with a lot of matches and for each time we will need to call the `output(oldText + newText)`)
- the `output()` method shows panel, activates it and updates it
- there are more things that I do not like, but the points above should be already enough
2024-07-08 13:09:08 +03:00
Filipp Vakhitov cedcf39723 Fix(VIM-3461): Focus regression 2024-07-08 13:09:08 +03:00
Filipp Vakhitov 4925d9aada Remove ideaglobalmode option
Mode is global now
2024-07-08 13:09:08 +03:00
Filipp Vakhitov f3e6df32d0 Fix(VIM-3462): IdeaVim not responsive occasionally
This bug was caused by two reasons:
1. KeyHandler state is not longer per-editor and we can't reset it on editor creation
2. We do not need to do such things on editor creation. What actually matters is focusing the editor
2024-07-08 13:09:08 +03:00