feat: add black and white (more like gray) theme

This commit is contained in:
LucasGGamerM 2023-07-08 21:01:03 -03:00
parent 3a87e83974
commit 8b08d5ddfd
7 changed files with 68 additions and 3 deletions

View File

@ -11,6 +11,7 @@ import com.google.gson.reflect.TypeToken;
import org.joinmastodon.android.model.ContentType;
import org.joinmastodon.android.model.TimelineDefinition;
import org.joinmastodon.android.ui.utils.ColorPalette;
import java.lang.reflect.Type;
import java.util.HashMap;
@ -245,8 +246,9 @@ public class GlobalUserPreferences{
BROWN,
RED,
YELLOW,
NORD
}
NORD,
WHITE
}
public enum ThemePreference{
AUTO,

View File

@ -41,6 +41,7 @@ public class AppearanceFragment extends SettingsBaseFragment {
case RED -> R.string.sk_color_palette_red;
case YELLOW -> R.string.sk_color_palette_yellow;
case NORD -> R.string.mo_color_palette_nord;
case WHITE -> R.string.mo_color_palette_black_and_white;
});
}));
items.add(new SwitchItem(R.string.theme_true_black, R.string.mo_setting_true_black_summary, R.drawable.ic_fluent_dark_theme_24_regular, GlobalUserPreferences.trueBlackTheme, this::onTrueBlackThemeChanged));
@ -67,6 +68,7 @@ public class AppearanceFragment extends SettingsBaseFragment {
case RED -> R.id.red_color;
case YELLOW -> R.id.yellow_color;
case NORD -> R.id.nord_color;
case WHITE -> R.id.black_and_white_color;
};
}
@ -83,6 +85,7 @@ public class AppearanceFragment extends SettingsBaseFragment {
else if (id == R.id.red_color) pref = GlobalUserPreferences.ColorPreference.RED;
else if (id == R.id.yellow_color) pref = GlobalUserPreferences.ColorPreference.YELLOW;
else if (id == R.id.nord_color) pref = GlobalUserPreferences.ColorPreference.NORD;
else if (id == R.id.black_and_white_color) pref = GlobalUserPreferences.ColorPreference.WHITE;
if (pref == null) return false;

View File

@ -26,7 +26,8 @@ public class ColorPalette {
ColorPreference.BROWN, new ColorPalette(R.style.ColorPalette_Brown),
ColorPreference.RED, new ColorPalette(R.style.ColorPalette_Red),
ColorPreference.YELLOW, new ColorPalette(R.style.ColorPalette_Yellow),
ColorPreference.NORD, new ColorPalette(R.style.ColorPalette_Nord)
ColorPreference.NORD, new ColorPalette(R.style.ColorPalette_Nord),
ColorPreference.WHITE, new ColorPalette(R.style.ColorPalette_White)
);
private @StyleRes int base;

View File

@ -9,6 +9,7 @@
<item android:id="@+id/brown_color" android:title="@string/sk_color_palette_brown"/>
<item android:id="@+id/yellow_color" android:title="@string/sk_color_palette_yellow"/>
<item android:id="@+id/red_color" android:title="@string/sk_color_palette_red"/>
<item android:id="@+id/black_and_white_color" android:title="@string/mo_color_palette_black_and_white"/>
<item android:id="@+id/nord_color" android:title="@string/mo_color_palette_nord"/>
</group>
</menu>

View File

@ -366,4 +366,29 @@
<color name="nord_gray_50t">#EAEDF2</color>
<color name="nord_gray_50">#EAEDF2</color>
<color name="nord_gray_25">#f7f8fa</color>
<color name="white_primary_25">#F5F5F5</color>
<color name="white_primary_50">#EAEAEA</color>
<color name="white_primary_100">#CFCFCF</color>
<color name="white_primary_200">#A4A4A4</color>
<color name="white_primary_300">#8C8C8C</color>
<color name="white_primary_400">#737373</color>
<color name="white_primary_500">#595959</color>
<color name="white_primary_600">#404040</color>
<color name="white_primary_700">#262626</color>
<color name="white_primary_800">#0D0D0D</color>
<color name="white_primary_900">#000000</color>
<color name="white_gray_25">#F5F5F5</color>
<color name="white_gray_50">#EAEAEA</color>
<color name="white_gray_100">#CFCFCF</color>
<color name="white_gray_200">#A4A4A4</color>
<color name="white_gray_300">#8C8C8C</color>
<color name="white_gray_400">#737373</color>
<color name="white_gray_400t">#4d737373</color>
<color name="white_gray_500">#595959</color>
<color name="white_gray_600">#404040</color>
<color name="white_gray_700">#262626</color>
<color name="white_gray_800">#0D0D0D</color>
<color name="white_gray_900">#000000</color>
</resources>

View File

@ -355,4 +355,36 @@
<item name="colorGray25">@color/nord_gray_25</item>
</style>
<style name="ColorPalette.White">
<item name="colorPrimary25">@color/white_primary_25</item>
<item name="colorPrimary50">@color/white_primary_50</item>
<item name="colorPrimary100">@color/white_primary_100</item>
<item name="colorPrimary200">@color/white_primary_200</item>
<item name="colorPrimary300">@color/white_primary_300</item>
<item name="colorPrimary400">@color/white_primary_400</item>
<item name="colorPrimary500">@color/white_primary_500</item>
<item name="colorPrimary600">@color/white_primary_600</item>
<item name="colorPrimary700">@color/white_primary_700</item>
<item name="colorPrimary800">@color/white_primary_800</item>
<item name="colorPrimary900">@color/white_primary_900</item>
<item name="colorGray900">@color/white_gray_900</item>
<item name="colorGray800t">@color/white_gray_800</item>
<item name="colorGray800">@color/white_gray_800</item>
<item name="colorGray700">@color/white_gray_700</item>
<item name="colorGray600">@color/white_gray_600</item>
<item name="colorGray500">@color/white_gray_500</item>
<item name="colorGray400t">@color/white_gray_400t</item>
<item name="colorGray400">@color/white_gray_400</item>
<item name="colorGray300">@color/white_gray_300</item>
<item name="colorGray200">@color/white_gray_200</item>
<item name="colorGray100">@color/white_gray_100</item>
<item name="colorGray50t">@color/white_gray_50</item>
<item name="colorGray50">@color/white_gray_50</item>
<item name="colorGray25">@color/white_gray_25</item>
</style>
</resources>

View File

@ -5,6 +5,7 @@
<string name="mo_app_name_nightly" translatable="false">Moshidon Nightly</string>
<string name="mo_color_palette_nord">Nord</string>
<string name="mo_color_palette_black_and_white">Black and White</string>
<string name="mo_app_username" translatable="false">\@moshidon</string>
<string name="mo_enable_dividers">Show post dividers</string>
<string name="mo_relocate_publish_button">Relocate publish button</string>