Parámetro de conflicto de visibilidad efectiva entre java y kotlin

Estoy tratando de anular la function bindView :

 import com.mikepenz.materialdrawer.model.PrimaryDrawerItem open class SpinnerDrawerItem() : PrimaryDrawerItem(), View.OnClickListener { override fun bindView(viewHolder: ViewHolder?) { super.bindView(viewHolder) // Do things } } 

De PrimaryDrawerItem pero obtengo:

enter image description here

¿Por qué?

PrimaryDrawerItem.ViewHolder está protected . Y el método bindView() , que es public , acepta PrimaryDrawerItem.ViewHolder . Pero un llamador externo general no puede invocar este método porque no puede derivar una class anidada protected PrimaryDrawerItem.ViewHolder . Kotlin prohíbe dicho comportamiento y requiere que la visibilidad del parámetro sea igual a la visibilidad del método o que la visibilidad de los parameters sea menor o igual a la visibilidad del método.

En su caso, debe hacer que PrimaryDrawerItem.ViewHolder public o hacer que PrimaryDrawerItem.bindView() protegido.