|
@@ -687,25 +687,61 @@ fun ColumnScope.OpenModalBottomSheetAS(
|
|
|
.fillMaxWidth()
|
|
|
)
|
|
|
Spacer(modifier = Modifier.height(10.dp))
|
|
|
- SwitchPasswordGenerator(title = R.string.lowercase_abc, onSwitchClick = {
|
|
|
- isLowerCaseEnabled = it
|
|
|
- }, isLowerCaseEnabled,
|
|
|
+
|
|
|
+ SwitchPasswordGenerator(
|
|
|
+ title = R.string.lowercase_abc,
|
|
|
+ onSwitchClick = {
|
|
|
+ isLowerCaseEnabled = it
|
|
|
+ },
|
|
|
+ isSwitchEnabled = isLowerCaseEnabled,
|
|
|
+ toBeEnabled = !(isLowerCaseEnabled && !isUpperCaseEnabled && !isNumberEnabled && !isRandomSymbolsEnabled),
|
|
|
onSwitchGeneratePassword = {
|
|
|
- val passGen = generatePassword(selectedSliderType, isLowerCaseEnabled, isUpperCaseEnabled, isNumberEnabled, isRandomSymbolsEnabled, sliderPosition.roundToInt())
|
|
|
+ val passGen = generatePassword(
|
|
|
+ selectedSliderType,
|
|
|
+ isLowerCaseEnabled,
|
|
|
+ isUpperCaseEnabled,
|
|
|
+ isNumberEnabled,
|
|
|
+ isRandomSymbolsEnabled,
|
|
|
+ sliderPosition.roundToInt()
|
|
|
+ )
|
|
|
generatedPassword = passGen
|
|
|
}
|
|
|
- )
|
|
|
+ )
|
|
|
|
|
|
Spacer(modifier = Modifier.height(5.dp))
|
|
|
- SwitchPasswordGenerator(title = R.string.uppercase_abc, onSwitchClick = {
|
|
|
- isUpperCaseEnabled = it
|
|
|
- }, isUpperCaseEnabled,
|
|
|
+ SwitchPasswordGenerator(
|
|
|
+ title = R.string.uppercase_abc,
|
|
|
+ onSwitchClick = {
|
|
|
+ isUpperCaseEnabled = it
|
|
|
+ },
|
|
|
+ isSwitchEnabled = isUpperCaseEnabled,
|
|
|
+ toBeEnabled = !(!isLowerCaseEnabled && isUpperCaseEnabled && !isNumberEnabled && !isRandomSymbolsEnabled),
|
|
|
onSwitchGeneratePassword = {
|
|
|
- val passGen = generatePassword(selectedSliderType, isLowerCaseEnabled, isUpperCaseEnabled, isNumberEnabled, isRandomSymbolsEnabled, sliderPosition.roundToInt())
|
|
|
+ val passGen = generatePassword(
|
|
|
+ selectedSliderType,
|
|
|
+ isLowerCaseEnabled,
|
|
|
+ isUpperCaseEnabled,
|
|
|
+ isNumberEnabled,
|
|
|
+ isRandomSymbolsEnabled,
|
|
|
+ sliderPosition.roundToInt()
|
|
|
+ )
|
|
|
generatedPassword = passGen
|
|
|
}
|
|
|
)
|
|
|
|
|
|
+ var isNumbersToBeEnabled = false
|
|
|
+
|
|
|
+ if (selectedSliderType == sliderPasswordTypeList[2]) {
|
|
|
+ isNumbersToBeEnabled = selectedSliderType != sliderPasswordTypeList[2]
|
|
|
+ if (!isLowerCaseEnabled && !isUpperCaseEnabled && !isNumberEnabled && !isRandomSymbolsEnabled) {
|
|
|
+ isLowerCaseEnabled = true
|
|
|
+ val pass = generatePassword(selectedSliderType, isLowerCaseEnabled, isUpperCaseEnabled, isNumberEnabled, isRandomSymbolsEnabled, sliderPosition.roundToInt())
|
|
|
+ generatedPassword = pass
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ isNumbersToBeEnabled = !(!isLowerCaseEnabled && !isUpperCaseEnabled && isNumberEnabled && !isRandomSymbolsEnabled)
|
|
|
+ }
|
|
|
+
|
|
|
Spacer(modifier = Modifier.height(5.dp))
|
|
|
SwitchPasswordGenerator(
|
|
|
title = R.string.numbers_123,
|
|
@@ -713,13 +749,19 @@ fun ColumnScope.OpenModalBottomSheetAS(
|
|
|
isNumberEnabled = it
|
|
|
},
|
|
|
isSwitchEnabled = isNumberEnabled,
|
|
|
- toBeEnabled = selectedSliderType != sliderPasswordTypeList[2],
|
|
|
+ toBeEnabled = isNumbersToBeEnabled,
|
|
|
onSwitchGeneratePassword = {
|
|
|
val passGen = generatePassword(selectedSliderType, isLowerCaseEnabled, isUpperCaseEnabled, isNumberEnabled, isRandomSymbolsEnabled, sliderPosition.roundToInt())
|
|
|
generatedPassword = passGen
|
|
|
}
|
|
|
)
|
|
|
|
|
|
+ val isSymbolsToBeEnabled = if (selectedSliderType == sliderPasswordTypeList[2]) {
|
|
|
+ selectedSliderType != sliderPasswordTypeList[2]
|
|
|
+ } else {
|
|
|
+ !(!isLowerCaseEnabled && !isUpperCaseEnabled && !isNumberEnabled && isRandomSymbolsEnabled)
|
|
|
+ }
|
|
|
+
|
|
|
Spacer(modifier = Modifier.height(5.dp))
|
|
|
SwitchPasswordGenerator(
|
|
|
title = R.string.randomized_symbols,
|
|
@@ -727,7 +769,7 @@ fun ColumnScope.OpenModalBottomSheetAS(
|
|
|
isRandomSymbolsEnabled = it
|
|
|
},
|
|
|
isSwitchEnabled = isRandomSymbolsEnabled,
|
|
|
- toBeEnabled = selectedSliderType != sliderPasswordTypeList[2],
|
|
|
+ toBeEnabled = isSymbolsToBeEnabled,
|
|
|
onSwitchGeneratePassword = {
|
|
|
val passGen = generatePassword(selectedSliderType, isLowerCaseEnabled, isUpperCaseEnabled, isNumberEnabled, isRandomSymbolsEnabled, sliderPosition.roundToInt())
|
|
|
generatedPassword = passGen
|