File tree Expand file tree Collapse file tree 10 files changed +54
-0
lines changed
app/src/main/java/to/bitkit/ui/screens/widgets Expand file tree Collapse file tree 10 files changed +54
-0
lines changed Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.width
1212import androidx.compose.material3.HorizontalDivider
1313import androidx.compose.material3.Icon
1414import androidx.compose.runtime.Composable
15+ import androidx.compose.runtime.LaunchedEffect
1516import androidx.compose.runtime.getValue
1617import androidx.compose.ui.Alignment
1718import androidx.compose.ui.Modifier
@@ -51,6 +52,10 @@ fun BlocksPreviewScreen(
5152 val currentBlock by blocksViewModel.currentBlock.collectAsStateWithLifecycle()
5253 val isBlocksWidgetEnabled by blocksViewModel.isBlocksWidgetEnabled.collectAsStateWithLifecycle()
5354
55+ LaunchedEffect (Unit ) {
56+ blocksViewModel.refreshOnDisplay()
57+ }
58+
5459 BlocksPreviewContent (
5560 onBack = onBack,
5661 isBlocksWidgetEnabled = isBlocksWidgetEnabled,
Original file line number Diff line number Diff line change @@ -122,6 +122,12 @@ class BlocksViewModel @Inject constructor(
122122 }
123123 }
124124
125+ fun refreshOnDisplay () {
126+ viewModelScope.launch {
127+ widgetsRepo.refreshWidget(WidgetType .BLOCK )
128+ }
129+ }
130+
125131 // MARK: - Private Methods
126132
127133 private fun initializeCustomPreferences () {
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.width
1212import androidx.compose.material3.HorizontalDivider
1313import androidx.compose.material3.Icon
1414import androidx.compose.runtime.Composable
15+ import androidx.compose.runtime.LaunchedEffect
1516import androidx.compose.runtime.getValue
1617import androidx.compose.ui.Alignment
1718import androidx.compose.ui.Modifier
@@ -50,6 +51,10 @@ fun FactsPreviewScreen(
5051 val fact by factsViewModel.currentFact.collectAsStateWithLifecycle()
5152 val isFactsWidgetEnabled by factsViewModel.isFactsWidgetEnabled.collectAsStateWithLifecycle()
5253
54+ LaunchedEffect (Unit ) {
55+ factsViewModel.refreshOnDisplay()
56+ }
57+
5358 FactsPreviewContent (
5459 onBack = onBack,
5560 isFactsWidgetEnabled = isFactsWidgetEnabled,
Original file line number Diff line number Diff line change @@ -89,6 +89,12 @@ class FactsViewModel @Inject constructor(
8989 }
9090 }
9191
92+ fun refreshOnDisplay () {
93+ viewModelScope.launch {
94+ widgetsRepo.refreshWidget(WidgetType .FACTS )
95+ }
96+ }
97+
9298 // MARK: - Private Methods
9399
94100 private fun initializeCustomPreferences () {
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.width
1212import androidx.compose.material3.HorizontalDivider
1313import androidx.compose.material3.Icon
1414import androidx.compose.runtime.Composable
15+ import androidx.compose.runtime.LaunchedEffect
1516import androidx.compose.runtime.getValue
1617import androidx.compose.ui.Alignment
1718import androidx.compose.ui.Modifier
@@ -51,6 +52,10 @@ fun HeadlinesPreviewScreen(
5152 val article by headlinesViewModel.currentArticle.collectAsStateWithLifecycle()
5253 val isHeadlinesImplemented by headlinesViewModel.isNewsWidgetEnabled.collectAsStateWithLifecycle()
5354
55+ LaunchedEffect (Unit ) {
56+ headlinesViewModel.refreshOnDisplay()
57+ }
58+
5459 HeadlinesPreviewContent (
5560 onBack = onBack,
5661 isHeadlinesImplemented = isHeadlinesImplemented,
Original file line number Diff line number Diff line change @@ -98,6 +98,12 @@ class HeadlinesViewModel @Inject constructor(
9898 }
9999 }
100100
101+ fun refreshOnDisplay () {
102+ viewModelScope.launch {
103+ widgetsRepo.refreshWidget(WidgetType .NEWS )
104+ }
105+ }
106+
101107 // MARK: - Private Methods
102108
103109 private fun initializeCustomPreferences () {
Original file line number Diff line number Diff line change @@ -60,6 +60,10 @@ fun PricePreviewScreen(
6060 val isPriceWidgetEnabled by priceViewModel.isPriceWidgetEnabled.collectAsStateWithLifecycle()
6161 val isLoading by priceViewModel.isLoading.collectAsStateWithLifecycle()
6262
63+ LaunchedEffect (Unit ) {
64+ priceViewModel.refreshOnDisplay()
65+ }
66+
6367 LaunchedEffect (Unit ) {
6468 priceViewModel.priceEffect.collect { effect ->
6569 when (effect) {
Original file line number Diff line number Diff line change @@ -130,6 +130,12 @@ class PriceViewModel @Inject constructor(
130130 }
131131 }
132132
133+ fun refreshOnDisplay () {
134+ viewModelScope.launch {
135+ widgetsRepo.refreshWidget(WidgetType .PRICE )
136+ }
137+ }
138+
133139 private fun initializeCustomPreferences () {
134140 viewModelScope.launch {
135141 pricePreferences.collect { preferences ->
Original file line number Diff line number Diff line change @@ -14,6 +14,7 @@ import androidx.compose.foundation.verticalScroll
1414import androidx.compose.material3.HorizontalDivider
1515import androidx.compose.material3.Icon
1616import androidx.compose.runtime.Composable
17+ import androidx.compose.runtime.LaunchedEffect
1718import androidx.compose.runtime.getValue
1819import androidx.compose.ui.Alignment
1920import androidx.compose.ui.Modifier
@@ -53,6 +54,10 @@ fun WeatherPreviewScreen(
5354 val weather by weatherViewModel.currentWeather.collectAsStateWithLifecycle()
5455 val isWeatherWidgetEnabled by weatherViewModel.isWeatherWidgetEnabled.collectAsStateWithLifecycle()
5556
57+ LaunchedEffect (Unit ) {
58+ weatherViewModel.refreshOnDisplay()
59+ }
60+
5661 WeatherPreviewContent (
5762 onBack = onBack,
5863 isWeatherWidgetEnabled = isWeatherWidgetEnabled,
Original file line number Diff line number Diff line change @@ -124,6 +124,12 @@ class WeatherViewModel @Inject constructor(
124124 }
125125 }
126126
127+ fun refreshOnDisplay () {
128+ viewModelScope.launch {
129+ widgetsRepo.refreshWidget(WidgetType .WEATHER )
130+ }
131+ }
132+
127133 // MARK: - Private Methods
128134
129135 private fun initializeCustomPreferences () {
You can’t perform that action at this time.
0 commit comments