Skip to content

Commit

Permalink
Merge pull request #33 from aritra-tech/develop
Browse files Browse the repository at this point in the history
Settings Screen changes and revamped the bottom nav bar
  • Loading branch information
aritra-tech authored Aug 5, 2023
2 parents e5184cb + 5b992e2 commit b139a5e
Show file tree
Hide file tree
Showing 11 changed files with 91 additions and 35 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ fun SettingsComponent(
Icon(
painter = painterResource(painterResourceID),
contentDescription = stringResource(R.string.icon),
modifier = modifier.size(30.dp),
modifier = modifier.size(25.dp),
)
Column(
verticalArrangement = Arrangement.Center,
Expand All @@ -63,7 +63,7 @@ fun SettingsComponent(
) {
Text(
text = settingHeaderText,
fontSize = 20.sp,
fontSize = 18.sp,
fontFamily = FontFamily(Font(R.font.poppins_semibold))
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,12 @@ fun SettingsSwitchCard(
Icon(
painter = painterResource(id = R.drawable.moon_icon),
contentDescription = stringResource(R.string.icon),
modifier = Modifier.size(30.dp),
modifier = Modifier.size(25.dp),
)
Text(
modifier = Modifier.padding(start = 10.dp),
text = stringResource(R.string.dark_mode),
fontSize = 20.sp,
fontSize = 18.sp,
fontFamily = FontFamily(Font(R.font.poppins_semibold))
)
Switch(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import androidx.annotation.DrawableRes
import androidx.compose.ui.graphics.vector.ImageVector

data class BottomNavItem(
val name: String,
val route: String,
@DrawableRes val icon: Int,
)
21 changes: 19 additions & 2 deletions app/src/main/java/com/aritra/notify/navigation/NotifyApp.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.NavigationBar
import androidx.compose.material3.NavigationBarItem
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.navigation.NavHostController
import androidx.navigation.NavType.Companion.IntType
Expand All @@ -29,10 +31,12 @@ fun NotifyApp(navController: NavHostController = rememberNavController()) {

val bottomNavItem = listOf(
BottomNavItem(
name = "Notes",
route = NotifyScreens.Notes.name,
icon = R.drawable.note_outline
),
BottomNavItem(
name = "Settings",
route = NotifyScreens.Settings.name,
icon = R.drawable.settings_outline
),
Expand All @@ -46,20 +50,33 @@ fun NotifyApp(navController: NavHostController = rememberNavController()) {
Scaffold(
bottomBar = {
if (backStackEntry.value?.destination?.route !in screensWithHiddenNavBar) {
NavigationBar(modifier = Modifier.height(60.dp)) {
NavigationBar(modifier = Modifier.height(75.dp)) {
bottomNavItem.forEach { item ->
NavigationBarItem(
alwaysShowLabel = true,
icon = {
Icon(
painter = painterResource(id = item.icon),
contentDescription = null,
contentDescription = item.name,
tint = if (backStackEntry.value?.destination?.route == item.route)
MaterialTheme.colorScheme.onSurface
else
MaterialTheme.colorScheme.secondary
)
},
label = {
Text(
text = item.name,
color = if (backStackEntry.value?.destination?.route == item.route)
MaterialTheme.colorScheme.onSurface
else
MaterialTheme.colorScheme.secondary,
fontWeight = if (backStackEntry.value?.destination?.route == item.route)
FontWeight.Bold
else
FontWeight.Normal,
)
},
selected = backStackEntry.value?.destination?.route == item.route,
onClick = {
navController.navigate(item.route) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ import com.aritra.notify.components.actions.LayoutToggleButton
import com.aritra.notify.components.actions.NoList
import com.aritra.notify.components.actions.SwipeDelete
import com.aritra.notify.components.note.GridNoteCard
import com.aritra.notify.components.topbar.TopBar

@OptIn(ExperimentalMaterial3Api::class)
@Composable
Expand All @@ -59,11 +58,6 @@ fun NoteScreen(
var isGridView by rememberSaveable { mutableStateOf(false) }

Scaffold(
topBar = {
TopBar(
title = stringResource(R.string.all_notes)
)
},
floatingActionButton = {
FloatingActionButton(
onClick = { onFabClicked() }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,35 +4,20 @@ import android.content.Intent
import android.net.Uri
import androidx.activity.compose.rememberLauncherForActivityResult
import androidx.activity.result.contract.ActivityResultContracts
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Surface
import androidx.compose.material3.Switch
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.contentDescription
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.text.font.Font
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.unit.dp
Expand All @@ -41,9 +26,9 @@ import androidx.hilt.navigation.compose.hiltViewModel
import com.aritra.notify.R
import com.aritra.notify.components.actions.SettingsComponent
import com.aritra.notify.components.actions.SettingsSwitchCard
import com.aritra.notify.components.topbar.TopBar
import com.aritra.notify.viewmodel.ThemeViewModel
import com.aritra.notify.utils.Const
import com.aritra.notify.utils.shareApp

@Composable
fun SettingsScreen() {
Expand All @@ -65,13 +50,7 @@ fun SettingsScreen() {
}
)

Scaffold(
topBar = {
TopBar(
title = stringResource(R.string.settings)
)
}
) {
Scaffold {
Surface(
modifier = Modifier.padding(it)
) {
Expand Down Expand Up @@ -122,6 +101,34 @@ fun SettingsScreen() {
}
}

/** Others. **/

item {
Spacer(modifier = Modifier.height(20.dp))
Text(
modifier = Modifier.padding(start = 5.dp),
text = stringResource(R.string.others),
fontSize = 14.sp,
fontFamily = FontFamily(Font(R.font.poppins_medium))
)
SettingsComponent(
settingHeaderText = stringResource(R.string.rate_us_on_google_play),
painterResourceID = R.drawable.star_icon
) {
val intent = Intent(
Intent.ACTION_VIEW,
Uri.parse(Const.PLAY_STORE)
)
context.startActivity(intent)
}
SettingsComponent(
settingHeaderText = stringResource(R.string.share_notify),
painterResourceID = R.drawable.share_icon
) {
shareApp(context)
}
}

/** Product. **/

item {
Expand Down
1 change: 1 addition & 0 deletions app/src/main/java/com/aritra/notify/utils/Const.kt
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,5 @@ object Const {
const val DISMISS_BUTTON = "dismiss_button"
const val GITHUB_URL = "https://github.com/aritra-tech/Notify"
const val PRIVACY_POLICY = "https://www.freeprivacypolicy.com/live/e4342ac0-aedf-4b36-9a7c-95900bf66074"
const val PLAY_STORE = "https://play.google.com/store/apps/details?id=com.aritra.notify"
}
11 changes: 11 additions & 0 deletions app/src/main/java/com/aritra/notify/utils/ShareUtils.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import android.graphics.pdf.PdfDocument
import android.net.Uri
import android.view.View
import androidx.core.content.FileProvider
import com.aritra.notify.R
import java.io.File
import java.io.FileOutputStream
fun shareNoteAsText(context: Context, title: String, description: String) {
Expand Down Expand Up @@ -89,4 +90,14 @@ private fun saveBitmapAsPdf(context: Context, bitmap: Bitmap, pdfFileName: Strin
}

return pdfFile
}

fun shareApp(context: Context) {
val sendIntent: Intent = Intent().apply {
action = Intent.ACTION_SEND
putExtra(Intent.EXTRA_TEXT, context.getString(R.string.on_share_message))
type = "text/plain"
}
val shareIntent = Intent.createChooser(sendIntent, null)
context.startActivity(shareIntent)
}
13 changes: 13 additions & 0 deletions app/src/main/res/drawable/share_icon.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M4,12V20C4,20.53 4.211,21.039 4.586,21.414C4.961,21.789 5.47,22 6,22H18C18.53,22 19.039,21.789 19.414,21.414C19.789,21.039 20,20.53 20,20V12M16,6L12,2M12,2L8,6M12,2V15"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#000000"
android:strokeLineCap="round"/>
</vector>
9 changes: 9 additions & 0 deletions app/src/main/res/drawable/star_icon.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M8.85,17.825L12,15.925L15.15,17.85L14.325,14.25L17.1,11.85L13.45,11.525L12,8.125L10.55,11.5L6.9,11.825L9.675,14.25L8.85,17.825ZM5.825,22L7.45,14.975L2,10.25L9.2,9.625L12,3L14.8,9.625L22,10.25L16.55,14.975L18.175,22L12,18.275L5.825,22Z"
android:fillColor="#000000"/>
</vector>
3 changes: 3 additions & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,7 @@
<string name="all_notes">All Notes</string>
<string name="mailTo">mailto:[email protected]?Subject=Your%20feedback%20is%20important%20to%20us%21</string>
<string name="share_as_pdf">Share as PDF</string>
<string name="others">Others</string>
<string name="rate_us_on_google_play">Rate us on Google Play</string>
<string name="on_share_message">https://play.google.com/store/apps/details?id=com.aritra.notify</string>
</resources>

0 comments on commit b139a5e

Please sign in to comment.