diff --git a/app/src/main/java/com/a1/nextlocation/MainActivity.java b/app/src/main/java/com/a1/nextlocation/MainActivity.java index 0c39c19..59468f7 100644 --- a/app/src/main/java/com/a1/nextlocation/MainActivity.java +++ b/app/src/main/java/com/a1/nextlocation/MainActivity.java @@ -9,6 +9,7 @@ import android.view.View; import android.widget.ImageButton; import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatDelegate; import androidx.fragment.app.DialogFragment; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; diff --git a/app/src/main/java/com/a1/nextlocation/fragments/SettingsFragment.java b/app/src/main/java/com/a1/nextlocation/fragments/SettingsFragment.java index 9ecfa79..ecc623d 100644 --- a/app/src/main/java/com/a1/nextlocation/fragments/SettingsFragment.java +++ b/app/src/main/java/com/a1/nextlocation/fragments/SettingsFragment.java @@ -5,6 +5,7 @@ import android.content.Context; import android.content.SharedPreferences; import android.content.res.Configuration; import android.os.Bundle; +import android.preference.PreferenceManager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -13,11 +14,13 @@ import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.Spinner; +import androidx.appcompat.app.AppCompatDelegate; import androidx.appcompat.widget.SwitchCompat; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentTransaction; +import com.a1.nextlocation.MainActivity; import com.a1.nextlocation.R; import org.jetbrains.annotations.NotNull; @@ -29,6 +32,7 @@ public class SettingsFragment extends Fragment { private SharedPreferences.Editor editor; private SwitchCompat fontSwitch; private SwitchCompat imperialSwitch; + private SwitchCompat colorBlindMode; private Refreshable refreshable; @Override @@ -42,6 +46,7 @@ public class SettingsFragment extends Fragment { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); editor = getContext().getSharedPreferences("Settings", Context.MODE_PRIVATE).edit(); + } @Override @@ -94,17 +99,37 @@ public class SettingsFragment extends Fragment { if(fontSwitch.isChecked()) { requireActivity().setTheme(R.style.Theme_NextLocationBig); - editor.putBoolean("fontSwitch",true); - editor.apply(); } if(!fontSwitch.isChecked()) { - requireActivity().setTheme(R.style.Theme_NextLocation); - editor.putBoolean("fontSwitch",false); - editor.apply(); + requireActivity().setTheme(R.style.Theme_NextLocation);; } + editor.putBoolean("fontSwitch",fontSwitch.isChecked()); + editor.apply(); editor.commit(); }); + + this.colorBlindMode = view.findViewById(R.id.colourblindSwitch); + this.colorBlindMode.setChecked(sharedPreferences.getBoolean("colorBlindModeSwitch", false)); + + this.colorBlindMode.setOnClickListener(view1 -> { + editor.putBoolean("colorBlindModeSwitch", colorBlindMode.isChecked()); + editor.apply(); + editor.commit(); + + if (colorBlindMode.isChecked()){ + requireActivity().setTheme(R.style.Theme_NextLocation); + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); + getActivity().recreate(); + System.out.println("AAN"); + }else if (!colorBlindMode.isChecked()){ + requireActivity().setTheme(R.style.Theme_NextLocation); + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); + getActivity().recreate(); + System.out.println("UIT"); + } + + }); } private void initializeLanguageDropdown(View view) { diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml index 9ea800a..d71b96b 100644 --- a/app/src/main/res/layout/fragment_settings.xml +++ b/app/src/main/res/layout/fragment_settings.xml @@ -6,7 +6,8 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:background="@color/primaryColour" android:id="@+id/settingFragment" - tools:context=".fragments.SettingsFragment"> + tools:context=".fragments.SettingsFragment" + android:theme="@style/Theme.Switches"> + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_statistic.xml b/app/src/main/res/layout/fragment_statistic.xml index 8662884..48e16cc 100644 --- a/app/src/main/res/layout/fragment_statistic.xml +++ b/app/src/main/res/layout/fragment_statistic.xml @@ -20,6 +20,15 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> + + + + + + + + + + + + + + + + + + #FFBB86FC + #FF6200EE + #FF3700B3 + #FF03DAC5 + #FF018786 + #FF000000 + #FFFFFFFF + #FF115571 + #FF31AFB4 + #FF14212D + #FF0000 + \ No newline at end of file diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml index b20724e..5306d31 100644 --- a/app/src/main/res/values-night/themes.xml +++ b/app/src/main/res/values-night/themes.xml @@ -2,15 +2,28 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index ebfbba9..4cad898 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -11,4 +11,7 @@ #FF000000 #FF000000 #FF0000 + #FF115571 + #FF31AFB4 + #FF14212D \ No newline at end of file diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 1e892a3..d3ca57a 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -11,6 +11,11 @@ 16sp + + + + + \ No newline at end of file