132 Commits

Author SHA1 Message Date
Akash Yadav be10fe7e1e feat: integrate full Termux application 2023-12-15 20:22:33 +05:30
Akash Yadav d4626b2a71 fix(lsp): provide cancel checker with params 2023-11-11 00:47:38 +05:30
Akash Yadav 230ccfa536 fix(editor): rewrite IDEEditor in Kotlin with Coroutines 2023-09-30 15:08:28 +05:30
Akash Yadav f5143625ef refactor: migrate ProjectManager to interface based API 2023-09-05 17:36:39 +05:30
Akash Yadav e725d1cacf feat(projects): implement project deserialization and transformation (2/2) 2023-09-05 17:36:30 +05:30
Akash Yadav 6cdb6bd374 fix(lsp/java): add null checks before performing code actions (closes #1156) 2023-08-01 10:01:12 +05:30
Akash Yadav 764a6fa8c2 fix(lsp): progress dialog for 'find references' action is shown indefinitely
This happens because the 'ReferenceProvider' in the Java LSP tries to start another compilation process while working with the current compilation task.
This results in a deadlock where the current task waits for the new compilation request to return and the new compilation request waits for the current task to finish. This commit fixes this issue.

Apart from fixing this issue, this commit also makes the 'Go to definition' and 'Find references' actions cancelable. Also, it eliminates the usage of the deprecated 'ProgressDialog' class for these two actions.
2023-07-09 12:56:28 +05:30
Akash Yadav b950c34fb0 refactor(lookup): use ServiceLoader to load DefaultLookup 2023-04-30 23:26:09 +05:30
Akash Yadav fa8680e873 refactor: replace hardcoded package names in build scripts with BuildConfig property 2023-04-13 22:56:17 +05:30
Akash Yadav a89e25680b tests: fix build issues 2023-03-31 23:34:33 +05:30
Akash Yadav b8b17c2c39 feat: read snippets from JSON files stored in assets 2023-03-31 22:17:37 +05:30
Akash Yadav 81df6d29db build: include EventBusAnnotationProcessor locally 2023-03-30 23:49:17 +05:30
Akash Yadav 8f6392ff55 feat(lsp: add option to perform code actions on main thread 2023-03-29 12:37:56 +05:30
Akash Yadav 1bc3fc7bc1 fix(lsp/java): signature help is not shown sometimes 2023-03-11 23:17:25 +05:30
Akash Yadav f2e9eea49c feat: add preference to disable Java diagnostics (experimental) 2023-02-17 18:08:12 +05:30
Akash Yadav 3090632c66 feat: use Gradle ANTLR plugin to generate lexers 2023-01-01 13:43:23 +05:30
Akash Yadav 42a3e71114 chore: migrate to Kotlin DSL and Version Catalog 2022-12-30 23:24:38 +05:30
Akash Yadav c9c6803052 refactor: rename module :build-tools to :subprojects 2022-12-21 18:36:08 +05:30
Akash Yadav fb9096013f refactor: move IDEEditor to :editor module (fixes #672) 2022-12-20 07:59:10 +05:30
Akash Yadav 8fdf930ae9 feat: add completions for attribute value in UI Designer 2022-12-02 12:31:51 +05:30
Akash Yadav d06a1f8c84 Added base files for new XML inflater API 2022-11-02 20:09:54 +05:30
Akash Yadav 9e16d827c8 Removed UI designer 2022-11-02 13:48:41 +05:30
Akash Yadav b16dc13156 Added: Long click java completion item for documentation 2022-10-28 22:55:15 +05:30
Akash Yadav 7b15d3e1ca Refactored the actions API 2022-10-17 17:17:03 +05:30
Akash Yadav 05790f11e6 Implemented the preferences screen with the Preferences API 2022-10-10 18:56:58 +05:30
Akash Yadav 64fa523a84 Use LemMinX formatter for formatting XML files 2022-10-09 22:49:49 +05:30
Akash Yadav 5d3a47afc0 Added events index for :lsp:api 2022-09-17 22:01:50 +05:30
Akash Yadav d5e77be04e Implemented snippet support in LSP 2022-09-04 23:31:03 +05:30
Akash Yadav 2a2522f2eb Allow setting min fuzzy match ratio in IServerSettings 2022-08-26 07:52:25 +05:30
Akash Yadav c3d9a97a8e Use INTERRUPTION_LEVEL_SLIGHT for Java completion to avoid broken ZipFs
Implemented the very basics of Lookup API
Updated sora-editor to version 0.16.5
2022-08-14 18:10:02 +05:30
Akash Yadav 69d273fb52 Use single-use compiler intance for analyzing java files 2022-08-12 13:29:58 +05:30
Akash Yadav d56c2f12c5 Migrated sora-editor to version 0.16.1 2022-08-11 13:12:24 +05:30
Akash Yadav bf4f313be8 Define namespaces in build.gradle instead of packages in AndroidManifest 2022-08-09 09:22:09 +05:30
Akash Yadav bc5c0c48e7 Moved 'eventbus*' modules from 'build-tools' module to root project 2022-07-23 09:08:24 +05:30
Akash Yadav b5a020cf43 Use EventBus index to provide subscribers to EventBus 2022-07-14 16:54:54 +05:30
Akash Yadav 90c0c22190 Fix #235: Removed unnecessary ILanguageServer methods 2022-07-11 22:35:36 +05:30
Akash Yadav 99d576c224 Do not throw AlreadyInitializedException if server is already initialized (fixes #255) 2022-07-10 20:56:57 +05:30
Akash Yadav 3f320053f2 Fix #264: Do not update Language server instance if already registered 2022-07-10 16:43:54 +05:30
Akash Yadav 9e931bc3c1 Complete imports from boot classpaths as well 2022-07-09 22:19:56 +05:30
Akash Yadav 87875f6c84 Fixed: Invalid change delta in Java compiler 2022-07-08 00:05:25 +05:30
Akash Yadav 26ac5a19f5 Integrated the Projects API into LSP 2022-07-08 00:05:22 +05:30
Akash Yadav 3fece90c9c Moved LSP modules from package 'com.itsaky.lsp' to 'com.itsaky.androidide.lsp' 2022-07-08 00:05:21 +05:30
Akash Yadav 650d31a07e Renamed package name for Java LSP 2022-07-08 00:05:20 +05:30
Akash Yadav f6996e6dfb Implemented the new Projects API in ProjectManager 2022-07-02 20:33:48 +05:30
Akash Yadav 17b259284c Use FormatCodeParams for requesting code format from LSP 2022-07-02 20:33:42 +05:30
Akash Yadav bd5572a2a6 Added IEditHandler to compute and handle additional on CompletionItem selection
This is useful to avoid reparsing or recompiling the whole source code just to compute additional edits of a completion. This also makes sure that we do not unnecessarily compute additional edits for completion items which are not selected by the user
2022-07-02 20:33:42 +05:30
Akash Yadav 84596214bd Moved completion logic out of CompletableFuture
This is because the editor already requests completions on a background thread
2022-07-02 20:33:41 +05:30
Akash Yadav 8a53f71d46 On-demand additional edits computation for Class completion items 2022-07-02 20:33:41 +05:30
Akash Yadav 3ce057e1db Provide changed range in DocumentChangeEvent 2022-07-02 20:33:32 +05:30
Akash Yadav 5c43fb2c03 Improved the JavaDiagnosticProvider 2022-07-02 20:32:52 +05:30