Commit Graph

273 Commits

Author SHA1 Message Date
Akash Yadav cc0a6391f6 fix: add tests for MainFragment and refactor testing modules 2023-10-07 23:37:34 +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 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 f5143625ef refactor: migrate ProjectManager to interface based API 2023-09-05 17:36:39 +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 0f7fc23084 fix(xml-inflater): 'layout' attribute in <include> tags is not preserved while inflating layouts (closes #1214) 2023-09-05 17:36:34 +05:30
Akash Yadav 7ad3fe86a5 feat: automatically select build variants for Android projects 2023-09-05 17:36:31 +05:30
Akash Yadav e725d1cacf feat(projects): implement project deserialization and transformation (2/2) 2023-09-05 17:36:30 +05:30
Akash Yadav de5e55c86e feat(tooling-api): new tooling API model implementation 2023-09-05 17:36:28 +05:30
Akash Yadav b42d3bf74b fix(xml-inflater): call endParse() only if startParse() was called by inflater 2023-08-07 23:03:10 +05:30
Akash Yadav 9bc06cfacb fix(xml-inflater): use custom TextureView when inflating XML layout (#1129) 2023-07-20 14:04:16 +05:30
Akash Yadav ddeb6c0c70 fix(xml-inflater): use a custom TextureView to avoid UnsupportedOperationException in UI Designer (fixes #1129) 2023-07-20 13:20:06 +05:30
Akash Yadav 49da2c122c fix(xml-inflater): do not set background and foreground to TextureView 2023-07-20 13:06:41 +05:30
Akash Yadav e50b02eafb fix(xml-inflater): allow removing/replacing attribute handlers in view adapters 2023-07-20 10:09:11 +05:30
Akash Yadav 84beac21c4 tests: try to fix XML inflater tests in CI 2023-07-12 20:51:12 +05:30
Akash Yadav 96340f8582 fix(xml-inflater): limit GridLayout to 'rowCount * columnCount' children (fixes #982) 2023-05-27 20:55:37 +05:30
Akash Yadav ad96309145 fix(xml-inflater): add default implementation for IViewGroup.findNearestChild 2023-05-27 20:50:11 +05:30
Akash Yadav 2cd7bb9c9c feat(layout-inflater): provide optional child view to IViewGroup.canAcceptChild 2023-05-27 19:52:04 +05:30
Akash Yadav 79cbcda75a docs: update JavaDoc for IViewGroupAdapter.computeChildIndex 2023-05-27 19:43:30 +05:30
Akash Yadav 823dea8929 feat(layout-inflater,uidesigner): move child view index computation logic to viewgroup adapters 2023-05-27 19:40:35 +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 7ddd2f5a82 tests: use FileProvider API to access file paths 2023-04-09 23:22:24 +05:30
Akash Yadav 598ec145d9 refactor: rename module 'annotation-ksp' to 'annotation-processors-ksp' 2023-03-30 23:30:31 +05:30
Akash Yadav 8b3e1409d4 fix(tests): update LayoutInflaterTest 2023-02-11 23:48:44 +05:30
Akash Yadav 453529566a fix(xml-inflater): invalid IView instance is added to parent view in onCreateIncludedView 2023-02-11 23:45:55 +05:30
Akash Yadav 288c55176d docs: update javadoc for IViewAdapter 2023-02-11 22:57:52 +05:30
Akash Yadav 25a76e9a1c fix(xml-inflater,uidesigner): exclude unsupported view adapters from adapters index 2023-02-11 21:58:01 +05:30
Akash Yadav 40d128d76e refactor: resolve some compiler warnings 2023-02-11 21:34:37 +05:30
Akash Yadav 1cc1f21ea7 fix(tooling-api): FileTypeAdapter is incorrectly implemented 2023-01-28 22:39:49 +05:30
Akash Yadav e06aa1cb5f fix(xml-inflater): some required methods are not overridden by IncludeView 2023-01-28 22:39:48 +05:30
Akash Yadav c4f6727355 fix(xml-inflater): attributes on <include> tag are not applied to IncludeView 2023-01-28 22:39:48 +05:30
Akash Yadav 755043b050 refactor(javac): update nb-javac-android
This replaces the usage of 'com.sun' package from javac to 'openjdk'.
2023-01-28 22:39:48 +05:30
Akash Yadav 17ac655fa8 refactor: refactor 2023-01-23 21:25:13 +05:30
Akash Yadav 5de4a583de fix(xml-inflater): log messages instead of throwing exceptions while parsing attribute values
While parsing attribute values, if the value is a reference to a resource and its type is unexpected, throwing exceptions will result in the IDE crash as the view adapters call these methods on the UI thread. Instead, logging warning messages would be a better option.

(closes #744)
2023-01-14 22:29:54 +05:30
Akash Yadav 08c1444b99 fix(xml-inflater,uidesigner): attributes without namespaces are not handled
fixes #729
2023-01-14 22:18:38 +05:30
Akash Yadav 81413466b3 fix: attribute name not shown in delete attribute dialog 2023-01-07 17:16:55 +05:30
Akash Yadav 7d70fde7c0 fix: newly added TextView has android:text attribute by default 2023-01-01 22:31:25 +05:30
Deep Kr. Ghosh b2d6ec9c06 Add more layout adapters (#680)
IViewAdapter implementations for the following views have been added :
- GridViewAdapter
- ViewAnimatorAdapter
- ViewSwitcher
- TextSwitcher
- ImageSwitcher
- ViewFlipperAdapter
2023-01-01 22:30:49 +05:30
Akash Yadav 50fb3f4b17 fix: build warnings due to jvmTarget not set properly for KotlinCompile tasks 2023-01-01 09:26:05 +05:30
Akash Yadav 34e09dc0d4 feat: use Kotlin Symbol Processor to generate IViewAdapterIndex implementation 2023-01-01 08:33:24 +05:30
Akash Yadav 1ee192f314 feat: define interface for IViewAdapterIndex to resolve unresolved references in UI designer 2022-12-31 18:42:12 +05:30
Akash Yadav 42a3e71114 chore: migrate to Kotlin DSL and Version Catalog 2022-12-30 23:24:38 +05:30
Akash Yadav 70f48d4c20 fix: crash when undoing attribute addition 2022-12-28 22:15:28 +05:30
Akash Yadav 543f0a4b89 feat: add more view adapters
IViewAdapter implementations for the following widgtes have been added :
- AnalogClock
- CalendarView
- Chronometer
- DigitalClock
- NumberPicker
- QuickContactBadge
- RatingBar
- Space
- TextClock
- VideoView
2022-12-23 07:47:38 +05:30
Akash Yadav 99f749684f fix: adapter index test 2022-12-23 07:39:05 +05:30
Akash Yadav 13f9483281 refactor: moved IViewAdapter.canAcceptChild() to IViewGroupAdapter 2022-12-22 20:45:31 +05:30
Akash Yadav 91382440c7 feat(xml-inflater): replace unsupported views/layouts with error views
This fixes a bug where the child views of an unsupported layout were lost in the UI Designer's XML generation process
2022-12-22 20:18:12 +05:30