mirror of
https://github.com/geode-sdk/android-launcher.git
synced 2026-10-21 08:19:33 +00:00
cleanup edittext access
This commit is contained in:
3 files changed
+26
-23
No files matched your search
@@ -100,9 +100,8 @@ class GeometryDashActivity : ComponentActivity(), Cocos2dxHelper.Cocos2dxHelperL
|
|||||||
glSurfaceView.initView()
|
glSurfaceView.initView()
|
||||||
glSurfaceView.setCocos2dxRenderer(Cocos2dxRenderer())
|
glSurfaceView.setCocos2dxRenderer(Cocos2dxRenderer())
|
||||||
|
|
||||||
|
|
||||||
editText.inputType = 145
|
editText.inputType = 145
|
||||||
glSurfaceView.setCocos2dxEditText(editText)
|
glSurfaceView.cocos2dxEditText = editText
|
||||||
|
|
||||||
frameLayout
|
frameLayout
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,7 +38,15 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var mCocos2dxRenderer: Cocos2dxRenderer
|
private lateinit var mCocos2dxRenderer: Cocos2dxRenderer
|
||||||
var mCocos2dxEditText: Cocos2dxEditText? = null
|
|
||||||
|
var cocos2dxEditText: Cocos2dxEditText? = null
|
||||||
|
set(value) {
|
||||||
|
field = value
|
||||||
|
|
||||||
|
field?.setOnEditorActionListener(sCocos2dxTextInputWrapper)
|
||||||
|
field?.cocos2dxGLSurfaceView = this
|
||||||
|
requestFocus()
|
||||||
|
}
|
||||||
|
|
||||||
fun initView() {
|
fun initView() {
|
||||||
setEGLContextClientVersion(2)
|
setEGLContextClientVersion(2)
|
||||||
@@ -53,8 +61,8 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
override fun handleMessage(msg: Message) {
|
override fun handleMessage(msg: Message) {
|
||||||
when (msg.what) {
|
when (msg.what) {
|
||||||
HANDLER_OPEN_IME_KEYBOARD -> {
|
HANDLER_OPEN_IME_KEYBOARD -> {
|
||||||
if (mCocos2dxEditText?.requestFocus() == true) {
|
if (cocos2dxEditText?.requestFocus() == true) {
|
||||||
mCocos2dxEditText?.apply {
|
cocos2dxEditText?.apply {
|
||||||
removeTextChangedListener(
|
removeTextChangedListener(
|
||||||
sCocos2dxTextInputWrapper
|
sCocos2dxTextInputWrapper
|
||||||
)
|
)
|
||||||
@@ -67,7 +75,7 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
(context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).showSoftInput(
|
(context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).showSoftInput(
|
||||||
mCocos2dxEditText,
|
cocos2dxEditText,
|
||||||
0
|
0
|
||||||
)
|
)
|
||||||
Log.d("GLSurfaceView", "showSoftInput")
|
Log.d("GLSurfaceView", "showSoftInput")
|
||||||
@@ -76,7 +84,7 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
HANDLER_CLOSE_IME_KEYBOARD -> {
|
HANDLER_CLOSE_IME_KEYBOARD -> {
|
||||||
mCocos2dxEditText?.apply {
|
cocos2dxEditText?.apply {
|
||||||
removeTextChangedListener(
|
removeTextChangedListener(
|
||||||
sCocos2dxTextInputWrapper
|
sCocos2dxTextInputWrapper
|
||||||
)
|
)
|
||||||
@@ -97,6 +105,16 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onPause() {
|
||||||
|
queueEvent { mCocos2dxRenderer.handleOnPause() }
|
||||||
|
super.onPause()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onResume() {
|
||||||
|
super.onResume()
|
||||||
|
queueEvent { mCocos2dxRenderer.handleOnResume() }
|
||||||
|
}
|
||||||
|
|
||||||
override fun onTouchEvent(pMotionEvent: MotionEvent): Boolean {
|
override fun onTouchEvent(pMotionEvent: MotionEvent): Boolean {
|
||||||
val pointerNumber = pMotionEvent.pointerCount
|
val pointerNumber = pMotionEvent.pointerCount
|
||||||
val ids = IntArray(pointerNumber)
|
val ids = IntArray(pointerNumber)
|
||||||
@@ -213,20 +231,6 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
|
|||||||
return mCocos2dxRenderer.getContentText()
|
return mCocos2dxRenderer.getContentText()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
fun getCocos2dxEditText(): Cocos2dxEditText? {
|
|
||||||
return mCocos2dxEditText
|
|
||||||
}
|
|
||||||
|
|
||||||
fun setCocos2dxEditText(pCocos2dxEditText: Cocos2dxEditText) {
|
|
||||||
mCocos2dxEditText = pCocos2dxEditText
|
|
||||||
if (sCocos2dxTextInputWrapper != null) {
|
|
||||||
mCocos2dxEditText?.setOnEditorActionListener(sCocos2dxTextInputWrapper)
|
|
||||||
mCocos2dxEditText?.cocos2dxGLSurfaceView = this
|
|
||||||
requestFocus()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun insertText(pText: String) {
|
fun insertText(pText: String) {
|
||||||
queueEvent { mCocos2dxRenderer.handleInsertText(pText) }
|
queueEvent { mCocos2dxRenderer.handleInsertText(pText) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ class Cocos2dxTextInputWrapper(private val mCocos2dxGLSurfaceView: Cocos2dxGLSur
|
|||||||
private var mText: String? = null
|
private var mText: String? = null
|
||||||
|
|
||||||
private val isFullScreenEdit: Boolean
|
private val isFullScreenEdit: Boolean
|
||||||
get() = (mCocos2dxGLSurfaceView.mCocos2dxEditText?.context?.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).isFullscreenMode
|
get() = (mCocos2dxGLSurfaceView.cocos2dxEditText?.context?.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).isFullscreenMode
|
||||||
|
|
||||||
fun setOriginText(pOriginText: String?) {
|
fun setOriginText(pOriginText: String?) {
|
||||||
mOriginText = pOriginText
|
mOriginText = pOriginText
|
||||||
@@ -47,7 +47,7 @@ class Cocos2dxTextInputWrapper(private val mCocos2dxGLSurfaceView: Cocos2dxGLSur
|
|||||||
|
|
||||||
override fun onTextChanged(pCharSequence: CharSequence, start: Int, before: Int, count: Int) {}
|
override fun onTextChanged(pCharSequence: CharSequence, start: Int, before: Int, count: Int) {}
|
||||||
override fun onEditorAction(pTextView: TextView, pActionID: Int, pKeyEvent: KeyEvent?): Boolean {
|
override fun onEditorAction(pTextView: TextView, pActionID: Int, pKeyEvent: KeyEvent?): Boolean {
|
||||||
if (mCocos2dxGLSurfaceView.getCocos2dxEditText() == pTextView && isFullScreenEdit) {
|
if (mCocos2dxGLSurfaceView.cocos2dxEditText == pTextView && isFullScreenEdit) {
|
||||||
for (i in mOriginText!!.length downTo 1) {
|
for (i in mOriginText!!.length downTo 1) {
|
||||||
mCocos2dxGLSurfaceView.deleteBackward()
|
mCocos2dxGLSurfaceView.deleteBackward()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user