Move UI code to ui module
This commit is contained in:
parent
4384834d19
commit
b46594fed4
280 changed files with 288 additions and 156 deletions
|
@ -5,14 +5,6 @@ apply plugin: 'org.jetbrains.kotlin.android.extensions'
|
||||||
apply from: "${rootProject.projectDir}/gradle/plugins/checkstyle-android.gradle"
|
apply from: "${rootProject.projectDir}/gradle/plugins/checkstyle-android.gradle"
|
||||||
apply from: "${rootProject.projectDir}/gradle/plugins/findbugs-android.gradle"
|
apply from: "${rootProject.projectDir}/gradle/plugins/findbugs-android.gradle"
|
||||||
|
|
||||||
//noinspection GroovyAssignabilityCheck
|
|
||||||
configurations.all {
|
|
||||||
resolutionStrategy {
|
|
||||||
force "com.android.support:support-annotations:${versions.supportLibrary}"
|
|
||||||
force "com.android.support:design:${versions.supportLibrary}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"
|
||||||
|
|
||||||
|
@ -31,31 +23,16 @@ dependencies {
|
||||||
|
|
||||||
api "com.squareup.okio:okio:${versions.okio}"
|
api "com.squareup.okio:okio:${versions.okio}"
|
||||||
api "commons-io:commons-io:${versions.commonsIo}"
|
api "commons-io:commons-io:${versions.commonsIo}"
|
||||||
api "com.android.support:support-v4:${versions.supportLibrary}"
|
|
||||||
api "com.android.support:appcompat-v7:${versions.supportLibrary}"
|
|
||||||
api "com.takisoft.fix:preference-v7:${versions.preferencesFix}"
|
|
||||||
api "com.takisoft.fix:preference-v7-datetimepicker:${versions.preferencesFix}"
|
|
||||||
api "com.takisoft.fix:preference-v7-colorpicker:${versions.preferencesFix}"
|
|
||||||
api "com.takisoft.fix:preference-v7-ringtone:${versions.preferencesFix}"
|
|
||||||
api "com.android.support:recyclerview-v7:${versions.supportLibrary}"
|
|
||||||
api "android.arch.lifecycle:extensions:${versions.lifecycleExtensions}"
|
|
||||||
api "androidx.core:core-ktx:0.3"
|
api "androidx.core:core-ktx:0.3"
|
||||||
api "org.jsoup:jsoup:1.11.2"
|
api "org.jsoup:jsoup:1.11.2"
|
||||||
api "de.cketti.library.changelog:ckchangelog:1.2.1"
|
|
||||||
api "com.github.bumptech.glide:glide:3.6.1"
|
|
||||||
api "com.splitwise:tokenautocomplete:2.0.7"
|
|
||||||
api "de.cketti.safecontentresolver:safe-content-resolver-v14:0.9.0"
|
|
||||||
api "com.github.amlcurran.showcaseview:library:5.4.1"
|
|
||||||
api "com.squareup.moshi:moshi:1.2.0"
|
api "com.squareup.moshi:moshi:1.2.0"
|
||||||
api "com.jakewharton.timber:timber:${versions.timber}"
|
api "com.jakewharton.timber:timber:${versions.timber}"
|
||||||
api "net.jcip:jcip-annotations:1.0"
|
api "net.jcip:jcip-annotations:1.0"
|
||||||
api "org.apache.james:apache-mime4j-core:0.8.1"
|
api "org.apache.james:apache-mime4j-core:0.8.1"
|
||||||
api "com.xwray:groupie:2.1.0"
|
|
||||||
api "com.xwray:groupie-kotlin-android-extensions:2.1.0"
|
|
||||||
api "org.jetbrains.anko:anko-coroutines:0.10.4"
|
api "org.jetbrains.anko:anko-coroutines:0.10.4"
|
||||||
api "org.koin:koin-android-architecture:${versions.koin}"
|
api "org.koin:koin-android-architecture:${versions.koin}"
|
||||||
api 'com.mikepenz:materialdrawer:6.0.7'
|
|
||||||
|
|
||||||
|
testImplementation project(':mail:testing')
|
||||||
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
|
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
|
||||||
testImplementation "junit:junit:${versions.junit}"
|
testImplementation "junit:junit:${versions.junit}"
|
||||||
testImplementation "com.google.truth:truth:${versions.truth}"
|
testImplementation "com.google.truth:truth:${versions.truth}"
|
||||||
|
|
|
@ -8,7 +8,6 @@ import android.content.pm.PackageManager
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import android.os.Looper
|
import android.os.Looper
|
||||||
import android.os.StrictMode
|
import android.os.StrictMode
|
||||||
import com.fsck.k9.activity.uiModule
|
|
||||||
import com.fsck.k9.autocrypt.autocryptModule
|
import com.fsck.k9.autocrypt.autocryptModule
|
||||||
import com.fsck.k9.backend.backendModule
|
import com.fsck.k9.backend.backendModule
|
||||||
import com.fsck.k9.crypto.openPgpModule
|
import com.fsck.k9.crypto.openPgpModule
|
||||||
|
@ -22,8 +21,6 @@ import com.fsck.k9.service.BootReceiver
|
||||||
import com.fsck.k9.service.MailService
|
import com.fsck.k9.service.MailService
|
||||||
import com.fsck.k9.service.ShutdownReceiver
|
import com.fsck.k9.service.ShutdownReceiver
|
||||||
import com.fsck.k9.service.StorageGoneReceiver
|
import com.fsck.k9.service.StorageGoneReceiver
|
||||||
import com.fsck.k9.ui.endtoend.endToEndUiModule
|
|
||||||
import com.fsck.k9.ui.settings.settingsUiModule
|
|
||||||
import org.koin.standalone.KoinComponent
|
import org.koin.standalone.KoinComponent
|
||||||
import org.koin.standalone.inject
|
import org.koin.standalone.inject
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
|
@ -37,15 +34,12 @@ object Core : KoinComponent {
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
val coreModules = listOf(
|
val coreModules = listOf(
|
||||||
mainModule,
|
mainModule,
|
||||||
settingsUiModule,
|
|
||||||
endToEndUiModule,
|
|
||||||
openPgpModule,
|
openPgpModule,
|
||||||
autocryptModule,
|
autocryptModule,
|
||||||
mailStoreModule,
|
mailStoreModule,
|
||||||
backendModule,
|
backendModule,
|
||||||
extractorModule,
|
extractorModule,
|
||||||
htmlModule,
|
htmlModule
|
||||||
uiModule
|
|
||||||
)
|
)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -13,7 +13,6 @@ import android.os.AsyncTask;
|
||||||
import android.os.Environment;
|
import android.os.Environment;
|
||||||
|
|
||||||
import com.fsck.k9.Account.SortType;
|
import com.fsck.k9.Account.SortType;
|
||||||
import com.fsck.k9.activity.UpgradeDatabases;
|
|
||||||
import com.fsck.k9.core.BuildConfig;
|
import com.fsck.k9.core.BuildConfig;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.core.R;
|
||||||
import com.fsck.k9.mail.K9MailLib;
|
import com.fsck.k9.mail.K9MailLib;
|
||||||
|
@ -36,7 +35,7 @@ public class K9 {
|
||||||
* accounts' databases.
|
* accounts' databases.
|
||||||
*
|
*
|
||||||
* <p>
|
* <p>
|
||||||
* See {@link UpgradeDatabases} for a detailed explanation of the database upgrade process.
|
* See {@code UpgradeDatabases} for a detailed explanation of the database upgrade process.
|
||||||
* </p>
|
* </p>
|
||||||
*/
|
*/
|
||||||
private static final String DATABASE_VERSION_CACHE = "database_version_cache";
|
private static final String DATABASE_VERSION_CACHE = "database_version_cache";
|
||||||
|
|
|
@ -6,7 +6,6 @@ import com.fsck.k9.mail.TransportProvider
|
||||||
import com.fsck.k9.mail.power.PowerManager
|
import com.fsck.k9.mail.power.PowerManager
|
||||||
import com.fsck.k9.mailstore.StorageManager
|
import com.fsck.k9.mailstore.StorageManager
|
||||||
import com.fsck.k9.power.TracingPowerManager
|
import com.fsck.k9.power.TracingPowerManager
|
||||||
import com.fsck.k9.ui.folders.FolderNameFormatter
|
|
||||||
import org.koin.dsl.module.applicationContext
|
import org.koin.dsl.module.applicationContext
|
||||||
|
|
||||||
val mainModule = applicationContext {
|
val mainModule = applicationContext {
|
||||||
|
@ -15,6 +14,5 @@ val mainModule = applicationContext {
|
||||||
bean { TransportProvider() }
|
bean { TransportProvider() }
|
||||||
bean { get<Context>().resources }
|
bean { get<Context>().resources }
|
||||||
bean { StorageManager.getInstance(get()) }
|
bean { StorageManager.getInstance(get()) }
|
||||||
bean { FolderNameFormatter(get()) }
|
|
||||||
bean { TracingPowerManager.getPowerManager(get()) as PowerManager }
|
bean { TracingPowerManager.getPowerManager(get()) as PowerManager }
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,9 +9,7 @@ import android.content.Intent;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
|
|
||||||
import com.fsck.k9.fragment.MessageListFragment;
|
|
||||||
import com.fsck.k9.mail.Message;
|
import com.fsck.k9.mail.Message;
|
||||||
import com.fsck.k9.mailstore.LocalFolder;
|
|
||||||
import com.fsck.k9.mailstore.LocalMessage;
|
import com.fsck.k9.mailstore.LocalMessage;
|
||||||
import com.fsck.k9.provider.EmailProvider;
|
import com.fsck.k9.provider.EmailProvider;
|
||||||
|
|
||||||
|
@ -161,7 +159,7 @@ public class EmailProviderCache {
|
||||||
*
|
*
|
||||||
* <p><strong>Note:</strong>
|
* <p><strong>Note:</strong>
|
||||||
* Notifying the content resolver of the change will cause the {@code CursorLoader} in
|
* Notifying the content resolver of the change will cause the {@code CursorLoader} in
|
||||||
* {@link MessageListFragment} to reload the cursor. But especially with flag changes this will
|
* {@code MessageListFragment} to reload the cursor. But especially with flag changes this will
|
||||||
* block because of the DB write operation to update the flags. So additionally we use
|
* block because of the DB write operation to update the flags. So additionally we use
|
||||||
* {@link LocalBroadcastManager} to send a {@link #ACTION_CACHE_UPDATED} broadcast. This way
|
* {@link LocalBroadcastManager} to send a {@link #ACTION_CACHE_UPDATED} broadcast. This way
|
||||||
* {@code MessageListFragment} can update the view without reloading the cursor.
|
* {@code MessageListFragment} can update the view without reloading the cursor.
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.fsck.k9.service;
|
package com.fsck.k9.service;
|
||||||
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
|
@ -9,21 +10,20 @@ import android.content.Intent;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
import timber.log.Timber;
|
|
||||||
|
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.activity.UpgradeDatabases;
|
import com.fsck.k9.mailstore.UnavailableStorageException;
|
||||||
import com.fsck.k9.power.TracingPowerManager;
|
import com.fsck.k9.power.TracingPowerManager;
|
||||||
import com.fsck.k9.power.TracingPowerManager.TracingWakeLock;
|
import com.fsck.k9.power.TracingPowerManager.TracingWakeLock;
|
||||||
import com.fsck.k9.mailstore.UnavailableStorageException;
|
import timber.log.Timber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service used to upgrade the accounts' databases and/or track the progress of the upgrade.
|
* Service used to upgrade the accounts' databases and/or track the progress of the upgrade.
|
||||||
*
|
*
|
||||||
* <p>
|
* <p>
|
||||||
* See {@link UpgradeDatabases} for a detailed explanation of the database upgrade process.
|
* See {@code UpgradeDatabases} for a detailed explanation of the database upgrade process.
|
||||||
* </p>
|
* </p>
|
||||||
*/
|
*/
|
||||||
public class DatabaseUpgradeService extends Service {
|
public class DatabaseUpgradeService extends Service {
|
||||||
|
|
|
@ -14,9 +14,9 @@ import com.fsck.k9.mail.internet.TextBody;
|
||||||
import com.fsck.k9.mailstore.MessageCryptoAnnotations;
|
import com.fsck.k9.mailstore.MessageCryptoAnnotations;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.bodypart;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.bodypart;
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.messageFromBody;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.messageFromBody;
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.multipart;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.multipart;
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertFalse;
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.assertNull;
|
import static org.junit.Assert.assertNull;
|
||||||
|
|
|
@ -9,11 +9,12 @@ import java.util.Locale;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import android.app.Application;
|
import android.app.Application;
|
||||||
|
import android.content.res.Configuration;
|
||||||
|
import android.content.res.Resources;
|
||||||
import android.support.annotation.NonNull;
|
import android.support.annotation.NonNull;
|
||||||
|
|
||||||
import com.fsck.k9.DI;
|
import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.K9RobolectricTest;
|
import com.fsck.k9.K9RobolectricTest;
|
||||||
import com.fsck.k9.activity.K9ActivityCommon;
|
|
||||||
import com.fsck.k9.mail.Address;
|
import com.fsck.k9.mail.Address;
|
||||||
import com.fsck.k9.mail.BodyPart;
|
import com.fsck.k9.mail.BodyPart;
|
||||||
import com.fsck.k9.mail.Message;
|
import com.fsck.k9.mail.Message;
|
||||||
|
@ -40,9 +41,9 @@ import org.mockito.stubbing.Answer;
|
||||||
import org.openintents.openpgp.OpenPgpDecryptionResult;
|
import org.openintents.openpgp.OpenPgpDecryptionResult;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
import org.robolectric.RuntimeEnvironment;
|
||||||
|
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.bodypart;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.bodypart;
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.messageFromBody;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.messageFromBody;
|
||||||
import static com.fsck.k9.message.TestMessageConstructionUtils.multipart;
|
import static com.fsck.k9.mail.TestMessageConstructionUtils.multipart;
|
||||||
import static junit.framework.Assert.assertEquals;
|
import static junit.framework.Assert.assertEquals;
|
||||||
import static junit.framework.Assert.assertNull;
|
import static junit.framework.Assert.assertNull;
|
||||||
import static junit.framework.Assert.assertSame;
|
import static junit.framework.Assert.assertSame;
|
||||||
|
@ -225,7 +226,7 @@ public class MessageViewInfoExtractorTest extends K9RobolectricTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTextPlusRfc822Message() throws MessagingException {
|
public void testTextPlusRfc822Message() throws MessagingException {
|
||||||
K9ActivityCommon.setLanguage(context, "en");
|
setLanguage("en");
|
||||||
Locale.setDefault(Locale.US);
|
Locale.setDefault(Locale.US);
|
||||||
TimeZone.setDefault(TimeZone.getTimeZone("GMT+01:00"));
|
TimeZone.setDefault(TimeZone.getTimeZone("GMT+01:00"));
|
||||||
|
|
||||||
|
@ -627,4 +628,13 @@ public class MessageViewInfoExtractorTest extends K9RobolectricTest {
|
||||||
|
|
||||||
return htmlProcessor;
|
return htmlProcessor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setLanguage(String language) {
|
||||||
|
Locale locale = new Locale(language);
|
||||||
|
|
||||||
|
Resources resources = context.getResources();
|
||||||
|
Configuration config = resources.getConfiguration();
|
||||||
|
config.locale = locale;
|
||||||
|
resources.updateConfiguration(config, resources.getDisplayMetrics());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,19 +9,14 @@ if (rootProject.testCoverage) {
|
||||||
apply plugin: 'jacoco'
|
apply plugin: 'jacoco'
|
||||||
}
|
}
|
||||||
|
|
||||||
//noinspection GroovyAssignabilityCheck
|
|
||||||
configurations.all {
|
|
||||||
resolutionStrategy {
|
|
||||||
force "com.android.support:support-annotations:${versions.supportLibrary}"
|
|
||||||
force "com.android.support:design:${versions.supportLibrary}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"
|
||||||
|
|
||||||
|
implementation project(":app:ui")
|
||||||
implementation project(":app:core")
|
implementation project(":app:core")
|
||||||
|
|
||||||
|
implementation "com.android.support:appcompat-v7:${versions.supportLibrary}"
|
||||||
|
|
||||||
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
|
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
|
||||||
testImplementation "junit:junit:${versions.junit}"
|
testImplementation "junit:junit:${versions.junit}"
|
||||||
testImplementation "com.google.truth:truth:${versions.truth}"
|
testImplementation "com.google.truth:truth:${versions.truth}"
|
||||||
|
|
|
@ -16,7 +16,7 @@ class App : Application() {
|
||||||
|
|
||||||
super.onCreate()
|
super.onCreate()
|
||||||
|
|
||||||
DI.start(this, Core.coreModules + appModules)
|
DI.start(this, Core.coreModules + uiModules + appModules)
|
||||||
|
|
||||||
K9.init(this)
|
K9.init(this)
|
||||||
Core.init(this)
|
Core.init(this)
|
||||||
|
|
|
@ -2,18 +2,21 @@ package com.fsck.k9
|
||||||
|
|
||||||
import android.arch.lifecycle.Lifecycle
|
import android.arch.lifecycle.Lifecycle
|
||||||
import android.arch.lifecycle.LifecycleOwner
|
import android.arch.lifecycle.LifecycleOwner
|
||||||
import com.fsck.k9.notification.NotificationActionCreator
|
|
||||||
import com.fsck.k9.ui.endtoend.AutocryptKeyTransferActivity
|
import com.fsck.k9.ui.endtoend.AutocryptKeyTransferActivity
|
||||||
import com.nhaarman.mockito_kotlin.doReturn
|
import com.nhaarman.mockito_kotlin.doReturn
|
||||||
import com.nhaarman.mockito_kotlin.mock
|
import com.nhaarman.mockito_kotlin.mock
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
import org.junit.runner.RunWith
|
||||||
import org.koin.Koin
|
import org.koin.Koin
|
||||||
import org.koin.dsl.module.applicationContext
|
|
||||||
import org.koin.log.PrintLogger
|
import org.koin.log.PrintLogger
|
||||||
import org.koin.standalone.StandAloneContext
|
import org.koin.test.AutoCloseKoinTest
|
||||||
import org.koin.test.dryRun
|
import org.koin.test.dryRun
|
||||||
|
import org.robolectric.RobolectricTestRunner
|
||||||
|
import org.robolectric.annotation.Config
|
||||||
|
|
||||||
class DependencyInjectionTest : K9RobolectricTest() {
|
@RunWith(RobolectricTestRunner::class)
|
||||||
|
@Config(application = App::class)
|
||||||
|
class DependencyInjectionTest : AutoCloseKoinTest() {
|
||||||
val lifecycleOwner = mock<LifecycleOwner> {
|
val lifecycleOwner = mock<LifecycleOwner> {
|
||||||
on { lifecycle } doReturn mock<Lifecycle>()
|
on { lifecycle } doReturn mock<Lifecycle>()
|
||||||
}
|
}
|
||||||
|
@ -22,11 +25,6 @@ class DependencyInjectionTest : K9RobolectricTest() {
|
||||||
fun testDependencyTree() {
|
fun testDependencyTree() {
|
||||||
Koin.logger = PrintLogger()
|
Koin.logger = PrintLogger()
|
||||||
|
|
||||||
// NOTE: Users of the core module will have to provide these dependencies.
|
|
||||||
StandAloneContext.loadKoinModules(applicationContext {
|
|
||||||
bean { mock<NotificationActionCreator>() }
|
|
||||||
})
|
|
||||||
|
|
||||||
dryRun {
|
dryRun {
|
||||||
mapOf(
|
mapOf(
|
||||||
"lifecycleOwner" to lifecycleOwner,
|
"lifecycleOwner" to lifecycleOwner,
|
|
@ -0,0 +1 @@
|
||||||
|
mock-maker-inline
|
78
app/ui/build.gradle
Normal file
78
app/ui/build.gradle
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
apply plugin: 'com.android.library'
|
||||||
|
apply plugin: 'org.jetbrains.kotlin.android'
|
||||||
|
apply plugin: 'org.jetbrains.kotlin.android.extensions'
|
||||||
|
|
||||||
|
apply from: "${rootProject.projectDir}/gradle/plugins/checkstyle-android.gradle"
|
||||||
|
apply from: "${rootProject.projectDir}/gradle/plugins/findbugs-android.gradle"
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"
|
||||||
|
|
||||||
|
implementation project(":app:core")
|
||||||
|
implementation project(":mail:common")
|
||||||
|
|
||||||
|
implementation project(':plugins:HoloColorPicker')
|
||||||
|
implementation project(':plugins:openpgp-api-lib:openpgp-api')
|
||||||
|
|
||||||
|
implementation "com.android.support:appcompat-v7:${versions.supportLibrary}"
|
||||||
|
implementation "com.takisoft.fix:preference-v7:${versions.preferencesFix}"
|
||||||
|
implementation "com.takisoft.fix:preference-v7-datetimepicker:${versions.preferencesFix}"
|
||||||
|
implementation "com.takisoft.fix:preference-v7-colorpicker:${versions.preferencesFix}"
|
||||||
|
implementation "com.takisoft.fix:preference-v7-ringtone:${versions.preferencesFix}"
|
||||||
|
implementation "com.android.support:recyclerview-v7:${versions.supportLibrary}"
|
||||||
|
implementation "android.arch.lifecycle:extensions:${versions.lifecycleExtensions}"
|
||||||
|
implementation "de.cketti.library.changelog:ckchangelog:1.2.1"
|
||||||
|
implementation "com.github.bumptech.glide:glide:3.6.1"
|
||||||
|
implementation "com.splitwise:tokenautocomplete:2.0.7"
|
||||||
|
implementation "de.cketti.safecontentresolver:safe-content-resolver-v14:0.9.0"
|
||||||
|
implementation "com.github.amlcurran.showcaseview:library:5.4.1"
|
||||||
|
implementation "com.xwray:groupie:2.1.0"
|
||||||
|
implementation "com.xwray:groupie-kotlin-android-extensions:2.1.0"
|
||||||
|
implementation 'com.mikepenz:materialdrawer:6.0.7'
|
||||||
|
|
||||||
|
testImplementation project(':mail:testing')
|
||||||
|
testImplementation "org.robolectric:robolectric:${versions.robolectric}"
|
||||||
|
testImplementation "junit:junit:${versions.junit}"
|
||||||
|
testImplementation "com.google.truth:truth:${versions.truth}"
|
||||||
|
testImplementation "org.mockito:mockito-core:${versions.mockito}"
|
||||||
|
testImplementation "com.nhaarman:mockito-kotlin:${versions.mockitoKotlin}"
|
||||||
|
testImplementation "org.jdom:jdom2:2.0.6"
|
||||||
|
testImplementation "org.koin:koin-test:${versions.koin}"
|
||||||
|
}
|
||||||
|
|
||||||
|
android {
|
||||||
|
compileSdkVersion buildConfig.compileSdk
|
||||||
|
buildToolsVersion buildConfig.buildTools
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
minSdkVersion buildConfig.minSdk
|
||||||
|
// For Robolectric tests
|
||||||
|
targetSdkVersion 22
|
||||||
|
}
|
||||||
|
|
||||||
|
lintOptions {
|
||||||
|
abortOnError false
|
||||||
|
lintConfig file("$rootProject.projectDir/config/lint/lint.xml")
|
||||||
|
}
|
||||||
|
|
||||||
|
compileOptions {
|
||||||
|
sourceCompatibility JavaVersion.VERSION_1_7
|
||||||
|
targetCompatibility JavaVersion.VERSION_1_7
|
||||||
|
}
|
||||||
|
|
||||||
|
testOptions {
|
||||||
|
unitTests {
|
||||||
|
includeAndroidResources = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
androidExtensions {
|
||||||
|
experimental = true
|
||||||
|
}
|
||||||
|
|
||||||
|
kotlin {
|
||||||
|
experimental {
|
||||||
|
coroutines "enable"
|
||||||
|
}
|
||||||
|
}
|
2
app/ui/src/main/AndroidManifest.xml
Normal file
2
app/ui/src/main/AndroidManifest.xml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<manifest package="com.fsck.k9.ui" />
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
13
app/ui/src/main/java/com/fsck/k9/UiKoinModules.kt
Normal file
13
app/ui/src/main/java/com/fsck/k9/UiKoinModules.kt
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
package com.fsck.k9
|
||||||
|
|
||||||
|
import com.fsck.k9.activity.activityModule
|
||||||
|
import com.fsck.k9.ui.endtoend.endToEndUiModule
|
||||||
|
import com.fsck.k9.ui.settings.settingsUiModule
|
||||||
|
import com.fsck.k9.ui.uiModule
|
||||||
|
|
||||||
|
val uiModules = listOf(
|
||||||
|
activityModule,
|
||||||
|
uiModule,
|
||||||
|
settingsUiModule,
|
||||||
|
endToEndUiModule
|
||||||
|
)
|
|
@ -18,7 +18,7 @@ import com.fsck.k9.BaseAccount;
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.search.SearchAccount;
|
import com.fsck.k9.search.SearchAccount;
|
||||||
|
|
||||||
|
|
|
@ -66,7 +66,7 @@ import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.compose.MessageActions;
|
import com.fsck.k9.activity.compose.MessageActions;
|
||||||
import com.fsck.k9.activity.misc.ExtendedAsyncTask;
|
import com.fsck.k9.activity.misc.ExtendedAsyncTask;
|
||||||
import com.fsck.k9.activity.misc.NonConfigurationInstance;
|
import com.fsck.k9.activity.misc.NonConfigurationInstance;
|
|
@ -10,7 +10,7 @@ import android.text.format.DateUtils;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.AccountStats;
|
import com.fsck.k9.AccountStats;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.controller.SimpleMessagingListener;
|
import com.fsck.k9.controller.SimpleMessagingListener;
|
||||||
import com.fsck.k9.service.MailService;
|
import com.fsck.k9.service.MailService;
|
||||||
import net.jcip.annotations.GuardedBy;
|
import net.jcip.annotations.GuardedBy;
|
|
@ -19,9 +19,9 @@ import android.widget.BaseAdapter;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
|
||||||
import com.fsck.k9.activity.compose.RecipientAdapter;
|
import com.fsck.k9.activity.compose.RecipientAdapter;
|
||||||
import com.fsck.k9.ui.ContactBadge;
|
import com.fsck.k9.ui.ContactBadge;
|
||||||
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
||||||
import com.fsck.k9.view.ThemeUtils;
|
import com.fsck.k9.view.ThemeUtils;
|
||||||
|
|
|
@ -24,7 +24,7 @@ import com.fsck.k9.Account.FolderMode;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.controller.MessageReference;
|
import com.fsck.k9.controller.MessageReference;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
import com.fsck.k9.controller.MessagingListener;
|
import com.fsck.k9.controller.MessagingListener;
|
||||||
import com.fsck.k9.controller.SimpleMessagingListener;
|
import com.fsck.k9.controller.SimpleMessagingListener;
|
|
@ -12,7 +12,7 @@ import android.widget.Toast;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Identity;
|
import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class ChooseIdentity extends K9ListActivity {
|
public class ChooseIdentity extends K9ListActivity {
|
|
@ -9,7 +9,7 @@ import android.widget.LinearLayout;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Identity;
|
import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class EditIdentity extends K9Activity {
|
public class EditIdentity extends K9Activity {
|
|
@ -9,7 +9,7 @@ import android.widget.ListView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import android.widget.AdapterView.OnItemClickListener;
|
import android.widget.AdapterView.OnItemClickListener;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.helper.ContactItem;
|
import com.fsck.k9.helper.ContactItem;
|
||||||
|
|
||||||
public class EmailAddressList extends K9ListActivity implements OnItemClickListener {
|
public class EmailAddressList extends K9ListActivity implements OnItemClickListener {
|
|
@ -3,7 +3,7 @@ package com.fsck.k9.activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.Folder;
|
import com.fsck.k9.mail.Folder;
|
||||||
import com.fsck.k9.mailstore.LocalFolder;
|
import com.fsck.k9.mailstore.LocalFolder;
|
||||||
|
|
|
@ -44,7 +44,7 @@ import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.compose.MessageActions;
|
import com.fsck.k9.activity.compose.MessageActions;
|
||||||
import com.fsck.k9.activity.setup.FolderSettings;
|
import com.fsck.k9.activity.setup.FolderSettings;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
|
@ -2,6 +2,6 @@ package com.fsck.k9.activity
|
||||||
|
|
||||||
import org.koin.dsl.module.applicationContext
|
import org.koin.dsl.module.applicationContext
|
||||||
|
|
||||||
val uiModule = applicationContext {
|
val activityModule = applicationContext {
|
||||||
bean { ColorChipProvider() }
|
bean { ColorChipProvider() }
|
||||||
}
|
}
|
|
@ -6,7 +6,7 @@ import android.os.Parcelable;
|
||||||
|
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.BaseAccount;
|
import com.fsck.k9.BaseAccount;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.search.SearchAccount;
|
import com.fsck.k9.search.SearchAccount;
|
||||||
|
|
||||||
public class LauncherShortcuts extends AccountList {
|
public class LauncherShortcuts extends AccountList {
|
|
@ -14,7 +14,7 @@ import android.widget.Toast;
|
||||||
|
|
||||||
import com.fsck.k9.Identity;
|
import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
|
|
||||||
public class ManageIdentities extends ChooseIdentity {
|
public class ManageIdentities extends ChooseIdentity {
|
||||||
private boolean mIdentitiesChanged = false;
|
private boolean mIdentitiesChanged = false;
|
|
@ -49,7 +49,7 @@ import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.controller.MessageReference;
|
import com.fsck.k9.controller.MessageReference;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.MessageLoaderHelper.MessageLoaderCallbacks;
|
import com.fsck.k9.activity.MessageLoaderHelper.MessageLoaderCallbacks;
|
||||||
import com.fsck.k9.activity.compose.AttachmentPresenter;
|
import com.fsck.k9.activity.compose.AttachmentPresenter;
|
||||||
import com.fsck.k9.activity.compose.AttachmentPresenter.AttachmentMvpView;
|
import com.fsck.k9.activity.compose.AttachmentPresenter.AttachmentMvpView;
|
|
@ -47,7 +47,7 @@ import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.K9.SplitViewMode;
|
import com.fsck.k9.K9.SplitViewMode;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.controller.MessageReference;
|
import com.fsck.k9.controller.MessageReference;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.compose.MessageActions;
|
import com.fsck.k9.activity.compose.MessageActions;
|
||||||
import com.fsck.k9.activity.misc.SwipeGestureDetector.OnSwipeGestureListener;
|
import com.fsck.k9.activity.misc.SwipeGestureDetector.OnSwipeGestureListener;
|
||||||
import com.fsck.k9.fragment.MessageListFragment;
|
import com.fsck.k9.fragment.MessageListFragment;
|
|
@ -16,7 +16,7 @@ import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.controller.MessageReference;
|
import com.fsck.k9.controller.MessageReference;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
import com.fsck.k9.notification.NotificationActionService;
|
import com.fsck.k9.notification.NotificationActionService;
|
||||||
|
|
|
@ -14,7 +14,7 @@ import android.widget.TextView;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
import com.fsck.k9.mailstore.LocalStore;
|
import com.fsck.k9.mailstore.LocalStore;
|
||||||
import com.fsck.k9.service.DatabaseUpgradeService;
|
import com.fsck.k9.service.DatabaseUpgradeService;
|
|
@ -10,7 +10,7 @@ import android.widget.TextView;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Identity;
|
import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
|
@ -12,7 +12,7 @@ import android.support.annotation.IdRes;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.HighlightDialogFragment;
|
import com.fsck.k9.view.HighlightDialogFragment;
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ import android.support.annotation.IdRes;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.HighlightDialogFragment;
|
import com.fsck.k9.view.HighlightDialogFragment;
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ import android.support.annotation.IdRes;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.HighlightDialogFragment;
|
import com.fsck.k9.view.HighlightDialogFragment;
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ import android.support.annotation.IdRes;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.HighlightDialogFragment;
|
import com.fsck.k9.view.HighlightDialogFragment;
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ import android.widget.ImageView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.fsck.k9.activity.misc.ContactPicture;
|
import com.fsck.k9.activity.misc.ContactPicture;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
||||||
import com.fsck.k9.view.RecipientSelectView.RecipientCryptoStatus;
|
import com.fsck.k9.view.RecipientSelectView.RecipientCryptoStatus;
|
||||||
import com.fsck.k9.view.ThemeUtils;
|
import com.fsck.k9.view.ThemeUtils;
|
|
@ -20,7 +20,7 @@ import android.support.annotation.NonNull;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.support.v4.content.AsyncTaskLoader;
|
import android.support.v4.content.AsyncTaskLoader;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.Address;
|
import com.fsck.k9.mail.Address;
|
||||||
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
import com.fsck.k9.view.RecipientSelectView.Recipient;
|
||||||
import com.fsck.k9.view.RecipientSelectView.RecipientCryptoStatus;
|
import com.fsck.k9.view.RecipientSelectView.RecipientCryptoStatus;
|
|
@ -16,7 +16,7 @@ import android.widget.Toast;
|
||||||
import android.widget.ViewAnimator;
|
import android.widget.ViewAnimator;
|
||||||
|
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.MessageCompose;
|
import com.fsck.k9.activity.MessageCompose;
|
||||||
import com.fsck.k9.mail.Address;
|
import com.fsck.k9.mail.Address;
|
||||||
import com.fsck.k9.mail.Message.RecipientType;
|
import com.fsck.k9.mail.Message.RecipientType;
|
|
@ -22,7 +22,7 @@ import android.view.Menu;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Identity;
|
import com.fsck.k9.Identity;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.compose.ComposeCryptoStatus.AttachErrorState;
|
import com.fsck.k9.activity.compose.ComposeCryptoStatus.AttachErrorState;
|
||||||
import com.fsck.k9.activity.compose.ComposeCryptoStatus.ComposeCryptoStatusBuilder;
|
import com.fsck.k9.activity.compose.ComposeCryptoStatus.ComposeCryptoStatusBuilder;
|
||||||
import com.fsck.k9.activity.compose.ComposeCryptoStatus.SendErrorState;
|
import com.fsck.k9.activity.compose.ComposeCryptoStatus.SendErrorState;
|
|
@ -4,7 +4,7 @@ import android.content.Context;
|
||||||
import android.util.TypedValue;
|
import android.util.TypedValue;
|
||||||
|
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
|
|
||||||
public class ContactPicture {
|
public class ContactPicture {
|
||||||
|
|
|
@ -10,7 +10,7 @@ import android.view.View.OnClickListener;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.helper.EmailHelper;
|
import com.fsck.k9.helper.EmailHelper;
|
||||||
import com.fsck.k9.mail.ServerSettings.Type;
|
import com.fsck.k9.mail.ServerSettings.Type;
|
|
@ -28,7 +28,7 @@ import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Core;
|
import com.fsck.k9.Core;
|
||||||
import com.fsck.k9.EmailAddressValidator;
|
import com.fsck.k9.EmailAddressValidator;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.account.AccountCreator;
|
import com.fsck.k9.account.AccountCreator;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
|
@ -30,7 +30,7 @@ import android.widget.TextView;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.DI;
|
import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
import com.fsck.k9.fragment.ConfirmationDialogFragment;
|
import com.fsck.k9.fragment.ConfirmationDialogFragment;
|
|
@ -11,7 +11,7 @@ import android.widget.LinearLayout;
|
||||||
import android.widget.RadioButton;
|
import android.widget.RadioButton;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
|
|
||||||
public class AccountSetupComposition extends K9Activity {
|
public class AccountSetupComposition extends K9Activity {
|
|
@ -31,7 +31,7 @@ import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Account.FolderMode;
|
import com.fsck.k9.Account.FolderMode;
|
||||||
import com.fsck.k9.DI;
|
import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.account.AccountCreator;
|
import com.fsck.k9.account.AccountCreator;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
|
@ -18,7 +18,7 @@ import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.activity.Accounts;
|
import com.fsck.k9.activity.Accounts;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.helper.Utility;
|
import com.fsck.k9.helper.Utility;
|
||||||
|
|
||||||
public class AccountSetupNames extends K9Activity implements OnClickListener {
|
public class AccountSetupNames extends K9Activity implements OnClickListener {
|
|
@ -15,7 +15,7 @@ import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Core;
|
import com.fsck.k9.Core;
|
||||||
import com.fsck.k9.DI;
|
import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
|
|
|
@ -27,7 +27,7 @@ import android.widget.Toast;
|
||||||
|
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.account.AccountCreator;
|
import com.fsck.k9.account.AccountCreator;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
|
|
@ -2,7 +2,7 @@ package com.fsck.k9.activity.setup;
|
||||||
|
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.AuthType;
|
import com.fsck.k9.mail.AuthType;
|
||||||
|
|
||||||
class AuthTypeHolder {
|
class AuthTypeHolder {
|
|
@ -2,7 +2,7 @@ package com.fsck.k9.activity.setup;
|
||||||
|
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.ConnectionSecurity;
|
import com.fsck.k9.mail.ConnectionSecurity;
|
||||||
|
|
||||||
class ConnectionSecurityHolder {
|
class ConnectionSecurityHolder {
|
|
@ -12,7 +12,7 @@ import android.preference.Preference;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.DI;
|
import com.fsck.k9.DI;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.FolderInfoHolder;
|
import com.fsck.k9.activity.FolderInfoHolder;
|
||||||
import com.fsck.k9.activity.K9PreferenceActivity;
|
import com.fsck.k9.activity.K9PreferenceActivity;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
|
@ -11,7 +11,7 @@ import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.Preferences;
|
import com.fsck.k9.Preferences;
|
||||||
import com.fsck.k9.activity.K9PreferenceActivity;
|
import com.fsck.k9.activity.K9PreferenceActivity;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.preferences.Storage;
|
import com.fsck.k9.preferences.Storage;
|
||||||
import com.fsck.k9.preferences.StorageEditor;
|
import com.fsck.k9.preferences.StorageEditor;
|
||||||
|
|
|
@ -35,7 +35,7 @@ import android.util.AttributeSet;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.SeekBar;
|
import android.widget.SeekBar;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
|
@ -8,7 +8,7 @@ import android.view.View;
|
||||||
import android.view.View.OnClickListener;
|
import android.view.View.OnClickListener;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.Accounts;
|
import com.fsck.k9.activity.Accounts;
|
||||||
import com.fsck.k9.activity.K9Activity;
|
import com.fsck.k9.activity.K9Activity;
|
||||||
import com.fsck.k9.message.html.HtmlConverter;
|
import com.fsck.k9.message.html.HtmlConverter;
|
|
@ -21,7 +21,7 @@ import android.widget.TextView;
|
||||||
import com.fsck.k9.Account;
|
import com.fsck.k9.Account;
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.K9;
|
import com.fsck.k9.K9;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.Address;
|
import com.fsck.k9.mail.Address;
|
||||||
import com.fsck.k9.mailstore.DatabasePreviewType;
|
import com.fsck.k9.mailstore.DatabasePreviewType;
|
||||||
import com.fsck.k9.ui.ContactBadge;
|
import com.fsck.k9.ui.ContactBadge;
|
|
@ -63,7 +63,7 @@ import com.fsck.k9.cache.EmailProviderCache;
|
||||||
import com.fsck.k9.controller.MessageReference;
|
import com.fsck.k9.controller.MessageReference;
|
||||||
import com.fsck.k9.controller.MessagingController;
|
import com.fsck.k9.controller.MessagingController;
|
||||||
import com.fsck.k9.core.BuildConfig;
|
import com.fsck.k9.core.BuildConfig;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.fragment.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
|
import com.fsck.k9.fragment.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
|
||||||
import com.fsck.k9.fragment.MessageListFragmentComparators.ArrivalComparator;
|
import com.fsck.k9.fragment.MessageListFragmentComparators.ArrivalComparator;
|
||||||
import com.fsck.k9.fragment.MessageListFragmentComparators.AttachmentComparator;
|
import com.fsck.k9.fragment.MessageListFragmentComparators.AttachmentComparator;
|
|
@ -5,7 +5,7 @@ import android.view.View;
|
||||||
import android.widget.CheckBox;
|
import android.widget.CheckBox;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.ui.ContactBadge;
|
import com.fsck.k9.ui.ContactBadge;
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ import android.view.accessibility.AccessibilityNodeInfo;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.mail.Address;
|
import com.fsck.k9.mail.Address;
|
||||||
|
|
||||||
|
|
8
app/ui/src/main/java/com/fsck/k9/ui/KoinModule.kt
Normal file
8
app/ui/src/main/java/com/fsck/k9/ui/KoinModule.kt
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
package com.fsck.k9.ui
|
||||||
|
|
||||||
|
import com.fsck.k9.ui.folders.FolderNameFormatter
|
||||||
|
import org.koin.dsl.module.applicationContext
|
||||||
|
|
||||||
|
val uiModule = applicationContext {
|
||||||
|
bean { FolderNameFormatter(get()) }
|
||||||
|
}
|
|
@ -10,7 +10,7 @@ import android.widget.Button;
|
||||||
import android.widget.ImageButton;
|
import android.widget.ImageButton;
|
||||||
|
|
||||||
import com.fsck.k9.FontSizes;
|
import com.fsck.k9.FontSizes;
|
||||||
import com.fsck.k9.core.R;
|
import com.fsck.k9.ui.R;
|
||||||
import com.fsck.k9.activity.MessageCompose;
|
import com.fsck.k9.activity.MessageCompose;
|
||||||
import com.fsck.k9.message.html.HtmlConverter;
|
import com.fsck.k9.message.html.HtmlConverter;
|
||||||
import com.fsck.k9.mailstore.AttachmentResolver;
|
import com.fsck.k9.mailstore.AttachmentResolver;
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue