From 538ea85341424fd4f58d4efb926c777f5514c2aa Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Sun, 3 Apr 2016 13:48:23 +0300 Subject: [PATCH] new dark colors --- .../audiorecorder/activities/MainActivity.java | 7 +++++-- .../activities/RecordingActivity.java | 11 +++++++++++ .../activities/SettingsActivity.java | 15 ++++++++++++++- .../axet/audiorecorder/app/MainApplication.java | 6 ++++++ app/src/main/res/layout/activity_main.xml | 1 - app/src/main/res/values/styles.xml | 2 +- 6 files changed, 37 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/github/axet/audiorecorder/activities/MainActivity.java b/app/src/main/java/com/github/axet/audiorecorder/activities/MainActivity.java index 7e24e67..8fbbd75 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/activities/MainActivity.java +++ b/app/src/main/java/com/github/axet/audiorecorder/activities/MainActivity.java @@ -9,6 +9,7 @@ import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.content.res.Configuration; +import android.content.res.Resources; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.media.MediaPlayer; @@ -38,6 +39,7 @@ import android.widget.TextView; import android.widget.Toast; import com.github.axet.androidlibrary.widgets.OpenFileDialog; +import com.github.axet.androidlibrary.widgets.ThemeUtils; import com.github.axet.audiorecorder.R; import com.github.axet.audiorecorder.animations.RecordingAnimation; import com.github.axet.androidlibrary.animations.RemoveItemAnimation; @@ -452,6 +454,7 @@ public class MainActivity extends AppCompatActivity implements AbsListView.OnScr handler = new Handler(); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + toolbar.setBackground(new ColorDrawable(MainApplication.getActionbarColor(this))); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); @@ -506,8 +509,8 @@ public class MainActivity extends AppCompatActivity implements AbsListView.OnScr //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { - Intent intent = new Intent(this, SettingsActivity.class); - startActivity(intent); + finish(); + startActivity(new Intent(this, SettingsActivity.class)); return true; } diff --git a/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java b/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java index 1670e24..716f717 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java +++ b/app/src/main/java/com/github/axet/audiorecorder/activities/RecordingActivity.java @@ -11,6 +11,7 @@ import android.content.IntentFilter; import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.graphics.Point; +import android.graphics.drawable.ColorDrawable; import android.media.AudioFormat; import android.media.AudioRecord; import android.media.AudioTrack; @@ -21,6 +22,7 @@ import android.os.Handler; import android.preference.PreferenceManager; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; +import android.support.v7.app.ActionBar; import android.support.v7.app.AppCompatActivity; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; @@ -152,6 +154,8 @@ public class RecordingActivity extends AppCompatActivity { setContentView(R.layout.activity_recording); + setupActionBar(); + pitch = (PitchView) findViewById(R.id.recording_pitch); time = (TextView) findViewById(R.id.recording_time); state = (TextView) findViewById(R.id.recording_state); @@ -248,6 +252,13 @@ public class RecordingActivity extends AppCompatActivity { registerReceiver(receiver, filter); } + private void setupActionBar() { + ActionBar actionBar = getSupportActionBar(); + if (actionBar != null) { + actionBar.setBackgroundDrawable(new ColorDrawable(MainApplication.getActionbarColor(this))); + } + } + void loadSamples() { if (!storage.getTempRecording().exists()) { updateSamples(0); diff --git a/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java b/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java index 4fa81ae..46a7c54 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java +++ b/app/src/main/java/com/github/axet/audiorecorder/activities/SettingsActivity.java @@ -9,6 +9,7 @@ import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.content.res.Configuration; +import android.graphics.drawable.ColorDrawable; import android.media.Ringtone; import android.media.RingtoneManager; import android.net.Uri; @@ -22,11 +23,14 @@ import android.preference.PreferenceManager; import android.preference.RingtonePreference; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; +import android.support.v4.content.IntentCompat; import android.support.v7.app.ActionBar; +import android.util.Log; import android.view.MenuItem; import android.widget.ListView; import android.widget.Toast; +import com.github.axet.androidlibrary.widgets.ThemeUtils; import com.github.axet.audiorecorder.R; import com.github.axet.audiorecorder.app.MainApplication; @@ -139,6 +143,7 @@ public class SettingsActivity extends AppCompatPreferenceActivity implements Sha if (actionBar != null) { // Show the Up button in the action bar. actionBar.setDisplayHomeAsUpEnabled(true); + actionBar.setBackgroundDrawable(new ColorDrawable(MainApplication.getActionbarColor(this))); } } @@ -163,6 +168,7 @@ public class SettingsActivity extends AppCompatPreferenceActivity implements Sha public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); if (id == android.R.id.home) { + finish(); startActivity(new Intent(this, MainActivity.class)); return true; } @@ -203,7 +209,7 @@ public class SettingsActivity extends AppCompatPreferenceActivity implements Sha @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { - if(key.equals(MainApplication.PREFERENCE_THEME)) { + if (key.equals(MainApplication.PREFERENCE_THEME)) { finish(); startActivity(new Intent(this, SettingsActivity.class)); overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out); @@ -218,6 +224,12 @@ public class SettingsActivity extends AppCompatPreferenceActivity implements Sha shared.unregisterOnSharedPreferenceChangeListener(this); } + @Override + public void onBackPressed() { + finish(); + startActivity(new Intent(this, MainActivity.class)); + } + /** * This fragment shows general preferences only. It is used when the * activity is showing a two-pane settings UI. @@ -256,6 +268,7 @@ public class SettingsActivity extends AppCompatPreferenceActivity implements Sha public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); if (id == android.R.id.home) { + getActivity().finish(); startActivity(new Intent(getActivity(), MainActivity.class)); return true; } diff --git a/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java b/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java index 9d8f644..8b86d81 100644 --- a/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java +++ b/app/src/main/java/com/github/axet/audiorecorder/app/MainApplication.java @@ -40,6 +40,12 @@ public class MainApplication extends Application { } } + public static int getActionbarColor(Context context) { + int colorId = MainApplication.getTheme(context, android.R.attr.colorPrimary, R.attr.secondBackground); + int color = ThemeUtils.getThemeColor(context, colorId); + return color; + } + public int getUserTheme() { return getTheme(this, R.style.AppThemeLight, R.style.AppThemeDark); } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index e6f67ec..345dd4b 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -16,7 +16,6 @@ android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" - android:background="?attr/colorPrimary" app:popupTheme="@style/AppThemeLight.PopupOverlay" /> diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index e798d0b..8b03c3d 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -20,7 +20,7 @@ @color/colorPrimary @color/colorPrimaryDark #a4a4a4 - #5a595b + #151515