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

Version 0.3.0 #21

Open
wants to merge 47 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
d731616
Add KeyboardEvent support
SrMouraSilva Feb 19, 2018
def5106
#6 Create view effects. Tests #5 button support
SrMouraSilva Feb 20, 2018
9cb1e0d
Update package
SrMouraSilva Feb 21, 2018
f629a53
New activities Effect, Param. Update protocol: Add identifier. Create…
SrMouraSilva Feb 21, 2018
71c868e
#6 Effect toggle now send
SrMouraSilva Feb 24, 2018
f73d590
#8 Read plugin data. #6 list pedalboard effects
SrMouraSilva Feb 24, 2018
df8d113
#7 Fix list bug when custom views. #7 Fix ParamDTO get bug when retur…
SrMouraSilva Feb 24, 2018
c4b0102
Ignore messages for not current pedalboard. #7 Toggle param. #Send an…
SrMouraSilva Feb 25, 2018
4256c99
#10 Resume initial tests
SrMouraSilva Feb 25, 2018
e902edf
Improve resume
SrMouraSilva Feb 25, 2018
016118a
#11 Improve resume
SrMouraSilva Feb 25, 2018
ff0b964
#10 #12 Improve param status: Param selected name. Hide params if ped…
SrMouraSilva Feb 25, 2018
654941d
Move files
SrMouraSilva Feb 27, 2018
1b97f65
Create GenericBaseAdapter and GenericViewFilter
SrMouraSilva Feb 27, 2018
d52719a
#12 #10 Resume view: Click a parameter will open a diialog
SrMouraSilva Feb 27, 2018
b2b5a17
#12 Now show dialog and loads the data. #10 Effect now update the status
SrMouraSilva Feb 27, 2018
e3891dd
Improve views: Position and show scroolbar
SrMouraSilva Feb 27, 2018
b01a771
#12 Send and receive param values changes: Partial support
SrMouraSilva Feb 27, 2018
dc32958
#10 Treatment of message events
SrMouraSilva Feb 27, 2018
9c12e5f
ParamsView -> EffectView. #11 EffectView: Add button effect status. R…
SrMouraSilva Feb 28, 2018
eceab7f
Crop long param names. #10 #11 Update dialog when receive EVENT param…
SrMouraSilva Mar 1, 2018
0af2644
#12 Inform the selected item
SrMouraSilva Mar 2, 2018
e0b06f6
#10 #12 Improve selected item. Fix toggle param first click problem.…
SrMouraSilva Mar 3, 2018
b55de52
#4 Show dialog when client disconnect
SrMouraSilva Mar 4, 2018
da0e569
#4 Fix rotate dialog message
SrMouraSilva Mar 4, 2018
f4eb7de
#14 Simple way to check if USB debugging mode are active
SrMouraSilva Mar 4, 2018
d5f85ad
Merge pull request #16 from PedalPi/issue-5-buttons-support
SrMouraSilva Mar 4, 2018
706ab16
Merge pull request #17 from PedalPi/issue-10-resume
SrMouraSilva Mar 4, 2018
1dc4957
#14 Add Configure informations page
SrMouraSilva Mar 4, 2018
8aa8d6c
#14 Add buttons to intent the settings and the help page (developer.a…
SrMouraSilva Mar 5, 2018
f89be51
#14 Improve design
SrMouraSilva Mar 5, 2018
ab55252
#14 Fix activity show info page
SrMouraSilva Mar 6, 2018
a8959bd
Merge pull request #18 from PedalPi/issue-14-usb-debugging
SrMouraSilva Mar 6, 2018
bd9dbe9
#19 USB Acessory initial example
SrMouraSilva Mar 6, 2018
f85bc70
#19 Drop Android 2.3 USB Accessory support. Fix Pedal Pi description …
SrMouraSilva Mar 6, 2018
19f0cba
#20 Readme
SrMouraSilva Mar 6, 2018
27cdaab
#20 Google play image
SrMouraSilva Mar 6, 2018
51f100e
#20 Images size
SrMouraSilva Mar 6, 2018
6a962a9
#20 Images size
SrMouraSilva Mar 6, 2018
ec9526c
#20 Images size - Fix
SrMouraSilva Mar 6, 2018
bee05c6
Merge pull request #24 from PedalPi/issue-20-readme
SrMouraSilva Mar 6, 2018
47e1931
#19 Start refactor for support easly other communication methods
SrMouraSilva Mar 19, 2018
b18c408
#19 Finish refactor necessary to implements other communication proto…
SrMouraSilva Mar 19, 2018
b373aa3
#23 Add license files. Test AOA support. Improve request plugins (onl…
SrMouraSilva Jul 22, 2018
f1547c2
Remove Readme wrong added
SrMouraSilva Jul 22, 2018
1af0320
Merge pull request #25 from PedalPi/issue-19-usb-accessory
SrMouraSilva Jul 22, 2018
0dfafa9
Merge pull request #27 from PedalPi/issue-23-license
SrMouraSilva Jul 22, 2018
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
Prev Previous commit
Next Next commit
#19 Start refactor for support easly other communication methods
  • Loading branch information
SrMouraSilva committed Mar 19, 2018
commit 47e19315672bf0811eb3949a7754267cd6c2ed82
9 changes: 5 additions & 4 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 25
defaultConfig {
applicationId "io.github.pedalpi.pedalpi_display"
applicationId "io.github.pedalpi.displayview"
minSdkVersion 10
targetSdkVersion 25
versionCode 1
Expand All @@ -32,10 +32,11 @@ dependencies {
implementation 'com.android.support:appcompat-v7:25.4.0'
//implementation 'com.android.support:appcompat-v7:27.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:support-annotations:27.0.2'
implementation 'com.android.support:support-annotations:27.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'uk.co.chrisjenx:calligraphy:2.3.0'
implementation 'com.github.salomonbrys.kotson:kotson:2.5.0'
implementation 'uk.co.chrisjenx:calligraphy:2.3.0' // Custom font
implementation 'com.github.salomonbrys.kotson:kotson:2.5.0' // Use gsom for json
implementation 'com.squareup.okhttp3:okhttp:3.10.0' // HttpClient
}
2 changes: 1 addition & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name="io.github.pedalpi.displayview.communication.server.App">
android:name="io.github.pedalpi.displayview.App">
<!--<activity android:naio.github.pedalpi.displayview.activity.MainActivity">-->

<!--<uses-library android:name="com.android.future.usb.accessory" />-->
Expand Down
15 changes: 15 additions & 0 deletions app/src/main/java/io/github/pedalpi/displayview/App.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package io.github.pedalpi.displayview

import android.app.Application
import io.github.pedalpi.displayview.communication.adb.AdbCommunication
import io.github.pedalpi.displayview.communication.base.Communicator


class App : Application() {

override fun onCreate() {
super.onCreate()
Communicator.communication = AdbCommunication()
Communicator.initialize()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import android.widget.Button
import android.widget.TextView
import io.github.pedalpi.displayview.R
import io.github.pedalpi.displayview.activity.effects.EffectsActivity
import io.github.pedalpi.displayview.communication.message.request.Messages
import io.github.pedalpi.displayview.communication.message.response.EventMessage
import io.github.pedalpi.displayview.communication.message.response.EventType
import io.github.pedalpi.displayview.communication.message.response.ResponseMessage
import io.github.pedalpi.displayview.communication.message.response.ResponseVerb
import io.github.pedalpi.displayview.communication.server.Server
import io.github.pedalpi.displayview.communication.adb.message.EventMessage
import io.github.pedalpi.displayview.communication.adb.message.EventType
import io.github.pedalpi.displayview.communication.base.Communicator
import io.github.pedalpi.displayview.communication.base.message.Messages
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseVerb
import io.github.pedalpi.displayview.model.Data
import uk.co.chrisjenx.calligraphy.CalligraphyContextWrapper

Expand All @@ -41,7 +41,7 @@ class MainActivity : AppCompatActivity() {
number.text = "--"
name.text = "CONNECTING"

Server.setOnMessageListener({ onMessage(it) })
Communicator.setOnMessageListener({ onMessage(it) })

val button = findViewById(R.id.button) as Button
button.setOnClickListener({ goToEffectsList() })
Expand Down Expand Up @@ -72,7 +72,7 @@ class MainActivity : AppCompatActivity() {
val pedalboard = Data.currentPedalboard

runOnUiThread({
number.text = if (id < 10) "0"+id else id.toString()
number.text = if (id < 10) "0$id" else id.toString()
name.text = pedalboard.name
})
}
Expand All @@ -88,7 +88,7 @@ class MainActivity : AppCompatActivity() {
public override fun onResume() {
super.onResume()

Server.setOnMessageListener({ onMessage(it) })
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_DATA)
Communicator.setOnMessageListener({ onMessage(it) })
Communicator.send(Messages.CURRENT_PEDALBOARD_DATA)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ import com.github.salomonbrys.kotson.int
import com.github.salomonbrys.kotson.string
import io.github.pedalpi.displayview.R
import io.github.pedalpi.displayview.activity.params.ParamsActivity
import io.github.pedalpi.displayview.communication.message.request.Messages
import io.github.pedalpi.displayview.communication.message.response.EventMessage
import io.github.pedalpi.displayview.communication.message.response.EventType
import io.github.pedalpi.displayview.communication.message.response.ResponseMessage
import io.github.pedalpi.displayview.communication.message.response.ResponseVerb
import io.github.pedalpi.displayview.communication.server.Server
import io.github.pedalpi.displayview.communication.adb.message.EventMessage
import io.github.pedalpi.displayview.communication.adb.message.EventType
import io.github.pedalpi.displayview.communication.base.Communicator
import io.github.pedalpi.displayview.communication.base.message.Messages
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseVerb
import io.github.pedalpi.displayview.model.Data


Expand Down Expand Up @@ -65,7 +65,7 @@ class EffectsActivity : AppCompatActivity() {
public override fun onResume() {
super.onResume()

Server.setOnMessageListener({ onMessage(it) })
Communicator.setOnMessageListener({ onMessage(it) })
}

override fun onSupportNavigateUp(): Boolean {
Expand All @@ -82,7 +82,7 @@ class EffectsActivity : AppCompatActivity() {
}

private fun requestToggleStatusEffect(dto: EffectsListItemDTO) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_TOGGLE_EFFECT(dto.effect))
Communicator.send(Messages.CURRENT_PEDALBOARD_TOGGLE_EFFECT(dto.effect))
}

private fun onMessage(message: ResponseMessage) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import com.github.salomonbrys.kotson.int
import com.github.salomonbrys.kotson.string
import io.github.pedalpi.displayview.R
import io.github.pedalpi.displayview.activity.effects.EffectsActivity
import io.github.pedalpi.displayview.communication.message.request.Messages
import io.github.pedalpi.displayview.communication.message.response.EventMessage
import io.github.pedalpi.displayview.communication.message.response.EventType
import io.github.pedalpi.displayview.communication.message.response.ResponseMessage
import io.github.pedalpi.displayview.communication.message.response.ResponseVerb
import io.github.pedalpi.displayview.communication.server.Server
import io.github.pedalpi.displayview.communication.adb.message.EventMessage
import io.github.pedalpi.displayview.communication.adb.message.EventType
import io.github.pedalpi.displayview.communication.base.Communicator
import io.github.pedalpi.displayview.communication.base.message.Messages
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseVerb
import io.github.pedalpi.displayview.model.Data
import io.github.pedalpi.displayview.model.Effect
import io.github.pedalpi.displayview.model.Param
Expand Down Expand Up @@ -43,7 +43,7 @@ class ParamsActivity : AppCompatActivity() {

populateViews()

Server.setOnMessageListener({ onMessage(it) })
Communicator.setOnMessageListener({ onMessage(it) })
}

private fun populateViews() {
Expand All @@ -66,7 +66,7 @@ class ParamsActivity : AppCompatActivity() {
}

private fun requestChangeParamValue(param: Param) {
Server.sendBroadcast(Messages.Companion.PARAM_VALUE_CHANGE(this.index, param))
Communicator.send(Messages.Companion.PARAM_VALUE_CHANGE(this.index, param))
}

private fun onMessage(message: ResponseMessage) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ import io.github.pedalpi.displayview.R
import io.github.pedalpi.displayview.activity.ConfigureInformationActivity
import io.github.pedalpi.displayview.activity.resume.effectsview.EffectsView
import io.github.pedalpi.displayview.activity.resume.effectview.EffectView
import io.github.pedalpi.displayview.communication.message.request.Messages
import io.github.pedalpi.displayview.communication.message.response.EventMessage
import io.github.pedalpi.displayview.communication.message.response.EventType
import io.github.pedalpi.displayview.communication.message.response.ResponseMessage
import io.github.pedalpi.displayview.communication.message.response.ResponseVerb
import io.github.pedalpi.displayview.communication.server.Server
import io.github.pedalpi.displayview.communication.adb.message.EventMessage
import io.github.pedalpi.displayview.communication.adb.message.EventType
import io.github.pedalpi.displayview.communication.base.Communicator
import io.github.pedalpi.displayview.communication.base.message.Messages
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseVerb
import io.github.pedalpi.displayview.model.Data
import io.github.pedalpi.displayview.model.Effect
import io.github.pedalpi.displayview.model.Param
Expand Down Expand Up @@ -58,9 +58,9 @@ class ResumeActivity : AppCompatActivity() {
this.effectView.onParamValueChange = { requestChangeParamValue(it) }
this.effectView.onEffectToggleStatus = { onEffectChangeStatus(it) }

Server.setOnMessageListener { onMessage(it) }
Server.setOnConnectedListener { runOnUiThread { progress.setMessage("Reading plugins data") } }
Server.setOnDisconnectedListener { runOnUiThread { showLoading("Trying to reconnect") } }
Communicator.setOnMessageListener { onMessage(it) }
Communicator.setOnConnectedListener { runOnUiThread { progress.setMessage("Reading plugins data") } }
Communicator.setOnDisconnectedListener { runOnUiThread { showLoading("Trying to reconnect") } }
this.update()

if (!Data.isDataLoaded())
Expand Down Expand Up @@ -94,11 +94,11 @@ class ResumeActivity : AppCompatActivity() {
}

private fun requestToggleEffectStatus(effect: Effect) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_TOGGLE_EFFECT(effect))
Communicator.send(Messages.CURRENT_PEDALBOARD_TOGGLE_EFFECT(effect))
}

private fun requestChangeParamValue(param: Param) {
Server.sendBroadcast(Messages.PARAM_VALUE_CHANGE(param.effect.index, param))
Communicator.send(Messages.PARAM_VALUE_CHANGE(param.effect.index, param))
}

private fun onMessage(message : ResponseMessage) {
Expand All @@ -108,7 +108,7 @@ class ResumeActivity : AppCompatActivity() {
})

} else if (message.request isEquivalentTo Messages.PLUGINS) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_DATA)
Communicator.send(Messages.CURRENT_PEDALBOARD_DATA)
runOnUiThread({
progress.setMessage("Reading current pedalboard data")
})
Expand All @@ -126,13 +126,13 @@ class ResumeActivity : AppCompatActivity() {
update()

} else if (event.type == EventType.BANK) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_DATA)
Communicator.send(Messages.CURRENT_PEDALBOARD_DATA)

} else if (event.type == EventType.PEDALBOARD) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_DATA)
Communicator.send(Messages.CURRENT_PEDALBOARD_DATA)

} else if (event.type == EventType.EFFECT) {
Server.sendBroadcast(Messages.CURRENT_PEDALBOARD_DATA)
Communicator.send(Messages.CURRENT_PEDALBOARD_DATA)

} else if (event.type == EventType.EFFECT_TOGGLE) {
this.updateEffectStatus(event.content["effect"].int)
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package io.github.pedalpi.displayview.communication.adb

import android.util.Log
import io.github.pedalpi.displayview.communication.adb.server.Server
import io.github.pedalpi.displayview.communication.base.Communication
import io.github.pedalpi.displayview.communication.base.message.RequestMessage
import java.io.IOException


class AdbCommunication: Communication() {

private val server = Server()
private var running = false

override fun initialize() {
val runnable = Runnable { this.runServer() }
Thread(runnable).start()
}

private fun runServer() {
server.start(8888)
running = true

try {
while (running)
server.waitClient()

} catch (e: IOException) {
Log.e("ERROR", e.message)
throw RuntimeException(e)
}
}

override fun close() {
running = false
}

override fun send(message: RequestMessage) {
server.sendBroadcast(message)
}
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package io.github.pedalpi.displayview.communication
package io.github.pedalpi.displayview.communication.adb

import android.util.Log
import io.github.pedalpi.displayview.communication.message.Identifier
import io.github.pedalpi.displayview.communication.message.request.RequestMessage
import io.github.pedalpi.displayview.communication.message.request.RequestVerb
import io.github.pedalpi.displayview.communication.message.response.ResponseMessage
import io.github.pedalpi.displayview.communication.server.Server
import io.github.pedalpi.displayview.communication.adb.message.Identifier
import io.github.pedalpi.displayview.communication.base.message.RequestMessage
import io.github.pedalpi.displayview.communication.base.message.RequestVerb
import io.github.pedalpi.displayview.communication.adb.server.Server
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import java.io.BufferedReader
import java.io.IOException
import java.io.InputStreamReader
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package io.github.pedalpi.displayview.communication.adb

import com.google.gson.JsonParser
import io.github.pedalpi.displayview.communication.adb.message.SerialRequestMessage
import io.github.pedalpi.displayview.communication.adb.message.Identifier
import io.github.pedalpi.displayview.communication.adb.message.SerialResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseMessage
import io.github.pedalpi.displayview.communication.base.message.ResponseVerb
import org.json.JSONException


object MessageBuilder {
fun generate(message: String): SerialResponseMessage {
val strings = message.split(" ".toRegex(), 3).toTypedArray()

val request = getRequestMessage(strings[0].toInt())
val type = searchType(strings[1])
val data = strings[2]

return generateMessage(request, type, data)
}

private fun getRequestMessage(identifier: Int) : SerialRequestMessage {
return Identifier.instance.remove(identifier)
}

private fun searchType(word: String): ResponseVerb {
return ResponseVerb.valueOf(word)
}

private fun generateMessage(request: SerialRequestMessage, type: ResponseVerb, data: String): ResponseMessage {
return try {
SerialResponseMessage(type, JsonParser().parse(data), request)
} catch (e: JSONException) {
ResponseMessage.error("Invalid received message", request)
}
}
}
Loading