diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
new file mode 100644
index 0000000..fbc8627
--- /dev/null
+++ b/.idea/deploymentTargetDropDown.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/navEditor.xml b/.idea/navEditor.xml
new file mode 100644
index 0000000..e5f533f
--- /dev/null
+++ b/.idea/navEditor.xml
@@ -0,0 +1,502 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 074c538..f72e96d 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -5,6 +5,7 @@ plugins {
id 'dagger.hilt.android.plugin'
id 'androidx.navigation.safeargs.kotlin'
id 'com.google.gms.google-services'
+ id 'com.google.android.gms.oss-licenses-plugin'
}
Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
@@ -100,5 +101,7 @@ dependencies {
//viewPager indicator
implementation 'com.tbuonomo:dotsindicator:4.3'
+ //openSource
+ implementation 'com.google.android.gms:play-services-oss-licenses:17.0.0'
implementation "androidx.hilt:hilt-navigation-fragment:1.0.0"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/promiseeight/www/ui/dialog/BaseDialog.kt b/app/src/main/java/com/promiseeight/www/ui/dialog/BaseDialog.kt
index 6b03d57..efff746 100644
--- a/app/src/main/java/com/promiseeight/www/ui/dialog/BaseDialog.kt
+++ b/app/src/main/java/com/promiseeight/www/ui/dialog/BaseDialog.kt
@@ -21,6 +21,11 @@ abstract class BaseDialog(@LayoutRes private val layoutId:
ONE, TWO
}
+ class DialogBody(title : String, message : String) {
+ lateinit var title : String
+ lateinit var message : String
+ }
+
override fun onCreate(savedInstance: Bundle?) {
super.onCreate(savedInstance)
setStyle(STYLE_NO_TITLE, R.style.dialog_default)
diff --git a/app/src/main/java/com/promiseeight/www/ui/dialog/PushDialog.kt b/app/src/main/java/com/promiseeight/www/ui/dialog/PushDialog.kt
index 7fe50ad..0eb15a9 100644
--- a/app/src/main/java/com/promiseeight/www/ui/dialog/PushDialog.kt
+++ b/app/src/main/java/com/promiseeight/www/ui/dialog/PushDialog.kt
@@ -4,61 +4,56 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Button
+import com.google.firebase.messaging.ktx.remoteMessage
import com.promiseeight.www.R
import com.promiseeight.www.databinding.FragmentHomeBinding
import com.promiseeight.www.databinding.FragmentPushDialogBinding
+//import kotlinx.coroutines.NonCancellable.message
import java.math.BigInteger.TWO
-//class PushDialog: BaseDialog(R.layout.fragment_push_dialog){
-//
-// private val buttonType: ButtonType,
-// private val content:DialogBody,
-// private var onCancelListener : (()->Unit)? = null,
-// private var onConfirmListener : (()->Unit)? = null
-//
-// override fun getFragmentBinding(
-// inflater: LayoutInflater,
-// container: ViewGroup?
-// ): FragmentPushDialogBinding {
-// return FragmentPushDialogBinding.inflate(inflater,container,false)
-// }
-//
-// override fun initView() {
-// super.initView()
-//
-// //Button Type
-// when(buttonType) {
-// ButtonType.ONE -> {
-// binding.layoutBottomTypeOne.visibility.
-// }
-// ButtonType.TWO -> {
+
+class PushDialog(
+ private val buttonType: ButtonType,
+ private val content:DialogBody,
+ private var onCancelListener : (()->Unit)? = null,
+ private var onConfirmListener : (()->Unit)? = null
+) : BaseDialog(R.layout.fragment_push_dialog){
+
+
+ override fun initView() {
+ super.initView()
+
+ //Button Type
+ when(buttonType) {
+ ButtonType.ONE -> {
+// binding.layoutBottomTypeOne.visibility(View.VISIBLE)
+ }
+ ButtonType.TWO -> {
// binding.layoutBottomTypeTwo.visible()
-// }
-// }
-//
-// content.run {
-// binding.
-// }
-// }
-//
-// override fun setEvent() {
-// super.setEvent()
-// binding.btnCancleTypeTwo.setOnClickListener {
-// onCancelListener?.invoke()
-// dismiss()
-// }
-// binding.btnCompleteTypeTwo.setOnClickListener {
-// onConfirmListener?.invoke()
-// dismiss()
-// }
-// binding.btnCompleteTypeOne.setOnClickListener {
-// onConfirmListener?.invoke()
-// dismiss()
-// }
-// }
-//
-// fun visible() {
-//
-// }
-//
-//}
\ No newline at end of file
+ }
+ }
+
+ content.run {
+ binding.titleSystemCustomDialog.text = title
+ binding.contentSystemCustomDialog.text = message ?: ""
+ }
+ }
+
+ override fun setEvent() {
+ super.setEvent()
+ binding.btnCancleTypeTwo.setOnClickListener {
+ onCancelListener?.invoke()
+ dismiss()
+ }
+ binding.btnCompleteTypeTwo.setOnClickListener {
+ onConfirmListener?.invoke()
+ dismiss()
+ }
+ binding.btnCompleteTypeOne.setOnClickListener {
+ onConfirmListener?.invoke()
+ dismiss()
+ }
+ }
+
+}
+
diff --git a/app/src/main/java/com/promiseeight/www/ui/setting/SettingFragment.kt b/app/src/main/java/com/promiseeight/www/ui/setting/SettingFragment.kt
index db736fd..f6fa18f 100644
--- a/app/src/main/java/com/promiseeight/www/ui/setting/SettingFragment.kt
+++ b/app/src/main/java/com/promiseeight/www/ui/setting/SettingFragment.kt
@@ -1,16 +1,21 @@
package com.promiseeight.www.ui.setting
import android.app.AlertDialog
+import android.content.Intent
+import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import androidx.navigation.fragment.findNavController
+import com.google.android.gms.oss.licenses.OssLicensesMenuActivity
import com.promiseeight.www.BuildConfig
import com.promiseeight.www.databinding.FragmentSettingBinding
import com.promiseeight.www.ui.common.BaseFragment
import dagger.hilt.android.AndroidEntryPoint
+import kotlinx.coroutines.Dispatchers.Main
@AndroidEntryPoint
class SettingFragment : BaseFragment() {
@@ -24,7 +29,24 @@ class SettingFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
- binding.tvSettingAppVersion.text = getVersionInfo();
+ binding.tvSettingAppVersion.text = getVersionInfo()
+ binding.ivBack.setOnClickListener {
+ findNavController().navigate(
+ SettingFragmentDirections.actionFragmentSettingToFragmentHome()
+ )
+ }
+
+ binding.tvSettingFeedback.setOnClickListener {
+ uriParse("")
+ }
+
+ binding.tvSettingPrivateInfo.setOnClickListener {
+ uriParse("https://whenwherewhat.notion.site/WWW-d44308e244964fb7a12006efe2eb94cb") //클릭시 개인정보방침
+ }
+
+ binding.tvSettingOpenSource.setOnClickListener {
+ getOpenSource()
+ }
}
@@ -35,6 +57,19 @@ class SettingFragment : BaseFragment() {
// val builder = AlertDialog.Builder(this.parentFragmentManager.getFragment(SettingFragment))
}
+ }
+
+ private fun uriParse(urlGet : String) {
+ val url = urlGet
+ val intent = Intent(Intent.ACTION_VIEW, Uri.parse(url))
+ startActivity(intent)
+ }
+
+ private fun getOpenSource() {
+ activity?.let{
+ val intent = Intent (it, OssLicensesMenuActivity::class.java)
+ it.startActivity(intent)
+ }
}
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_meeting_detail_confirm_when.xml b/app/src/main/res/layout/fragment_meeting_detail_confirm_when.xml
index 0918865..ef4d33e 100644
--- a/app/src/main/res/layout/fragment_meeting_detail_confirm_when.xml
+++ b/app/src/main/res/layout/fragment_meeting_detail_confirm_when.xml
@@ -1,5 +1,6 @@
+
-
+ xmlns:app="http://schemas.android.com/apk/res-auto" >
-
+
diff --git a/app/src/main/res/layout/fragment_setting.xml b/app/src/main/res/layout/fragment_setting.xml
index 6d41688..dfc39eb 100644
--- a/app/src/main/res/layout/fragment_setting.xml
+++ b/app/src/main/res/layout/fragment_setting.xml
@@ -138,6 +138,16 @@
style="@style/Text.Title9"
app:layout_constraintTop_toBottomOf="@id/tv_setting_feedback"/>
+
+
\ No newline at end of file
diff --git a/app/src/main/res/navigation/main_navigation.xml b/app/src/main/res/navigation/main_navigation.xml
index e744082..5131461 100644
--- a/app/src/main/res/navigation/main_navigation.xml
+++ b/app/src/main/res/navigation/main_navigation.xml
@@ -137,6 +137,9 @@
+
diff --git a/build.gradle b/build.gradle
index f149cf5..3edbab9 100644
--- a/build.gradle
+++ b/build.gradle
@@ -15,6 +15,9 @@ buildscript {
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.42'
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version"
classpath 'com.google.gms:google-services:4.3.15'
+
+ //openSource
+ classpath 'com.google.android.gms:oss-licenses-plugin:0.10.4'
}
}
plugins {