From a20fe58e160f1c9135cadfa3d465f5c1883dd6fd Mon Sep 17 00:00:00 2001 From: Yury Polek Date: Sat, 1 Aug 2020 19:26:39 +0300 Subject: [PATCH] add refresh menu --- gradle.properties | 4 ++-- .../polek/adbwifi/actions/RefreshAction.kt | 21 ++++++++++++++++ .../listeners/MyProjectManagerListener.kt | 12 ---------- .../dev/polek/adbwifi/services/AdbService.kt | 24 +++++++++++++++++++ .../adbwifi/services/MyApplicationService.kt | 10 -------- .../adbwifi/services/MyProjectService.kt | 11 --------- .../dev/polek/adbwifi/ui/AdbWiFiToolWindow.kt | 14 +++++++---- src/main/resources/META-INF/plugin.xml | 18 +++++++++----- .../resources/messages/MyBundle.properties | 4 +--- 9 files changed, 69 insertions(+), 49 deletions(-) create mode 100644 src/main/kotlin/dev/polek/adbwifi/actions/RefreshAction.kt delete mode 100644 src/main/kotlin/dev/polek/adbwifi/listeners/MyProjectManagerListener.kt create mode 100644 src/main/kotlin/dev/polek/adbwifi/services/AdbService.kt delete mode 100644 src/main/kotlin/dev/polek/adbwifi/services/MyApplicationService.kt delete mode 100644 src/main/kotlin/dev/polek/adbwifi/services/MyProjectService.kt diff --git a/gradle.properties b/gradle.properties index 3ee20cf..d6668f7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,8 +5,8 @@ pluginGroup = dev.polek.adbwifi pluginName = ADB-Wi-Fi pluginVersion = 0.0.1 pluginSinceBuild = 193 -pluginUntilBuild = 201.* +pluginUntilBuild = 202.* platformType = IC -platformVersion = 2019.3 +platformVersion = 2020.2 platformDownloadSources = true diff --git a/src/main/kotlin/dev/polek/adbwifi/actions/RefreshAction.kt b/src/main/kotlin/dev/polek/adbwifi/actions/RefreshAction.kt new file mode 100644 index 0000000..9e6d3ca --- /dev/null +++ b/src/main/kotlin/dev/polek/adbwifi/actions/RefreshAction.kt @@ -0,0 +1,21 @@ +package dev.polek.adbwifi.actions + +import com.intellij.openapi.actionSystem.AnAction +import com.intellij.openapi.actionSystem.AnActionEvent +import com.intellij.openapi.components.ServiceManager +import com.intellij.openapi.diagnostic.logger +import com.intellij.openapi.project.DumbAware +import dev.polek.adbwifi.services.AdbService + +class RefreshAction : AnAction(), DumbAware { + + override fun actionPerformed(e: AnActionEvent) { + log.debug("Refresh") + val adbService = ServiceManager.getService(AdbService::class.java) + log.debug("devices: ${adbService.devices()}") + } + + companion object { + private val log = logger("RefreshAction") + } +} diff --git a/src/main/kotlin/dev/polek/adbwifi/listeners/MyProjectManagerListener.kt b/src/main/kotlin/dev/polek/adbwifi/listeners/MyProjectManagerListener.kt deleted file mode 100644 index aa9301c..0000000 --- a/src/main/kotlin/dev/polek/adbwifi/listeners/MyProjectManagerListener.kt +++ /dev/null @@ -1,12 +0,0 @@ -package dev.polek.adbwifi.listeners - -import dev.polek.adbwifi.services.MyProjectService -import com.intellij.openapi.project.Project -import com.intellij.openapi.project.ProjectManagerListener - -internal class MyProjectManagerListener : ProjectManagerListener { - - override fun projectOpened(project: Project) { - project.getService(MyProjectService::class.java) - } -} diff --git a/src/main/kotlin/dev/polek/adbwifi/services/AdbService.kt b/src/main/kotlin/dev/polek/adbwifi/services/AdbService.kt new file mode 100644 index 0000000..fd37ee3 --- /dev/null +++ b/src/main/kotlin/dev/polek/adbwifi/services/AdbService.kt @@ -0,0 +1,24 @@ +package dev.polek.adbwifi.services + +import com.intellij.openapi.Disposable +import dev.polek.adbwifi.adb.Adb +import dev.polek.adbwifi.model.Device + +class AdbService : Disposable { + + private val adb = Adb() + + fun devices(): List = adb.devices() + + fun connect(device: Device) { + + } + + fun disconnect(device: Device) { + + } + + override fun dispose() { + + } +} diff --git a/src/main/kotlin/dev/polek/adbwifi/services/MyApplicationService.kt b/src/main/kotlin/dev/polek/adbwifi/services/MyApplicationService.kt deleted file mode 100644 index d71a4a2..0000000 --- a/src/main/kotlin/dev/polek/adbwifi/services/MyApplicationService.kt +++ /dev/null @@ -1,10 +0,0 @@ -package dev.polek.adbwifi.services - -import dev.polek.adbwifi.MyBundle - -class MyApplicationService { - - init { - println(MyBundle.message("applicationService")) - } -} diff --git a/src/main/kotlin/dev/polek/adbwifi/services/MyProjectService.kt b/src/main/kotlin/dev/polek/adbwifi/services/MyProjectService.kt deleted file mode 100644 index d3bed0d..0000000 --- a/src/main/kotlin/dev/polek/adbwifi/services/MyProjectService.kt +++ /dev/null @@ -1,11 +0,0 @@ -package dev.polek.adbwifi.services - -import dev.polek.adbwifi.MyBundle -import com.intellij.openapi.project.Project - -class MyProjectService(project: Project) { - - init { - println(MyBundle.message("projectService", project.name)) - } -} diff --git a/src/main/kotlin/dev/polek/adbwifi/ui/AdbWiFiToolWindow.kt b/src/main/kotlin/dev/polek/adbwifi/ui/AdbWiFiToolWindow.kt index 8cf073a..17fd0ff 100644 --- a/src/main/kotlin/dev/polek/adbwifi/ui/AdbWiFiToolWindow.kt +++ b/src/main/kotlin/dev/polek/adbwifi/ui/AdbWiFiToolWindow.kt @@ -1,21 +1,25 @@ package dev.polek.adbwifi.ui +import com.intellij.openapi.actionSystem.ActionManager +import com.intellij.openapi.actionSystem.ActionPlaces +import com.intellij.openapi.actionSystem.DefaultActionGroup import com.intellij.openapi.wm.ToolWindow -import com.intellij.ui.components.JBPanel import com.intellij.ui.components.JBScrollPane import com.intellij.util.ui.components.BorderLayoutPanel import dev.polek.adbwifi.adb.Adb import dev.polek.adbwifi.model.Device -import java.awt.BorderLayout -import java.awt.Dimension -import javax.swing.JPanel class AdbWiFiToolWindow(private val toolWindow: ToolWindow) : BorderLayoutPanel() { - private val adb = Adb() private val deviceListPanel = DeviceListPanel() init { + val actionManager = ActionManager.getInstance() + val actionGroup = (actionManager.getAction("AdbWifi.ToolbarActions") as DefaultActionGroup) + val toolbar = actionManager.createActionToolbar(ActionPlaces.TOOLWINDOW_TITLE, actionGroup, true) + toolbar.setTargetComponent(this) + addToTop(toolbar.component) + addToCenter(JBScrollPane(deviceListPanel)) diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 7324265..f368773 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -8,8 +8,7 @@ com.intellij.modules.platform - - + - - - + + + + + + + diff --git a/src/main/resources/messages/MyBundle.properties b/src/main/resources/messages/MyBundle.properties index 797c00d..9c5b2d5 100644 --- a/src/main/resources/messages/MyBundle.properties +++ b/src/main/resources/messages/MyBundle.properties @@ -1,4 +1,2 @@ -name=My Plugin -applicationService=Application service -projectService=Project service: {0} +name=ADB Wi-Fi noConnectedDevices=No connected devices