diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ce2902b..bbf5435 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -12,6 +12,15 @@ android:supportsRtl="true" android:theme="@style/Theme.SyncVision" tools:targetApi="31"> + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/example/syncvision/MainActivity.java b/app/src/main/java/com/example/syncvision/MainActivity.java new file mode 100644 index 0000000..211f498 --- /dev/null +++ b/app/src/main/java/com/example/syncvision/MainActivity.java @@ -0,0 +1,53 @@ +package com.example.syncvision; + +import android.os.Bundle; +import android.view.View; +import android.widget.Switch; +import androidx.activity.EdgeToEdge; + +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatDelegate; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; + +public class MainActivity extends AppCompatActivity { + + private Switch switch_btn; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + EdgeToEdge.enable(this); + setContentView(R.layout.activity_main); + + switch_btn = findViewById(R.id.switcher); // Initialize the Switch + + // Apply window insets listener to adjust padding + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { + Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); + return insets; + }); + + // Set click listener for the switch + switch_btn.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + toggleNightMode(); + } + }); + } + + private void toggleNightMode() { + boolean isNightModeOn = AppCompatDelegate.getDefaultNightMode() == AppCompatDelegate.MODE_NIGHT_YES; + + if (isNightModeOn) { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); + switch_btn.setText("Enable Dark Mode"); + } else { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); + switch_btn.setText("Disable Dark Mode"); + } + } +} diff --git a/app/src/main/res/color/dark_primary_dark_color.xml b/app/src/main/res/color/dark_primary_dark_color.xml new file mode 100644 index 0000000..a8b409b --- /dev/null +++ b/app/src/main/res/color/dark_primary_dark_color.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/color/grey_2.xml b/app/src/main/res/color/grey_2.xml new file mode 100644 index 0000000..a8b409b --- /dev/null +++ b/app/src/main/res/color/grey_2.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/baseline_account_circle_24.xml b/app/src/main/res/drawable/baseline_account_circle_24.xml new file mode 100644 index 0000000..12d06a9 --- /dev/null +++ b/app/src/main/res/drawable/baseline_account_circle_24.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..abfab91 --- /dev/null +++ b/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + +