diff --git a/app/build.gradle b/app/build.gradle index 10b8fd471..63353d805 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -93,31 +93,25 @@ dependencies { // EmojiCompat implementation "com.android.support:support-emoji:$supportLibraryVersion" implementation "com.android.support:support-emoji-appcompat:$supportLibraryVersion" - implementation "de.c1710:filemojicompat:1.0.14" + implementation 'de.c1710:filemojicompat:1.0.14' // architecture components implementation 'android.arch.lifecycle:extensions:1.1.1' //room implementation 'android.arch.persistence.room:runtime:1.1.1' kapt 'android.arch.persistence.room:compiler:1.1.1' - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - testImplementation 'junit:junit:4.12' - implementation "com.google.dagger:dagger:$daggerVersion" kapt "com.google.dagger:dagger-compiler:$daggerVersion" implementation "com.google.dagger:dagger-android:$daggerVersion" implementation "com.google.dagger:dagger-android-support:$daggerVersion" kapt "com.google.dagger:dagger-android-processor:$daggerVersion" - - testImplementation "org.robolectric:robolectric:3.8" - testImplementation "org.mockito:mockito-inline:2.19.1" + testImplementation 'org.robolectric:robolectric:3.8' + testImplementation 'org.mockito:mockito-inline:2.19.1' androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1', { exclude group: 'com.android.support', module: 'support-annotations' }) - debugImplementation 'im.dino:dbinspector:3.4.1@aar' - implementation 'io.reactivex.rxjava2:rxjava:2.1.16' implementation 'io.reactivex.rxjava2:rxandroid:2.0.2' implementation 'com.uber.autodispose:autodispose-android-archcomponents:0.8.0' diff --git a/app/src/main/java/com/keylesspalace/tusky/BaseActivity.java b/app/src/main/java/com/keylesspalace/tusky/BaseActivity.java index af55d6d79..858974c64 100644 --- a/app/src/main/java/com/keylesspalace/tusky/BaseActivity.java +++ b/app/src/main/java/com/keylesspalace/tusky/BaseActivity.java @@ -25,6 +25,7 @@ import android.os.Bundle; import android.preference.PreferenceManager; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; +import android.util.Log; import android.util.TypedValue; import android.view.Menu; @@ -59,6 +60,10 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab * runtime, just individual activities. So, each activity has to set its theme before any * views are created. */ String theme = preferences.getString("appTheme", ThemeUtils.APP_THEME_DEFAULT); + Log.d("activeTheme", theme); + if (theme.equals("black")) { + setTheme(R.style.TuskyBlackTheme); + } ThemeUtils.setAppNightMode(theme, this); long accountId = getIntent().getLongExtra("account", -1); diff --git a/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java b/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java index 73676b49f..70c24130b 100644 --- a/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java +++ b/app/src/main/java/com/keylesspalace/tusky/ComposeActivity.java @@ -216,6 +216,11 @@ public final class ComposeActivity @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); + String theme = preferences.getString("appTheme", ThemeUtils.APP_THEME_DEFAULT); + if (theme.equals("black")) { + setTheme(R.style.TuskyDialogActivityBlackTheme); + } setContentView(R.layout.activity_compose); replyTextView = findViewById(R.id.composeReplyView); @@ -381,7 +386,6 @@ public final class ComposeActivity if (intent != null) { if (startingVisibility == Status.Visibility.UNKNOWN) { - SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); Status.Visibility preferredVisibility = Status.Visibility.byString( preferences.getString("defaultPostPrivacy", Status.Visibility.PUBLIC.serverString())); diff --git a/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt b/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt index 856ab4343..cfb0d2868 100644 --- a/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt +++ b/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt @@ -70,6 +70,9 @@ class LoginActivity : AppCompatActivity(), Injectable { preferences = PreferenceManager.getDefaultSharedPreferences(this) val theme = preferences.getString("appTheme", ThemeUtils.APP_THEME_DEFAULT) + if (theme == "black") { + setTheme(R.style.TuskyBlackTheme) + } ThemeUtils.setAppNightMode(theme, this) setContentView(R.layout.activity_login) diff --git a/app/src/main/java/com/keylesspalace/tusky/PreferencesActivity.java b/app/src/main/java/com/keylesspalace/tusky/PreferencesActivity.java index 2db70373b..1f1e965d6 100644 --- a/app/src/main/java/com/keylesspalace/tusky/PreferencesActivity.java +++ b/app/src/main/java/com/keylesspalace/tusky/PreferencesActivity.java @@ -24,6 +24,7 @@ import android.support.annotation.StringRes; import android.support.annotation.XmlRes; import android.support.v7.app.ActionBar; import android.support.v7.widget.Toolbar; +import android.util.Log; import android.view.MenuItem; import com.keylesspalace.tusky.fragment.PreferencesFragment; @@ -105,6 +106,7 @@ public class PreferencesActivity extends BaseActivity switch (key) { case "appTheme": { String theme = sharedPreferences.getString("appTheme", ThemeUtils.APP_THEME_DEFAULT); + Log.d("activeTheme", theme); ThemeUtils.setAppNightMode(theme, this); restartActivitiesOnExit = true; diff --git a/app/src/main/java/com/keylesspalace/tusky/util/ThemeUtils.java b/app/src/main/java/com/keylesspalace/tusky/util/ThemeUtils.java index de643c954..bf00af231 100644 --- a/app/src/main/java/com/keylesspalace/tusky/util/ThemeUtils.java +++ b/app/src/main/java/com/keylesspalace/tusky/util/ThemeUtils.java @@ -39,6 +39,7 @@ public class ThemeUtils { public static final String THEME_NIGHT = "night"; public static final String THEME_DAY = "day"; + public static final String THEME_BLACK = "black"; public static final String THEME_AUTO = "auto"; public static Drawable getDrawable(Context context, @AttrRes int attribute, @@ -101,6 +102,9 @@ public class ThemeUtils { case THEME_DAY: mode = UiModeManager.MODE_NIGHT_NO; break; + case THEME_BLACK: + mode = UiModeManager.MODE_NIGHT_YES; + break; case THEME_AUTO: mode = UiModeManager.MODE_NIGHT_AUTO; break; diff --git a/app/src/main/res/drawable/background_dialog_activity_black.xml b/app/src/main/res/drawable/background_dialog_activity_black.xml new file mode 100644 index 000000000..4a02e6c82 --- /dev/null +++ b/app/src/main/res/drawable/background_dialog_activity_black.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 73a66c2e4..9087b8270 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -163,6 +163,7 @@ داكنة فاتحة + أسود تلقائي عند الغروب diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 4eca5dd2c..a48238caf 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -165,6 +165,7 @@ Dunkel Hell + Schwarz Automatisch bei Sonnenuntergang diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 30f591fef..294f1d0b0 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -164,6 +164,7 @@ Oscuro Claro + Negro Automático diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 83ec3b3ca..514d26f5b 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -182,6 +182,7 @@ Sombre Clair + Noir Basé sur le coucher du soleil diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 28ab5684d..5032f0527 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -160,6 +160,7 @@ Dark Light + Black 日没による自動設定 diff --git a/app/src/main/res/values-large/styles.xml b/app/src/main/res/values-large/styles.xml index 71044ab1a..ae2b1d64b 100644 --- a/app/src/main/res/values-large/styles.xml +++ b/app/src/main/res/values-large/styles.xml @@ -9,4 +9,14 @@ true + + diff --git a/app/src/main/res/values-night-v27/styles.xml b/app/src/main/res/values-night-v27/styles.xml index 51d8e8165..0131db620 100644 --- a/app/src/main/res/values-night-v27/styles.xml +++ b/app/src/main/res/values-night-v27/styles.xml @@ -7,4 +7,8 @@ @color/status_divider_dark + diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 01ab6495e..ae021272f 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -174,6 +174,7 @@ Donker Licht + Zwart Automatisch tijdens zonsondergang diff --git a/app/src/main/res/values-oc/strings.xml b/app/src/main/res/values-oc/strings.xml index 2dcd14463..163a1a56c 100644 --- a/app/src/main/res/values-oc/strings.xml +++ b/app/src/main/res/values-oc/strings.xml @@ -168,6 +168,7 @@ Escur Luminós + Negre Alba automatica diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 8efaa8da3..c53c9cb27 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -176,6 +176,7 @@ Ciemny Jasny + Czarny Zmieniaj automatycznie po zachodzie słońca diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 8943fcc70..735d76564 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -174,6 +174,7 @@ Noturno Diurno + Negro Automático diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 7b4c8dfb3..3dd35c616 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -172,6 +172,7 @@ Тёмная Светлая + Черный Автоматическая (по времени) diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml index d74a0fbfa..ae2d4444a 100644 --- a/app/src/main/res/values-ta/strings.xml +++ b/app/src/main/res/values-ta/strings.xml @@ -153,6 +153,7 @@ கருமை வெளிச்சம் + பிளாக் தானியங்கி diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index c1f5498fe..51476d4ab 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -160,6 +160,7 @@ 黑夜 白天 + 黑色 自动切换 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 31a90c594..c29f2836a 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -160,6 +160,7 @@ 黑夜 白天 + 黑色 自動切換 diff --git a/app/src/main/res/values-zh-rMO/strings.xml b/app/src/main/res/values-zh-rMO/strings.xml index 31a90c594..c29f2836a 100644 --- a/app/src/main/res/values-zh-rMO/strings.xml +++ b/app/src/main/res/values-zh-rMO/strings.xml @@ -160,6 +160,7 @@ 黑夜 白天 + 黑色 自動切換 diff --git a/app/src/main/res/values-zh-rSG/strings.xml b/app/src/main/res/values-zh-rSG/strings.xml index c1f5498fe..51476d4ab 100644 --- a/app/src/main/res/values-zh-rSG/strings.xml +++ b/app/src/main/res/values-zh-rSG/strings.xml @@ -160,6 +160,7 @@ 黑夜 白天 + 黑色 自动切换 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 6fbba6414..20191fe72 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -160,6 +160,7 @@ 黑夜 白天 + 黑色 自動切換 diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 1dcd2b00a..f71ca19a7 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -40,6 +40,15 @@ #2F2F2F #313543 #373c4b + + #000000 + #111111 + #000000 + #000000 + #FFFFFF + #FFFFFF + #111111 + #111111 #dfdfdf #8f8f8f diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 9cda52a82..7e7c2a4df 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -35,6 +35,7 @@ night day + black auto diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e0694fc4b..8e6519a1b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -176,6 +176,7 @@ Dark Light + Black Automatic at sunset diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index e6b8756bc..ebcd668ee 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -148,4 +148,30 @@ ?attr/status_text_medium + + +