Skip to content

Commit f2055ab

Browse files
authored
Merge pull request #32 from ARTEMKOPIK/palette/ux-a11y-improvements-11760063113072482568
🎨 Palette: Improve micro-UX with haptic feedback and accessibility labels
2 parents 4b07dfe + 599eade commit f2055ab

File tree

7 files changed

+52
-18
lines changed

7 files changed

+52
-18
lines changed

app/src/main/java/com/autoclicker/app/MainActivity.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,13 @@ class MainActivity : BaseActivity() {
117117

118118
// Инструкция
119119
findViewById<LinearLayout>(R.id.btnHelp).setOnClickListener {
120+
HapticFeedback.light(it)
120121
showHelpDialog()
121122
}
122123

123124
// Скриншот
124125
findViewById<LinearLayout>(R.id.btnScreenshot).setOnClickListener {
126+
HapticFeedback.light(it)
125127
if (!ScreenCaptureService.isRunning) {
126128
requestScreenCapture()
127129
} else {
@@ -131,6 +133,7 @@ class MainActivity : BaseActivity() {
131133

132134
// Пипетка
133135
findViewById<LinearLayout>(R.id.btnColorPicker).setOnClickListener {
136+
HapticFeedback.light(it)
134137
try {
135138
if (checkPermissions()) {
136139
ColorPickerService.startService(this)
@@ -144,6 +147,7 @@ class MainActivity : BaseActivity() {
144147

145148
// Telegram
146149
findViewById<LinearLayout>(R.id.btnTelegram).setOnClickListener {
150+
HapticFeedback.light(it)
147151
startActivity(Intent(this, TelegramSettingsActivity::class.java))
148152
overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left)
149153
}
@@ -164,6 +168,7 @@ class MainActivity : BaseActivity() {
164168

165169
// Домой
166170
findViewById<LinearLayout>(R.id.btnHome).setOnClickListener {
171+
HapticFeedback.light(it)
167172
val intent = Intent(Intent.ACTION_MAIN)
168173
intent.addCategory(Intent.CATEGORY_HOME)
169174
startActivity(intent)
@@ -178,6 +183,7 @@ class MainActivity : BaseActivity() {
178183

179184
// Планировщик
180185
findViewById<LinearLayout>(R.id.btnScheduler).setOnClickListener {
186+
HapticFeedback.light(it)
181187
try {
182188
startActivity(Intent(this, SchedulerActivity::class.java))
183189
overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left)
@@ -189,6 +195,7 @@ class MainActivity : BaseActivity() {
189195

190196
// Запись макроса
191197
findViewById<LinearLayout>(R.id.btnMacro).setOnClickListener {
198+
HapticFeedback.light(it)
192199
try {
193200
if (checkPermissions()) {
194201
com.autoclicker.app.service.MacroRecorderService.startService(this)
@@ -202,6 +209,7 @@ class MainActivity : BaseActivity() {
202209

203210
// Профили
204211
findViewById<LinearLayout>(R.id.btnProfiles).setOnClickListener {
212+
HapticFeedback.light(it)
205213
try {
206214
startActivity(Intent(this, ProfilesActivity::class.java))
207215
overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left)
@@ -213,6 +221,7 @@ class MainActivity : BaseActivity() {
213221

214222
// Логи
215223
findViewById<LinearLayout>(R.id.btnLogs)?.setOnClickListener {
224+
HapticFeedback.light(it)
216225
try {
217226
startActivity(Intent(this, LogsActivity::class.java))
218227
overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left)

app/src/main/java/com/autoclicker/app/ScriptListActivity.kt

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import androidx.recyclerview.widget.ItemTouchHelper
2525
import androidx.recyclerview.widget.LinearLayoutManager
2626
import androidx.recyclerview.widget.RecyclerView
2727
import com.autoclicker.app.base.BaseActivity
28+
import com.autoclicker.app.util.HapticFeedback
2829
import com.autoclicker.app.util.ScriptExporter
2930
import com.autoclicker.app.util.ScriptStorage
3031
import java.text.SimpleDateFormat
@@ -105,30 +106,38 @@ class ScriptListActivity : BaseActivity() {
105106

106107
private fun setupListeners() {
107108
// Назад
108-
findViewById<ImageView>(R.id.btnBack).setOnClickListener { finish() }
109+
findViewById<ImageView>(R.id.btnBack).setOnClickListener {
110+
HapticFeedback.light(it)
111+
finish()
112+
}
109113

110114
// Добавить скрипт
111115
findViewById<FloatingActionButton>(R.id.fabAdd).setOnClickListener {
116+
HapticFeedback.light(it)
112117
startActivity(Intent(this, ScriptEditorActivity::class.java))
113118
}
114119

115120
// Поиск
116121
findViewById<ImageView>(R.id.btnSearch).setOnClickListener {
122+
HapticFeedback.light(it)
117123
toggleSearch()
118124
}
119125

120126
// Закрыть поиск
121127
findViewById<ImageView>(R.id.btnCloseSearch).setOnClickListener {
128+
HapticFeedback.light(it)
122129
toggleSearch()
123130
}
124131

125132
// Сортировка
126133
findViewById<ImageView>(R.id.btnSort).setOnClickListener { view ->
134+
HapticFeedback.light(view)
127135
showSortMenu(view)
128136
}
129137

130138
// Меню (импорт)
131139
findViewById<ImageView>(R.id.btnMenu).setOnClickListener { view ->
140+
HapticFeedback.light(view)
132141
showImportMenu(view)
133142
}
134143

@@ -480,7 +489,10 @@ class ScriptListActivity : BaseActivity() {
480489
tvName.text = script.name
481490
tvDate.text = script.date
482491

483-
itemView.setOnClickListener { onItemClick(script) }
492+
itemView.setOnClickListener {
493+
HapticFeedback.light(it)
494+
onItemClick(script)
495+
}
484496
itemView.setOnLongClickListener {
485497
showScriptMenu(script)
486498
true

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

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,8 @@
284284
android:gravity="center"
285285
android:padding="12dp"
286286
android:clickable="true"
287-
android:focusable="true">
287+
android:focusable="true"
288+
android:contentDescription="@string/main_screenshot">
288289

289290
<ImageView
290291
android:layout_width="28dp"
@@ -312,7 +313,8 @@
312313
android:gravity="center"
313314
android:padding="12dp"
314315
android:clickable="true"
315-
android:focusable="true">
316+
android:focusable="true"
317+
android:contentDescription="@string/main_color_picker">
316318

317319
<ImageView
318320
android:layout_width="28dp"
@@ -340,7 +342,8 @@
340342
android:gravity="center"
341343
android:padding="12dp"
342344
android:clickable="true"
343-
android:focusable="true">
345+
android:focusable="true"
346+
android:contentDescription="@string/main_macro">
344347

345348
<ImageView
346349
android:layout_width="28dp"
@@ -376,7 +379,8 @@
376379
android:gravity="center"
377380
android:padding="12dp"
378381
android:clickable="true"
379-
android:focusable="true">
382+
android:focusable="true"
383+
android:contentDescription="@string/main_scheduler">
380384

381385
<ImageView
382386
android:layout_width="28dp"
@@ -404,7 +408,8 @@
404408
android:gravity="center"
405409
android:padding="12dp"
406410
android:clickable="true"
407-
android:focusable="true">
411+
android:focusable="true"
412+
android:contentDescription="@string/main_profiles">
408413

409414
<ImageView
410415
android:layout_width="28dp"
@@ -432,7 +437,8 @@
432437
android:gravity="center"
433438
android:padding="12dp"
434439
android:clickable="true"
435-
android:focusable="true">
440+
android:focusable="true"
441+
android:contentDescription="@string/main_telegram">
436442

437443
<ImageView
438444
android:layout_width="28dp"
@@ -468,7 +474,8 @@
468474
android:gravity="center"
469475
android:padding="12dp"
470476
android:clickable="true"
471-
android:focusable="true">
477+
android:focusable="true"
478+
android:contentDescription="@string/main_help">
472479

473480
<ImageView
474481
android:layout_width="28dp"
@@ -496,7 +503,8 @@
496503
android:gravity="center"
497504
android:padding="12dp"
498505
android:clickable="true"
499-
android:focusable="true">
506+
android:focusable="true"
507+
android:contentDescription="@string/main_logs">
500508

501509
<ImageView
502510
android:layout_width="28dp"
@@ -524,7 +532,8 @@
524532
android:gravity="center"
525533
android:padding="12dp"
526534
android:clickable="true"
527-
android:focusable="true">
535+
android:focusable="true"
536+
android:contentDescription="@string/main_home">
528537

529538
<ImageView
530539
android:layout_width="28dp"

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

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
android:padding="10dp"
2828
android:src="@drawable/ic_back"
2929
android:background="@drawable/bg_icon_button"
30-
android:contentDescription="Back"
30+
android:contentDescription="@string/action_back"
3131
app:tint="@color/text_primary" />
3232

3333
<TextView
@@ -48,7 +48,7 @@
4848
android:padding="10dp"
4949
android:src="@drawable/ic_search"
5050
android:background="@drawable/bg_icon_button"
51-
android:contentDescription="Search"
51+
android:contentDescription="@string/action_search"
5252
app:tint="@color/text_secondary" />
5353

5454
<ImageView
@@ -59,7 +59,7 @@
5959
android:src="@drawable/ic_sort"
6060
android:background="@drawable/bg_icon_button"
6161
android:layout_marginStart="4dp"
62-
android:contentDescription="Sort"
62+
android:contentDescription="@string/action_sort"
6363
app:tint="@color/text_secondary" />
6464

6565
<ImageView
@@ -70,7 +70,7 @@
7070
android:src="@drawable/ic_menu"
7171
android:background="@drawable/bg_icon_button"
7272
android:layout_marginStart="4dp"
73-
android:contentDescription="Menu"
73+
android:contentDescription="@string/action_menu"
7474
app:tint="@color/text_secondary" />
7575
</LinearLayout>
7676

@@ -112,7 +112,7 @@
112112
android:src="@drawable/ic_close"
113113
android:background="@drawable/bg_icon_button"
114114
android:layout_marginStart="8dp"
115-
android:contentDescription="Close"
115+
android:contentDescription="@string/action_close"
116116
app:tint="@color/text_secondary" />
117117
</LinearLayout>
118118

@@ -154,6 +154,7 @@
154154
app:backgroundTint="@color/primary"
155155
app:tint="@color/text_on_primary"
156156
app:fabSize="normal"
157-
app:elevation="8dp" />
157+
app:elevation="8dp"
158+
android:contentDescription="@string/action_add_script" />
158159

159160
</androidx.coordinatorlayout.widget.CoordinatorLayout>

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
android:padding="10dp"
6363
android:src="@drawable/ic_delete"
6464
android:background="@drawable/bg_icon_button"
65-
app:tint="@color/error" />
65+
app:tint="@color/error"
66+
android:contentDescription="@string/action_delete" />
6667

6768
</LinearLayout>

app/src/main/res/values-en/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
<string name="action_menu">Menu</string>
3030
<string name="action_copy">Copy</string>
3131
<string name="action_close">Close</string>
32+
<string name="action_back">Back</string>
3233

3334
<!-- Messages -->
3435
<string name="msg_saved">Saved</string>

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
<string name="action_menu">Меню</string>
3030
<string name="action_copy">Копировать</string>
3131
<string name="action_close">Закрыть</string>
32+
<string name="action_back">Назад</string>
3233

3334
<!-- Messages -->
3435
<string name="msg_saved">Сохранено</string>

0 commit comments

Comments
 (0)