diff --git a/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt b/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt index 4bd50fd4ca961fa27fae2857d1f4d115c9cbee53..634780f9c938b0e62cdcee96d2b11d093474e63f 100644 --- a/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt +++ b/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt @@ -2,9 +2,13 @@ package org.briarproject.briar.desktop import dagger.Module import dagger.Provides +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.asExecutor +import kotlinx.coroutines.swing.Swing import org.briarproject.bramble.account.AccountModule import org.briarproject.bramble.api.FeatureFlags import org.briarproject.bramble.api.db.DatabaseConfig +import org.briarproject.bramble.api.event.EventExecutor import org.briarproject.bramble.api.plugin.PluginConfig import org.briarproject.bramble.api.plugin.TorConstants.DEFAULT_CONTROL_PORT import org.briarproject.bramble.api.plugin.TorConstants.DEFAULT_SOCKS_PORT @@ -15,7 +19,6 @@ import org.briarproject.bramble.api.plugin.TransportId import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory import org.briarproject.bramble.battery.DefaultBatteryManagerModule -import org.briarproject.bramble.event.DefaultEventExecutorModule import org.briarproject.bramble.network.JavaNetworkModule import org.briarproject.bramble.plugin.tor.CircumventionModule import org.briarproject.bramble.plugin.tor.UnixTorPluginFactory @@ -33,6 +36,7 @@ import org.briarproject.briar.desktop.viewmodel.ViewModelModule import java.io.File import java.nio.file.Path import java.util.Collections.emptyList +import java.util.concurrent.Executor import javax.inject.Singleton @Module( @@ -41,7 +45,6 @@ import javax.inject.Singleton CircumventionModule::class, ClockModule::class, DefaultBatteryManagerModule::class, - DefaultEventExecutorModule::class, DefaultTaskSchedulerModule::class, DefaultWakefulIoExecutorModule::class, DesktopSecureRandomModule::class, @@ -69,6 +72,13 @@ internal class DesktopModule( return DesktopDatabaseConfig(dbDir, keyDir) } + @Provides + @Singleton + @EventExecutor + fun provideEventExecutor(): Executor { + return Dispatchers.Swing.asExecutor() + } + @Provides @TorDirectory internal fun provideTorDirectory(): File {