diff --git a/app-k9mail/src/main/AndroidManifest.xml b/app-k9mail/src/main/AndroidManifest.xml
index 222feb98e98..9f2edb2176c 100644
--- a/app-k9mail/src/main/AndroidManifest.xml
+++ b/app-k9mail/src/main/AndroidManifest.xml
@@ -43,24 +43,6 @@
-
-
-
-
-
-
-
-
-
{ K9MessageListWidgetConfig() }
single { K9UnreadWidgetConfig() }
}
diff --git a/app-k9mail/src/main/kotlin/com/fsck/k9/widget/list/MessageListWidgetProvider.kt b/app-k9mail/src/main/kotlin/com/fsck/k9/widget/list/MessageListWidgetProvider.kt
deleted file mode 100644
index 65449f42078..00000000000
--- a/app-k9mail/src/main/kotlin/com/fsck/k9/widget/list/MessageListWidgetProvider.kt
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.fsck.k9.widget.list
-
-import app.k9mail.feature.widget.message.list.BaseMessageListWidgetProvider
-
-/**
- * IMPORTANT: The fully qualified name for this class must be
- * `com.fsck.k9.widget.list.MessageListWidgetProvider`.
- * Otherwise widgets created with older versions of the app using a different name
- * will stop working or disappear.
- */
-class MessageListWidgetProvider : BaseMessageListWidgetProvider()
diff --git a/app-thunderbird/src/main/AndroidManifest.xml b/app-thunderbird/src/main/AndroidManifest.xml
index 780fcb614c6..67d75aebf10 100644
--- a/app-thunderbird/src/main/AndroidManifest.xml
+++ b/app-thunderbird/src/main/AndroidManifest.xml
@@ -42,24 +42,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/feature/widget/message-list/src/main/res/layout/message_list_widget_list_item_loading.xml b/feature/widget/message-list/src/main/res/layout/message_list_widget_list_item_loading.xml
deleted file mode 100644
index 3b182db2a34..00000000000
--- a/feature/widget/message-list/src/main/res/layout/message_list_widget_list_item_loading.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
diff --git a/feature/widget/message-list/src/main/res/layout/message_list_widget_loading.xml b/feature/widget/message-list/src/main/res/layout/message_list_widget_loading.xml
deleted file mode 100644
index d68930ff82c..00000000000
--- a/feature/widget/message-list/src/main/res/layout/message_list_widget_loading.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
diff --git a/feature/widget/message-list/src/main/res/values/colors.xml b/feature/widget/message-list/src/main/res/values/colors.xml
deleted file mode 100644
index 2b2baf649ae..00000000000
--- a/feature/widget/message-list/src/main/res/values/colors.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- #737373
- #e4e4e4
- #e5e5e5
- #444444
- #000000
-
diff --git a/feature/widget/message-list/src/main/res/xml/message_list_widget_info.xml b/feature/widget/message-list/src/main/res/xml/message_list_widget_info.xml
index b0716664450..b74cc928697 100644
--- a/feature/widget/message-list/src/main/res/xml/message_list_widget_info.xml
+++ b/feature/widget/message-list/src/main/res/xml/message_list_widget_info.xml
@@ -1,8 +1,5 @@
-
-
+ >
+
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index fe16f2a6e50..4b2cdd57d6e 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -55,6 +55,7 @@ detektPlugin = "1.23.5"
detektPluginCompose = "0.4.18"
fastAdapter = "5.7.0"
forkhandlesBom = "2.20.0.0"
+glanceMaterial3 = "1.1.1"
glide = "4.16.0"
gradle = "8.11.1"
http4kBom = "5.35.2.0"
@@ -99,6 +100,7 @@ tokenautocomplete = "4.0.0-beta01-k9mail02"
turbine = "1.2.0"
xmlpull = "1.0"
zxing = "3.5.3"
+glanceAppwidget = "1.1.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
@@ -150,6 +152,7 @@ androidx-core-splashscreen = { module = "androidx.core:core-splashscreen", versi
androidx-fragment = { module = "androidx.fragment:fragment", version.ref = "androidxFragment" }
androidx-fragment-compose = { module = "androidx.fragment:fragment-compose", version.ref = "androidxFragment" }
androidx-fragment-testing = { module = "androidx.fragment:fragment-testing", version.ref = "androidxFragment" }
+androidx-glance-material3 = { module = "androidx.glance:glance-material3", version.ref = "glanceMaterial3" }
androidx-lifecycle-common = { module = "androidx.lifecycle:lifecycle-common", version.ref = "androidxLifecycle" }
androidx-lifecycle-runtime-compose = { module = "androidx.lifecycle:lifecycle-runtime-compose", version.ref = "androidxLifecycle" }
androidx-lifecycle-runtime-ktx = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "androidxLifecycle" }
@@ -245,6 +248,7 @@ tokenautocomplete = { module = "de.cketti.temp:tokenautocomplete", version.ref =
turbine = { module = "app.cash.turbine:turbine", version.ref = "turbine" }
xmlpull = { module = "com.github.cketti:xmlpull-extracted-from-android", version.ref = "xmlpull" }
zxing = { module = "com.google.zxing:core", version.ref = "zxing" }
+androidx-glance-appwidget = { group = "androidx.glance", name = "glance-appwidget", version.ref = "glanceAppwidget" }
[bundles]
shared-jvm-main = [
diff --git a/legacy/common/src/main/java/com/fsck/k9/CommonApp.kt b/legacy/common/src/main/java/com/fsck/k9/CommonApp.kt
index 28d7a305e3b..3cee542c2af 100644
--- a/legacy/common/src/main/java/com/fsck/k9/CommonApp.kt
+++ b/legacy/common/src/main/java/com/fsck/k9/CommonApp.kt
@@ -4,7 +4,6 @@ import android.app.Application
import android.content.Context
import android.content.res.Configuration
import android.content.res.Resources
-import app.k9mail.feature.widget.message.list.MessageListWidgetManager
import app.k9mail.legacy.di.DI
import app.k9mail.legacy.ui.theme.ThemeManager
import com.fsck.k9.controller.MessagingController
@@ -30,7 +29,6 @@ abstract class CommonApp : Application(), WorkManagerConfiguration.Provider {
private val themeManager: ThemeManager by inject()
private val appLanguageManager: AppLanguageManager by inject()
private val notificationChannelManager: NotificationChannelManager by inject()
- private val messageListWidgetManager: MessageListWidgetManager by inject()
private val workManagerConfigurationProvider: WorkManagerConfigurationProvider by inject()
private val appCoroutineScope: CoroutineScope = MainScope()
@@ -52,7 +50,6 @@ abstract class CommonApp : Application(), WorkManagerConfiguration.Provider {
initializeAppLanguage()
updateNotificationChannelsOnAppLanguageChanges()
themeManager.init()
- messageListWidgetManager.init()
messagingListenerProvider.listeners.forEach { listener ->
messagingController.addListener(listener)