Nebojsa Vuksic
74e57b8692
Simplify dependencies in plugin.xml by replacing multiple Jewel modules with intellij.platform.compose umbrella module
2025-08-27 13:47:30 +02:00
Yuriy Artamonov
443883d7e4
Vendor of the plugin should not be JetBrains
...
This is error-prone and might lead to plugins submitted on behalf of JetBrains by 3rd-party developers
2025-08-10 15:10:04 +02:00
Nebojsa Vuksic
a682e6dc25
Refactor: Replace ContentItemRow with simplified SimpleListItem in locations list rendering
2025-08-08 00:33:05 +02:00
Nebojsa Vuksic
222a296868
Move WeatherAppViewModel to ui package
2025-08-07 17:48:35 +02:00
Nebojsa Vuksic
4167fae9d7
Refactor: Simplify location state management by introducing LocationsUIState and updating related ViewModel and UI logic
2025-08-07 17:46:13 +02:00
Nebojsa Vuksic
8bb804c683
Add the LocationsUIState class for managing location selection logic.
2025-08-07 17:41:20 +02:00
Nebojsa Vuksic
d62e8e9594
Introduce loading, error and success state for weather forecast loading scenario.
2025-08-07 15:27:10 +02:00
Nebojsa Vuksic
4824b28177
Increase network simulation delay in WeatherForecastService to 3000ms for showcasing scenarios.
2025-08-07 15:06:16 +02:00
Nebojsa Vuksic
cf248aa19b
Add PulsingText Composable for animated text appearance in loading scenarios
2025-08-07 14:55:36 +02:00
Nebojsa Vuksic
54ca91fea4
Cancel ongoing weather forecast job before launching a new one to prevent duplicate requests
2025-08-07 11:59:03 +02:00
Nebojsa Vuksic
de0692bba6
Only reload weather data for location if the location weather forecast isn't already previewed
2025-08-07 11:59:03 +02:00
Nebojsa Vuksic
015bd0426c
Refactor: Make ViewModel APIs Disposable and rename cancel to dispose for cleanup consistency
2025-08-07 11:59:03 +02:00
Nebojsa Vuksic
9591bc93f3
Refactor: Rename MyLocationsViewModel to WeatherAppViewModel and update references accordingly
2025-08-07 10:42:34 +02:00
Nebojsa Vuksic
c137351389
Properly scope the coroutine scope of the WeatherAppSample
...
ViewModel's scope is now tied to the scope of a WeatherAppSample Composable. Once WeatherAppSample Composable exits the composition tree, the used view model coroutine scope will be disposed.
2025-08-07 10:42:34 +02:00
Nebojsa Vuksic
85f3a32137
Refactor: Convert WeatherForecastService to an interface-based implementation and improve coroutine handling
2025-08-07 10:05:51 +02:00
Nebojsa Vuksic
4673a445bf
Fix: Autocomplete popup confirms the last selected item instead of clicked one
2025-08-07 09:57:53 +02:00
Nebojsa Vuksic
a205391e0a
Add CoroutineScopeHolder service for project-wide coroutine management
2025-08-07 09:57:53 +02:00
Nebojsa Vuksic
a079747d44
Fix: Remove trailing '%' from weather.app.time.text in ComposeTemplate properties
2025-08-06 18:08:38 +02:00
Nebojsa Vuksic
ccd0a7a0b1
Refactor: Remove unused setContentWrappedInTheme extension function
2025-08-05 23:54:46 +02:00
Nebojsa Vuksic
f25ee25399
Make WeatherDetailsCard vertically scrollable and add safeContentPadding
2025-08-05 12:41:19 +02:00
Nebojsa Vuksic
11dfe41249
Refactor: Rename MyToolWindowFactory to ComposeSamplesToolWindowFactory and update related plugin.xml references
2025-08-01 13:36:13 +02:00
Nebojsa Vuksic
b603edf110
Use localized string for weather time display in WeatherDetailsCard
2025-08-01 13:18:33 +02:00
Nebojsa Vuksic
376292e5f8
Refactor: Replace id with label for improved naming clarity
2025-08-01 13:18:06 +02:00
Nebojsa Vuksic
324fea18bf
Add documentation for PreviewableItem interface
2025-08-01 13:00:41 +02:00
Nebojsa Vuksic
ef4e5c8c6c
Refactor: Rename isSearchApplicable to matches for clarity and consistency
2025-08-01 13:00:03 +02:00
Nebojsa Vuksic
8fe4926fb7
Drop 'internal' modifier for readability and shortness of examples
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
edb8fb0b28
Properly notify parents when SearchBarWithAutoCompletion text field text is cleared
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
cb6c908769
Refactor: Improve completion handling logic in SearchBarWithAutoCompletion
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
5b4ff635c4
Use localized content description for Clear button icon
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
80a485b4bd
Remove unnecessary PopupMenu modifiers
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
7996e74e24
Refactor: Introduce isInputFieldEmpty for clarity in SearchBarWithAutoCompletion
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
2eb729d331
Remove unnecessary content description in SearchBarWithAutoCompletion icon
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
267f35bbbc
Replace onGloballyPositioned with onSizeChanged in SearchBarWithAutoCompletion
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
0657ead6a5
Remove unnecessary Column usage
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
5bae830655
Cleanup SearchBarWithAutoCompletion function parameters
2025-08-01 12:57:39 +02:00
Nebojsa Vuksic
a6435ba771
Refactor: Replace the param type 'LocationsProvider' with 'SearchAutoCompletionItemProvider'
2025-07-31 15:38:38 +02:00
Nebojsa Vuksic
25d2d25132
Extract ComposeBasedTestCase class for setting up Compose test
2025-07-31 15:33:49 +02:00
Nebojsa Vuksic
45ef9a28da
Add additional test cases for MyLocationsList
2025-07-31 15:01:00 +02:00
Nebojsa Vuksic
e791d63d22
Add an empty list placeholder for MyLocationsList
2025-07-31 14:25:12 +02:00
Nebojsa Vuksic
54e147242e
Extract MyLocations Widget to a separate function
2025-07-31 10:45:24 +02:00
Nebojsa Vuksic
3dcefe6fed
Fix: Preselecting location in MyLocations list
2025-07-30 14:33:53 +02:00
Nebojsa Vuksic
e9188b61cb
Fix UI bugs with reloading weather data
2025-07-29 16:04:18 +02:00
Nebojsa Vuksic
da436500bf
Increase font on wind and humidity texts
2025-07-29 15:47:26 +02:00
Nebojsa Vuksic
2a0daaa806
Use Bundle to load string resources
2025-07-29 15:47:03 +02:00
Nebojsa Vuksic
bafad75cea
Use the arrow symbol for a wind direction
2025-07-29 15:43:30 +02:00
Nebojsa Vuksic
01d981038c
Add a 7-Days forecast widget
2025-07-29 15:25:33 +02:00
Nebojsa Vuksic
b800d6bb17
Cleanup modifier usages
2025-07-29 15:21:44 +02:00
Nebojsa Vuksic
291a35b6bd
Extract Weather colors to WeatherAppColor object
2025-07-29 15:00:11 +02:00
Nebojsa Vuksic
07ab7b2f05
Cleanup
2025-07-28 16:44:48 +02:00
Nebojsa Vuksic
4a5b2f32f6
Rename MyLocationsViewModel to WeatherAppViewModel
2025-07-28 16:19:57 +02:00