@@ -189,7 +189,8 @@ class AztecToolbar : FrameLayout, OnMenuItemClickListener {
189189 }
190190
191191 override fun onMenuItemClick (item : MenuItem ? ): Boolean {
192- item?.isChecked = (item?.isChecked == false )
192+ val checked = (item?.isChecked == false )
193+ item?.isChecked = checked
193194
194195 when (item?.itemId) {
195196 // Heading Menu
@@ -236,10 +237,12 @@ class AztecToolbar : FrameLayout, OnMenuItemClickListener {
236237 // List Menu
237238 R .id.list_ordered -> {
238239 editor?.toggleFormatting(TextFormat .FORMAT_ORDERED_LIST )
240+ toggleListMenuSelection(item.itemId, checked)
239241 return true
240242 }
241243 R .id.list_unordered -> {
242244 editor?.toggleFormatting(TextFormat .FORMAT_UNORDERED_LIST )
245+ toggleListMenuSelection(item.itemId, checked)
243246 return true
244247 }
245248 else -> return false
@@ -524,6 +527,23 @@ class AztecToolbar : FrameLayout, OnMenuItemClickListener {
524527 }
525528 }
526529
530+ private fun toggleListMenuSelection (listMenuItemId : Int , isChecked : Boolean ) {
531+ if (isChecked) {
532+ listMenu?.menu?.findItem(listMenuItemId)?.isChecked = true
533+
534+ when (listMenuItemId) {
535+ R .id.list_ordered -> setListMenuSelector(TextFormat .FORMAT_ORDERED_LIST )
536+ R .id.list_unordered -> setListMenuSelector(TextFormat .FORMAT_UNORDERED_LIST )
537+ else -> setListMenuSelector(TextFormat .FORMAT_UNORDERED_LIST ) // Use unordered list selector by default.
538+ }
539+ } else {
540+ listMenu?.menu?.findItem(R .id.list_none)?.isChecked = true
541+
542+ // Use unordered list selector by default.
543+ setListMenuSelector(TextFormat .FORMAT_UNORDERED_LIST )
544+ }
545+ }
546+
527547 fun enableFormatButtons (isEnabled : Boolean ) {
528548 ToolbarAction .values().forEach { action ->
529549 if (action != ToolbarAction .HTML ) {
0 commit comments