Add dark theme and black theme
This commit is contained in:
1 parent
029373a8d2
commit
6ecce9ddc5
8 files changed
+126
-8
No files matched your search
@@ -19,6 +19,7 @@ package com.hippo.ehviewer.ui;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.annotation.StyleRes;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import android.view.WindowManager;
|
||||
import com.google.analytics.tracking.android.EasyTracker;
|
||||
@@ -31,8 +32,13 @@ public abstract class EhActivity extends AppCompatActivity {
|
||||
|
||||
private boolean mTrackStarted;
|
||||
|
||||
@StyleRes
|
||||
protected abstract int getThemeResId(int theme);
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
setTheme(getThemeResId(Settings.getTheme()));
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
((EhApplication) getApplication()).registerActivity(this);
|
||||
|
||||
@@ -20,6 +20,7 @@ import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.annotation.StyleRes;
|
||||
import android.view.WindowManager;
|
||||
import com.google.analytics.tracking.android.EasyTracker;
|
||||
import com.hippo.app.PrettyPreferenceActivity;
|
||||
@@ -32,8 +33,13 @@ public abstract class EhPreferenceActivity extends PrettyPreferenceActivity {
|
||||
|
||||
private boolean mTrackStarted;
|
||||
|
||||
@StyleRes
|
||||
protected abstract int getThemeResId(int theme);
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
setTheme(getThemeResId(Settings.getTheme()));
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
((EhApplication) getApplication()).registerActivity(this);
|
||||
|
||||
@@ -182,6 +182,19 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
protected int getThemeResId(int theme) {
|
||||
switch (theme) {
|
||||
case Settings.THEME_LIGHT:
|
||||
default:
|
||||
return R.style.AppTheme_Gallery;
|
||||
case Settings.THEME_DARK:
|
||||
return R.style.AppTheme_Gallery_Dark;
|
||||
case Settings.THEME_BLACK:
|
||||
return R.style.AppTheme_Gallery_Black;
|
||||
}
|
||||
}
|
||||
|
||||
private void buildProvider() {
|
||||
if (mGalleryProvider != null) {
|
||||
return;
|
||||
|
||||
@@ -142,6 +142,19 @@ public final class MainActivity extends StageActivity
|
||||
registerLaunchMode(ProgressScene.class, SceneFragment.LAUNCH_MODE_STANDARD);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getThemeResId(int theme) {
|
||||
switch (theme) {
|
||||
case Settings.THEME_LIGHT:
|
||||
default:
|
||||
return R.style.AppTheme_Main;
|
||||
case Settings.THEME_DARK:
|
||||
return R.style.AppTheme_Main_Dark;
|
||||
case Settings.THEME_BLACK:
|
||||
return R.style.AppTheme_Main_Black;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getContainerViewId() {
|
||||
return R.id.fragment_container;
|
||||
|
||||
@@ -25,6 +25,7 @@ import android.support.v7.app.ActionBar;
|
||||
import android.support.v7.app.ActionBarDrawerToggle;
|
||||
import android.view.MenuItem;
|
||||
import com.hippo.ehviewer.R;
|
||||
import com.hippo.ehviewer.Settings;
|
||||
import com.hippo.ehviewer.ui.fragment.AboutFragment;
|
||||
import com.hippo.ehviewer.ui.fragment.AdvancedFragment;
|
||||
import com.hippo.ehviewer.ui.fragment.DownloadFragment;
|
||||
@@ -47,6 +48,19 @@ public final class SettingsActivity extends EhPreferenceActivity {
|
||||
PrivacyFragment.class.getName(),
|
||||
};
|
||||
|
||||
@Override
|
||||
protected int getThemeResId(int theme) {
|
||||
switch (theme) {
|
||||
case Settings.THEME_LIGHT:
|
||||
default:
|
||||
return R.style.AppTheme_Settings;
|
||||
case Settings.THEME_DARK:
|
||||
return R.style.AppTheme_Settings_Dark;
|
||||
case Settings.THEME_BLACK:
|
||||
return R.style.AppTheme_Settings_Black;
|
||||
}
|
||||
}
|
||||
|
||||
private void setActionBarUpIndicator(Drawable drawable) {
|
||||
ActionBarDrawerToggle.Delegate delegate = getDrawerToggleDelegate();
|
||||
if (delegate != null) {
|
||||
|
||||
@@ -25,9 +25,23 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.hippo.ehviewer.R;
|
||||
import com.hippo.ehviewer.Settings;
|
||||
|
||||
public abstract class ToolbarActivity extends EhActivity {
|
||||
|
||||
@Override
|
||||
protected int getThemeResId(int theme) {
|
||||
switch (theme) {
|
||||
case Settings.THEME_LIGHT:
|
||||
default:
|
||||
return R.style.AppTheme_Toolbar;
|
||||
case Settings.THEME_DARK:
|
||||
return R.style.AppTheme_Toolbar_Dark;
|
||||
case Settings.THEME_BLACK:
|
||||
return R.style.AppTheme_Toolbar_Black;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setContentView(@LayoutRes int layoutResID) {
|
||||
super.setContentView(R.layout.activity_toolbar);
|
||||
|
||||
Reference in new issue
Block a user