Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

정보 수정 요청 화면 추가 #99

Merged
merged 20 commits into from
Oct 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
1 change: 1 addition & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ dependencies {
projects.setting,
projects.designResource,
projects.common,
projects.updateCafe,
)
}

Expand Down
Binary file added data/.DS_Store
Binary file not shown.
Binary file added data/src/.DS_Store
Binary file not shown.
Binary file added design-resource/.DS_Store
Binary file not shown.
Binary file added design-resource/src/.DS_Store
Binary file not shown.
Binary file added design-resource/src/main/.DS_Store
Binary file not shown.
Binary file added design-resource/src/main/res/.DS_Store
Binary file not shown.
15 changes: 15 additions & 0 deletions design-resource/src/main/res/drawable/ic_menu_gray400_24.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<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="M12,4m-0,-2a2,2 0,1 1,-0 4a2,2 0,1 1,-0 -4"
android:fillColor="#9CA3AF"/>
<path
android:pathData="M12,12m-0,-2a2,2 0,1 1,-0 4a2,2 0,1 1,-0 -4"
android:fillColor="#9CA3AF"/>
<path
android:pathData="M12,20m-0,-2a2,2 0,1 1,-0 4a2,2 0,1 1,-0 -4"
android:fillColor="#9CA3AF"/>
</vector>
13 changes: 13 additions & 0 deletions design-resource/src/main/res/drawable/ic_trash_20.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="20dp"
android:height="20dp"
android:viewportWidth="20"
android:viewportHeight="20">
<path
android:strokeWidth="1"
android:pathData="M13.333,5V4.333C13.333,3.4 13.333,2.933 13.152,2.577C12.992,2.263 12.737,2.008 12.423,1.848C12.067,1.667 11.6,1.667 10.667,1.667H9.333C8.4,1.667 7.933,1.667 7.577,1.848C7.263,2.008 7.008,2.263 6.848,2.577C6.667,2.933 6.667,3.4 6.667,4.333V5M8.333,9.583V13.75M11.667,9.583V13.75M2.5,5H17.5M15.833,5V14.333C15.833,15.733 15.833,16.434 15.561,16.968C15.321,17.439 14.939,17.821 14.468,18.061C13.934,18.333 13.233,18.333 11.833,18.333H8.167C6.767,18.333 6.066,18.333 5.532,18.061C5.061,17.821 4.679,17.439 4.439,16.968C4.167,16.434 4.167,15.733 4.167,14.333V5"
android:strokeLineJoin="round"
android:fillColor="#00000000"
android:strokeColor="#6B7280"
android:strokeLineCap="round"/>
</vector>
1 change: 1 addition & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,5 @@ include(
":setting",
":common",
":design-resource",
":update-cafe",
)
2 changes: 2 additions & 0 deletions update-cafe/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
* @easyhooon
* @kymjaehong
38 changes: 38 additions & 0 deletions update-cafe/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("UnstableApiUsage", "INLINE_FROM_HIGHER_PLATFORM")

plugins {
eggeum("android-library")
eggeum("android-hilt")
alias(libs.plugins.androidx.navigation.safeargs)
`kotlin-parcelize`
}

android {
namespace = "us.wedemy.eggeum.android.updatecafe"

buildFeatures {
viewBinding = true
buildConfig = true
}
}

dependencies {
implementations(
libs.kotlinx.coroutines.android,
libs.android.material,
libs.androidx.core,
libs.androidx.constraintlayout,
libs.bundles.androidx.lifecycle,
libs.bundles.androidx.navigation,
libs.timber,
projects.common,
projects.designResource,
)
}
18 changes: 18 additions & 0 deletions update-cafe/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?><!--
~ Designed and developed by Wedemy 2023.
~
~ Licensed under the MIT.
~ Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

<application>
<activity
android:name=".ui.UpdateCafeActivity"
android:exported="true"
android:theme="@style/Theme.Eggeum.UpdateCafe"
android:windowSoftInputMode="adjustPan" />

</application>

</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentInputCafeAddressBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.InputCafeAddressViewModel

@AndroidEntryPoint
class InputCafeAddressFragment : BaseFragment<FragmentInputCafeAddressBinding>() {
override fun getViewBinding() = FragmentInputCafeAddressBinding.inflate(layoutInflater)

private val viewModel by viewModels<InputCafeAddressViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
// TODO
}

private fun initObserver() {
// TODO
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import androidx.navigation.fragment.findNavController
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentInputCafeInfoBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.InputCafeInfoViewModel

@AndroidEntryPoint
class InputCafeInfoFragment : BaseFragment<FragmentInputCafeInfoBinding>() {
override fun getViewBinding() = FragmentInputCafeInfoBinding.inflate(layoutInflater)

private val viewModel by viewModels<InputCafeInfoViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
with(binding) {
tbSelectInputCafeInfo.setNavigationOnClickListener {
if (!findNavController().navigateUp()) {
requireActivity().finish()
}
}
}
}

private fun initObserver() {
// TODO
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import androidx.navigation.fragment.findNavController
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.extension.safeNavigate
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentInputCafeMenuBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.InputCafeMenuViewModel

@AndroidEntryPoint
class InputCafeMenuFragment : BaseFragment<FragmentInputCafeMenuBinding>() {
override fun getViewBinding() = FragmentInputCafeMenuBinding.inflate(layoutInflater)

private val viewModel by viewModels<InputCafeMenuViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
with(binding) {
btnUpdateMenuComplete.setOnClickListener {
val action = InputCafeMenuFragmentDirections.actionInputCafeMenuFragmentToUpdateMenuCompleteFragment()
findNavController().safeNavigate(action)
}
}
}

private fun initObserver() {
// TODO
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentInputCafeNameBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.InputCafeNameViewModel

@AndroidEntryPoint
class InputCafeNameFragment : BaseFragment<FragmentInputCafeNameBinding>() {
override fun getViewBinding() = FragmentInputCafeNameBinding.inflate(layoutInflater)

private val viewModel by viewModels<InputCafeNameViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
// TODO
}

private fun initObserver() {
// TODO
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentSelectCafeCategoriesBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.SelectCafeCategoriesViewModel

@AndroidEntryPoint
class SelectCafeCategoriesFragment : BaseFragment<FragmentSelectCafeCategoriesBinding>() {
override fun getViewBinding() = FragmentSelectCafeCategoriesBinding.inflate(layoutInflater)

private val viewModel by viewModels<SelectCafeCategoriesViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
// TODO
}

private fun initObserver() {
// TODO
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
/*
* Designed and developed by Wedemy 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/Wedemy/eggeum-android/blob/main/LICENSE
*/

@file:Suppress("unused", "UnusedPrivateProperty")

package us.wedemy.eggeum.android.updatecafe.ui

import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import androidx.navigation.fragment.findNavController
import dagger.hilt.android.AndroidEntryPoint
import us.wedemy.eggeum.android.common.extension.safeNavigate
import us.wedemy.eggeum.android.common.ui.BaseFragment
import us.wedemy.eggeum.android.updatecafe.databinding.FragmentSelectCafeMenuBinding
import us.wedemy.eggeum.android.updatecafe.viewmodel.SelectCafeMenuViewModel

@AndroidEntryPoint
class SelectCafeMenuFragment : BaseFragment<FragmentSelectCafeMenuBinding>() {
override fun getViewBinding() = FragmentSelectCafeMenuBinding.inflate(layoutInflater)

private val viewModel by viewModels<SelectCafeMenuViewModel>()

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
initListener()
initObserver()
}

private fun initListener() {
with(binding) {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

binding.~ 으로 접근할 변수가 2개 이상일 경우 with(binding) {} 으로 묶는 게 좋은데
해당 화면 구현 종료 후 binding.~ 으로 접근하는 녀석이 최종적으로 1개 뿐이라면 with 으로 묶어 줄 필요는 없을 것 같아요

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

네 다음 작업할 때, 수정하겠습니다

tbSelectInputCafeMenu.setNavigationOnClickListener {
if (!findNavController().navigateUp()) {
requireActivity().finish()
}
}

btnInputCafeMenu.setOnClickListener {
val action = SelectCafeMenuFragmentDirections.actionSelectCafeMenuFragmentToInputCafeMenuFragment()
findNavController().safeNavigate(action)
}
}
}

private fun initObserver() {
// TODO
}
}
Loading