Commit Graph

3117 Commits

Author SHA1 Message Date
Akash Yadav dd8dca9a7c fix: add TracingEditorRenderer to analyze editor's drawing performance 2023-10-27 22:10:08 +05:30
Akash Yadav 72621d6d98 fix(build-logic): simple version name cannot be extracted in shallow clones 2023-10-27 22:10:08 +05:30
Akash Yadav 42bbe6a39c fix(editor/treesitter): IOOB exception in TsAnalyzeWorker when deleting text 2023-10-27 22:10:07 +05:30
Akash Yadav a41775a20c fix(editor): DocumentSelectedEvent is not handled by event dispatcher 2023-10-27 22:10:07 +05:30
Akash Yadav a2af3bb050 fix: dispatch editor events in background 2023-10-27 22:10:06 +05:30
Akash Yadav 540e33734b refactor: extract IEditor impl to delegate class 2023-10-27 22:10:06 +05:30
Akash Yadav 5804f4e001 fix: SymbolInputView is invalidated multiple times on tab reselection 2023-10-27 22:10:05 +05:30
Akash Yadav 31285710f5 fix(editor/treesitter): parse syntax tree in same coroutine 2023-10-27 22:10:05 +05:30
Akash Yadav be363e58ce chore: gitignore .idea/deploymentTargetDropdown.xml 2023-10-27 22:10:04 +05:30
Akash Yadav d3c11397af fix(editor/treesitter): reduce delay for cancelling previous parse 2023-10-27 22:10:04 +05:30
Akash Yadav 8a2b74ff39 fix: invalid condition for 'enabled' property in 'BaseBuildAction.prepare' (#1369) 2023-10-27 22:10:03 +05:30
Smooth E fba140e853 refactor(shared/utils): rename recyclableObjectPool.kt to recyclableObjectPoolExtensions.kt to allow building the project on Windows (#1405) 2023-10-26 18:27:48 +05:30
Smooth E 69a5a48429 feat(design/bottom-sheet): replace ic_close with ic_sweep_delete on the FAB for clearing logs (#1404) 2023-10-26 18:16:21 +05:30
Akash Yadav 42ae28a0b9 refactor: rename 'TSAnalyzeManager' to 'TsAnalyzeManager' for consistency 2023-10-23 21:38:51 +05:30
Akash Yadav 6d8cbf7a42 fix(editor/treesitter): local variables are not highlighted properly 2023-10-23 21:36:54 +05:30
Akash Yadav 7923243b3b fix(editor/treesitter): reimplement TsAnalyzeManager for better thread safety and error handling 2023-10-23 21:27:30 +05:30
Akash Yadav 5db4f33721 fix: remove unused TSSynchronized 2023-10-22 23:02:15 +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 c76b1b2539 fix: do not keep debug symbols when packaging shared libraries 2023-10-22 09:19:40 +05:30
Akash Yadav fae1aecb46 fix: replace usage of guava-jre with guava-android 2023-10-20 19:48:55 +05:30
Akash Yadav 7c66581bd5 fix: 'Sync project' actions is not invalidated on build start 2023-10-19 21:46:45 +05:30
Akash Yadav 29ca7bc64f fix(actions): id of ActionItem is not logged correctly after execution 2023-10-18 12:22:32 +05:30
Akash Yadav 33e6a4b7ad fix: do not unnecessarily initialize TsScopedVariables to avoid querying the whole tree 2023-10-16 22:17:51 +05:30
Akash Yadav 0a5a5400a5 fix: occasional crash in TsLooperThread when text is edited too frequently 2023-10-16 22:15:47 +05:30
Akash Yadav 1d67056f32 fix: IOOB exception when checking for signature help (fixes #1380) 2023-10-16 20:31:46 +05:30
Akash Yadav 3ecf4d7259 fix: TsBracketPairs uses recycled TSNode instances 2023-10-15 23:54:53 +05:30
Akash Yadav 088bdce6c6 fix: properly implement TSTree edition and query execution 2023-10-15 23:47:20 +05:30
Akash Yadav f2cfd865e8 fix: opened files are not highlighted with tree sitter
This happens because the tree-sitter nodes and trees are inaccessible when the files are opened
2023-10-15 18:38:43 +05:30
Akash Yadav d5910c6fc0 fix(editor): various improvements related to tree sitter code analysis
- Integrate the 'language-treesitter' module from sora-editor into the IDE itself for better control and customization of the tree sitter analysis.

- Invalidate line span generator when tree is edited - This is required because TSTree instances are not thread-safe and the spans generator tries to query the tree after it is edited.
 This results in SEGV_MAPERR errors in native code because the TSNodes are invalidatd after TSTree.edit() calls and the cursor tries to query those invalidated nodes.

- Recycle and reuse TS* instances - When analyzing the source code using Tree Sitter, a huge number of objects are created and deleted. This results in an increased of times the garbage
 collector is invoked.
2023-10-15 17:55:11 +05:30
Akash Yadav 971fc605ff fix: include language-treesitter from sora-editor locally 2023-10-13 23:03:57 +05:30
Akash Yadav 0b22af8993 refactor: fix some kotlin warnings 2023-10-12 23:22:14 +05:30
Akash Yadav 1b1551f23b fix(deps): update KotlinX Coroutines to v1.7.3 2023-10-12 23:20:39 +05:30
Akash Yadav b2447c28ff fix: log warning if cache-hit rate is below specified threshold 2023-10-09 19:50:05 +05:30
Akash Yadav 1e0dc747e0 fix: make LogLine recyclable 2023-10-09 18:24:00 +05:30
Akash Yadav 5d03ac85b0 feat: add RecyclableObjectPool to recycle frequently used objects 2023-10-09 18:17:56 +05:30
Akash Yadav 777dd773f8 fix: replace usage of Map with SparseArray 2023-10-09 11:30:22 +05:30
Akash Yadav 8901e2b566 fix: misleading error message is shown when installing APK after build (#1369) 2023-10-09 01:00:02 +05:30
Akash Yadav abe585eba0 fix: save action is not invalidated when 'Quick run' action is executed (#1369) 2023-10-09 00:55:18 +05:30
Akash Yadav 52844b201e fix: migrate Actions API to Kotlin Coroutines 2023-10-09 00:25:57 +05:30
Akash Yadav f02a381adf fix: symbol input view is not shown for files
This is caused because the File instance in the IDEEditor is set in postRead() method which is called AFTER the symbols in the SymbolInputView are updated (#1369)
2023-10-08 23:55:02 +05:30
Akash Yadav e7072086bf refactor: extract layout files for editor bottom sheet 2023-10-08 23:53:22 +05:30
Akash Yadav 4b513ccdd5 chore: partially revert 8b7b374a6 2023-10-08 23:10:52 +05:30
Akash Yadav 8b7b374a68 chore: try to setup CI instrumentation tests 2023-10-08 15:22:54 +05:30
Akash Yadav 8e500547b7 fix: show configuration warning only once 2023-10-08 14:15:53 +05:30
Akash Yadav 044599f6e2 fix: add warnings for incompatible or unsupported IDE build configurations 2023-10-08 12:52:04 +05:30
Akash Yadav 18e320f729 refactor: move MainFragmentTest to 'fragments' package 2023-10-08 00:11:09 +05:30
Akash Yadav cc0a6391f6 fix: add tests for MainFragment and refactor testing modules 2023-10-07 23:37:34 +05:30