Skip to content

Commit c8a8fdb

Browse files
authored
Merge pull request #271 from Runnect/feature/chore-mypage-history-title-edit
[CHORE] 마이페이지 러닝기록 / 제목 수정 시, 키보드 완료 버튼 누르면 바로 수정되도록 변경
2 parents 51aef0d + 79dca9b commit c8a8fdb

File tree

3 files changed

+33
-8
lines changed

3 files changed

+33
-8
lines changed

app/src/main/java/com/runnect/runnect/data/service/UserService.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,16 @@ interface UserService {
3030
suspend fun getUserUploadCourse(
3131
): ResponseUserUploadCourse
3232

33-
@PUT("api/record")
34-
suspend fun putDeleteHistory(
35-
@Body requestDeleteHistoryDto: RequestDeleteHistoryDto
36-
): BaseResponse<ResponseDeleteHistoryDto>
37-
3833
@PUT("api/public-course")
3934
suspend fun putDeleteUploadCourse(
4035
@Body requestDeleteUploadCourse: RequestDeleteUploadCourse
4136
): ResponseDeleteUploadCourse
4237

38+
@PUT("api/record")
39+
suspend fun putDeleteHistory(
40+
@Body requestDeleteHistoryDto: RequestDeleteHistoryDto
41+
): BaseResponse<ResponseDeleteHistoryDto>
42+
4343
@PATCH("api/record/{recordId}")
4444
suspend fun patchHistoryTitle(
4545
@Path("recordId") historyId: Int,

app/src/main/java/com/runnect/runnect/presentation/mypage/history/detail/MyHistoryDetailActivity.kt

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@ import android.content.Intent
44
import android.os.Bundle
55
import android.text.InputType
66
import android.view.Gravity
7+
import android.view.KeyEvent
78
import android.view.View
9+
import android.view.inputmethod.EditorInfo
10+
import android.widget.TextView
811
import androidx.activity.OnBackPressedCallback
912
import androidx.activity.viewModels
1013
import androidx.constraintlayout.widget.ConstraintSet
@@ -19,6 +22,7 @@ import com.runnect.runnect.util.custom.CommonDialogFragment
1922
import com.runnect.runnect.util.custom.PopupItem
2023
import com.runnect.runnect.util.custom.RunnectPopupMenu
2124
import com.runnect.runnect.util.extension.getCompatibleSerializableExtra
25+
import com.runnect.runnect.util.extension.hideKeyboard
2226
import com.runnect.runnect.util.extension.setFocusAndShowKeyboard
2327
import com.runnect.runnect.util.extension.showToast
2428
import com.runnect.runnect.util.extension.snackBar
@@ -82,19 +86,43 @@ class MyHistoryDetailActivity :
8286
}
8387

8488
private fun addListener() {
89+
initBackButtonClickListener()
90+
initShowMoreButtonClickListener()
91+
initEditFinishButtonClickListener()
92+
initTitleEditorActionDoneListener()
93+
}
94+
95+
private fun initBackButtonClickListener() {
8596
binding.ivBackBtn.setOnClickListener {
8697
handleBackButtonByCurrentScreenMode()
8798
}
99+
}
88100

101+
private fun initShowMoreButtonClickListener() {
89102
binding.ivShowMore.setOnClickListener { view ->
90103
showPopupMenu(view)
91104
}
105+
}
92106

107+
private fun initEditFinishButtonClickListener() {
93108
binding.btnMyHistoryDetailEditFinish.setOnClickListener {
94109
viewModel.patchHistoryTitle()
95110
}
96111
}
97112

113+
private fun initTitleEditorActionDoneListener() {
114+
binding.etCourseTitle.setOnEditorActionListener(object : TextView.OnEditorActionListener {
115+
override fun onEditorAction(view: TextView?, actionId: Int, event: KeyEvent?): Boolean {
116+
if (actionId == EditorInfo.IME_ACTION_DONE) {
117+
viewModel.patchHistoryTitle()
118+
hideKeyboard(currentFocus ?: View(this@MyHistoryDetailActivity))
119+
return true
120+
}
121+
return false
122+
}
123+
})
124+
}
125+
98126
private fun registerBackPressedCallback() {
99127
val callback = object : OnBackPressedCallback(true) {
100128
override fun handleOnBackPressed() {

app/src/main/res/layout/activity_my_history_detail.xml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,6 @@
258258
app:layout_constraintEnd_toEndOf="@id/view_1"
259259
app:layout_constraintTop_toTopOf="@id/tv_total_distance" />
260260

261-
262261
<!--이동시간-->
263262

264263
<View
@@ -271,7 +270,6 @@
271270
app:layout_constraintStart_toEndOf="@id/view_1"
272271
app:layout_constraintTop_toTopOf="@id/view_1" />
273272

274-
275273
<androidx.appcompat.widget.AppCompatTextView
276274
android:id="@+id/tv_time"
277275
android:layout_width="wrap_content"
@@ -318,7 +316,6 @@
318316
app:layout_constraintStart_toEndOf="@id/view_2"
319317
app:layout_constraintTop_toTopOf="@id/view_2" />
320318

321-
322319
<androidx.appcompat.widget.AppCompatTextView
323320
android:id="@+id/tv_pace"
324321
android:layout_width="wrap_content"

0 commit comments

Comments
 (0)