Commit Graph

137 Commits

Author SHA1 Message Date
Akash Yadav a11c4607b4 fix: improve options menu inflation and invalidation in editor activity
This commits improves the options menu inflation and invalidation logic in the EditorActivity. The options menu is now properly invalidated in onPrepareOptionsMenu and inflated only
 when required. Also, the options menu is now lazily invalidated, cancelling all the previous invalidation calls in order to prevent re-inflating the options menu frequently.
2023-10-27 22:10:09 +05:30
Akash Yadav e193723529 fix(javac-services): do not flood logs by unnecessarily logging 'keepComments' override 2023-10-27 22:10:09 +05:30
Akash Yadav dd8dca9a7c fix: add TracingEditorRenderer to analyze editor's drawing performance 2023-10-27 22:10:08 +05:30
Akash Yadav f61b150395 fix: add formatter option to use Java17InputAstVisitor 2023-10-22 09:27:03 +05:30
Akash Yadav f1207d24e4 fix: convert 'google-java-format' to an Android module 2023-10-22 09:27:03 +05:30
Akash Yadav c98fbbdcd5 fix: add base patches for Android 2023-10-22 09:27:02 +05:30
Akash Yadav d74627a131 fix(google-java-format): update to v1.18.1 2023-10-22 09:27:02 +05:30
Akash Yadav fae1aecb46 fix: replace usage of guava-jre with guava-android 2023-10-20 19:48:55 +05:30
Akash Yadav 0b22af8993 refactor: fix some kotlin warnings 2023-10-12 23:22:14 +05:30
Akash Yadav 1e0dc747e0 fix: make LogLine recyclable 2023-10-09 18:24:00 +05:30
Akash Yadav 777dd773f8 fix: replace usage of Map with SparseArray 2023-10-09 11:30:22 +05:30
Akash Yadav cc0a6391f6 fix: add tests for MainFragment and refactor testing modules 2023-10-07 23:37:34 +05:30
Akash Yadav 57c89a3f18 tests(projects): update failing test 2023-10-05 22:06:49 +05:30
Akash Yadav 6017b79a5a tests(tooling-api): update test to check for sync issues instead of build output 2023-10-05 21:45:51 +05:30
Akash Yadav fc2afcf093 tests(lsp/java): run Java LSP tests with Robolectric 2023-10-05 21:16:48 +05:30
Akash Yadav 18ad0fb0e5 tests(tooling-api): do add unresolved dependency when config cache is enabled 2023-10-05 20:22:31 +05:30
Akash Yadav 5562dc2069 feat(tooling-api): fetch project sync issues from the Android Gradle Plugin 2023-10-05 20:05:16 +05:30
Akash Yadav 69e5671fb9 fix(tooling-api): NPE due to TaskOperationDescriptor.getOriginPlugin() being null (fixes #1358) 2023-10-04 20:20:47 +05:30
Akash Yadav 9db0b802cd fix(editor): use coroutines for reading/writing files in CodeEditorView 2023-10-04 18:49:51 +05:30
Akash Yadav 1a79c0bbf2 refactor: reformat code 2023-10-04 18:08:34 +05:30
Akash Yadav 6899e1f8fc fix(build-service,tooling-api): Gradle Daemon and ToolingAPI server is not stopped properly
The Tooling API server (which is executed in a separate process) was not being stopped properly after IToolingApiServer.shutdown() was called. As a result, the Gradle daemon started by the tooling API was not stopped as well.

This commit fixes this issue by properly implementing the shutdown() call in Tooling API. Now, when the user closes a project and the GradleBuildService is destroyed, the Tooling API server stops the Gradle daemon(s) and then shutdowns itself.
2023-10-03 22:36:20 +05:30
Akash Yadav 66aa9099b4 fix(projects): parallelize project indexing with coroutines 2023-10-02 15:05:21 +05:30
Akash Yadav 1d54a3ff4d tests: fix compilation issues 2023-10-02 12:27:56 +05:30
Akash Yadav 1874b911e7 fix(tooling-api): avoid recreating ProjectConnection multiple times
Also, the TaskExecutionMessage now only accepts the tasks to run, not the project path and the Gradle distribution params
2023-09-30 22:02:58 +05:30
Akash Yadav 4c95232854 fix(tooling-api): reuse GradleConnector whenever possible 2023-09-30 21:35:25 +05:30
Akash Yadav 5fe2a795e1 fix(tooling-api): remove usage of hardcoded root project path 2023-09-30 21:08:14 +05:30
Akash Yadav c440265396 fix: cache XmlRegistry instances 2023-09-12 18:15:47 +05:30
Akash Yadav 461bded415 fix: reduce frequence of 'creating resource table' log messages (closes #1265) 2023-09-12 10:57:03 +05:30
Akash Yadav dbdb8fcfa5 feat: add ability to disable logging in XmlRegistry 2023-09-12 00:25:21 +05:30
Akash Yadav 9c99d066c3 refactor: reorganize xml registries 2023-09-12 00:18:29 +05:30
Akash Yadav 2981bfb10e fix: register and load XML registries using ServiceLoader 2023-09-12 00:16:19 +05:30
Akash Yadav 4a44581ae3 tests(tooling-api): add test to ensure task events are dispatched when configuration cache is enabled (#1173) 2023-09-06 09:26:12 +05:30
Akash Yadav 4290de353d fix: add ability to use custom Gradle dist version in tooling API 2023-09-05 17:36:51 +05:30
Akash Yadav d66e3b384c fix(projects): remove IProjectManager.app 2023-09-05 17:36:49 +05:30
Akash Yadav 7f3cc9f9bd fix: build variants are not updated when setting up project in tests 2023-09-05 17:36:49 +05:30
Akash Yadav d3aebc36bd fix(tooling-api): warn user if the AGP version is greater than tested version 2023-09-05 17:36:47 +05:30
Akash Yadav bc014083c9 fix: specify minimum and latest AGP version in BuildInfo 2023-09-05 17:36:47 +05:30
Akash Yadav ee6aa11bb0 refactor: rename AndroidModule.selectedVariant to 'configuredVariant' 2023-09-05 17:36:42 +05:30
Akash Yadav b107880ed2 fix: remove usage of hardcoded 'debug' variant in AndroidModule class 2023-09-05 17:36:41 +05:30
Akash Yadav f3351d1867 fix: generate sources for selected variant when XML files change 2023-09-05 17:36:41 +05:30
Akash Yadav 98d6cc2937 feat: allow user to select the app module to build and install in case of multi-app project 2023-09-05 17:36:40 +05:30
Akash Yadav 458dcf5641 fix(tooling-api): do not try to fetch model sync files on unsupported AGP versions 2023-09-05 17:36:39 +05:30
Akash Yadav f5143625ef refactor: migrate ProjectManager to interface based API 2023-09-05 17:36:39 +05:30
Akash Yadav 7d64702e3a fix(tooling-api): fall back to default variant if configured variant is not found 2023-09-05 17:36:38 +05:30
Akash Yadav 4b577f5eed feat: add support for selecting build variants in project (closes #223) 2023-09-05 17:36:37 +05:30
Akash Yadav 73f2b18a37 refactor(tooling-api): rename 'InitializeProjectMessage' to 'InitializeProjectParams' 2023-09-05 17:36:37 +05:30
Akash Yadav 8c21fbc002 feat: add UI for build variants list 2023-09-05 17:36:35 +05:30
Akash Yadav 08d376f370 feat: merge file tree to left drawer using navigation rail 2023-09-05 17:36:32 +05:30
Akash Yadav 79b7cc1083 fix: update AGP and builder-model API to v8.1.0 (fixes #1192) 2023-09-05 17:36:32 +05:30
Akash Yadav 7ad3fe86a5 feat: automatically select build variants for Android projects 2023-09-05 17:36:31 +05:30