diff --git a/components.d.ts b/components.d.ts
index 768124da..c6282ce9 100644
--- a/components.d.ts
+++ b/components.d.ts
@@ -8,9 +8,10 @@ export {}
declare module 'vue' {
export interface GlobalComponents {
About: typeof import('./src/components/About/index.vue')['default']
- AppInstall: typeof import('./src/components/Device/components/ControlBar/AppInstall/index.vue')['default']
+ AppInstall: typeof import('./src/components/Device/components/BatchActions/AppInstall/index.vue')['default']
AppSearch: typeof import('./src/components/AppSearch/index.vue')['default']
AudioCodecSelect: typeof import('./src/components/Preference/components/AudioCodecSelect/index.vue')['default']
+ BatchActions: typeof import('./src/components/Device/components/BatchActions/index.vue')['default']
Camera: typeof import('./src/components/Device/components/MoreDropdown/components/Camera/index.vue')['default']
ControlBar: typeof import('./src/components/Device/components/ControlBar/index.vue')['default']
Device: typeof import('./src/components/Device/index.vue')['default']
@@ -20,6 +21,7 @@ declare module 'vue' {
ElCol: typeof import('element-plus/es')['ElCol']
ElCollapse: typeof import('element-plus/es')['ElCollapse']
ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem']
+ ElCollapseTransition: typeof import('element-plus/es')['ElCollapseTransition']
ElDialog: typeof import('element-plus/es')['ElDialog']
ElDropdown: typeof import('element-plus/es')['ElDropdown']
ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem']
diff --git a/src/components/Device/components/BatchActions/AppInstall/index.vue b/src/components/Device/components/BatchActions/AppInstall/index.vue
new file mode 100644
index 00000000..7aeef33b
--- /dev/null
+++ b/src/components/Device/components/BatchActions/AppInstall/index.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
diff --git a/src/components/Device/components/BatchActions/index.vue b/src/components/Device/components/BatchActions/index.vue
new file mode 100644
index 00000000..80731579
--- /dev/null
+++ b/src/components/Device/components/BatchActions/index.vue
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('common.batch') }}{{ $t(item.label) }}
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Device/components/ControlBar/index.vue b/src/components/Device/components/ControlBar/index.vue
index 46b3c917..fd250ae6 100644
--- a/src/components/Device/components/ControlBar/index.vue
+++ b/src/components/Device/components/ControlBar/index.vue
@@ -119,7 +119,6 @@ export default {
command: 'input keyevent 26',
tips: 'device.control.power.tips',
},
-
{
label: 'device.control.rotation.name',
svgIcon: 'rotation',
diff --git a/src/components/Device/index.vue b/src/components/Device/index.vue
index dabbcc9e..308af987 100644
--- a/src/components/Device/index.vue
+++ b/src/components/Device/index.vue
@@ -30,6 +30,13 @@
+
+
+
+
+
+
@@ -119,6 +132,7 @@ import TerminalAction from './components/TerminalAction/index.vue'
import MirrorAction from './components/MirrorAction/index.vue'
import MoreDropdown from './components/MoreDropdown/index.vue'
import WirelessAction from './components/WirelessAction/index.vue'
+import BatchActions from './components/BatchActions/index.vue'
import { isIPWithPort, sleep } from '$/utils/index.js'
@@ -131,14 +145,21 @@ export default {
MirrorAction,
MoreDropdown,
WirelessAction,
+ BatchActions,
},
data() {
return {
loading: false,
deviceList: [],
mirrorActionRefs: [],
+ selectionRows: [],
}
},
+ computed: {
+ isMultipleRow() {
+ return this.selectionRows.length > 0
+ },
+ },
async created() {
this.getDeviceData()
this.unAdbWatch = await this.$adb.watch(this.onAdbWatch)
@@ -147,6 +168,9 @@ export default {
this?.unAdbWatch?.()
},
methods: {
+ onSelectionChange(rows) {
+ this.selectionRows = rows
+ },
async onAdbWatch(type, ret) {
if (ret && ret.id) {
this.getDeviceData()
diff --git a/src/locales/languages/en-US.json b/src/locales/languages/en-US.json
index c4160a81..33011853 100644
--- a/src/locales/languages/en-US.json
+++ b/src/locales/languages/en-US.json
@@ -10,6 +10,7 @@
"common.progress": "Starting",
"common.loading": "Loading",
"common.search": "Search",
+ "common.batch": "Batch",
"common.language.name": "Language",
"common.language.placeholder": "Select language",
diff --git a/src/locales/languages/zh-CN.json b/src/locales/languages/zh-CN.json
index b84fab64..50586368 100644
--- a/src/locales/languages/zh-CN.json
+++ b/src/locales/languages/zh-CN.json
@@ -10,6 +10,7 @@
"common.progress": "启动中",
"common.loading": "加载中",
"common.search": "搜索",
+ "common.batch": "批量",
"common.language.name": "语言",
"common.language.placeholder": "选择你需要的语言",
diff --git a/src/locales/languages/zh-TW.json b/src/locales/languages/zh-TW.json
index ed7fe9ea..6cb4f7dd 100644
--- a/src/locales/languages/zh-TW.json
+++ b/src/locales/languages/zh-TW.json
@@ -10,6 +10,7 @@
"common.progress": "啟動中",
"common.loading": "載入中",
"common.search": "搜尋",
+ "common.batch": "批量",
"common.language.name": "語言",
"common.language.placeholder": "選擇你要的語言",