mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-10 01:51:05 +09:00
594: Style event (#753)
* #594: fix * #594: tests * Update workflow.yml
This commit is contained in:
parent
aee92c620e
commit
ba0a325f5d
2 changed files with 68 additions and 62 deletions
|
@ -37,15 +37,11 @@ import androidx.transition.TransitionManager
|
|||
import androidx.transition.TransitionSet
|
||||
import com.agileburo.anytype.BuildConfig
|
||||
import com.agileburo.anytype.R
|
||||
import com.agileburo.anytype.core_ui.common.Alignment
|
||||
import com.agileburo.anytype.core_ui.common.Markup
|
||||
import com.agileburo.anytype.core_ui.features.page.BlockAdapter
|
||||
import com.agileburo.anytype.core_ui.features.page.BlockDimensions
|
||||
import com.agileburo.anytype.core_ui.features.page.BlockView
|
||||
import com.agileburo.anytype.core_ui.features.page.TurnIntoActionReceiver
|
||||
import com.agileburo.anytype.core_ui.features.page.scrollandmove.*
|
||||
import com.agileburo.anytype.core_ui.features.page.styling.StylingEvent
|
||||
import com.agileburo.anytype.core_ui.features.page.styling.StylingMode
|
||||
import com.agileburo.anytype.core_ui.menu.DocumentPopUpMenu
|
||||
import com.agileburo.anytype.core_ui.model.UiBlock
|
||||
import com.agileburo.anytype.core_ui.reactive.clicks
|
||||
|
@ -463,64 +459,7 @@ open class PageFragment :
|
|||
|
||||
lifecycleScope.launch {
|
||||
styleToolbar.events.collect { event ->
|
||||
when (event) {
|
||||
is StylingEvent.Coloring.Text -> {
|
||||
if (styleToolbar.mode == StylingMode.MARKUP)
|
||||
vm.onMarkupTextColorAction(event.color.title)
|
||||
else
|
||||
vm.onToolbarTextColorAction(event.color.title)
|
||||
}
|
||||
is StylingEvent.Coloring.Background -> {
|
||||
if (styleToolbar.mode == StylingMode.MARKUP)
|
||||
vm.onMarkupBackgroundColorAction(event.color.title)
|
||||
else
|
||||
vm.onBlockBackgroundColorAction(event.color.title)
|
||||
}
|
||||
is StylingEvent.Markup.Bold -> {
|
||||
vm.onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.BOLD
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Italic -> {
|
||||
vm.onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.ITALIC
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.StrikeThrough -> {
|
||||
vm.onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.STRIKETHROUGH
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Code -> {
|
||||
vm.onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.KEYBOARD
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Link -> {
|
||||
vm.onBlockStyleLinkClicked()
|
||||
}
|
||||
is StylingEvent.Alignment.Left -> {
|
||||
vm.onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.START
|
||||
)
|
||||
}
|
||||
is StylingEvent.Alignment.Center -> {
|
||||
vm.onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.CENTER
|
||||
)
|
||||
}
|
||||
is StylingEvent.Alignment.Right -> {
|
||||
vm.onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.END
|
||||
)
|
||||
}
|
||||
is StylingEvent.Sliding.Color -> {
|
||||
vm.onStyleColorSlideClicked()
|
||||
}
|
||||
is StylingEvent.Sliding.Background -> {
|
||||
vm.onStyleBackgroundSlideClicked()
|
||||
}
|
||||
}
|
||||
vm.onStylingToolbarEvent(event)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,8 @@ import com.agileburo.anytype.core_ui.features.page.*
|
|||
import com.agileburo.anytype.core_ui.features.page.scrollandmove.ScrollAndMoveTargetDescriptor.Companion.END_RANGE
|
||||
import com.agileburo.anytype.core_ui.features.page.scrollandmove.ScrollAndMoveTargetDescriptor.Companion.INNER_RANGE
|
||||
import com.agileburo.anytype.core_ui.features.page.scrollandmove.ScrollAndMoveTargetDescriptor.Companion.START_RANGE
|
||||
import com.agileburo.anytype.core_ui.features.page.styling.StylingEvent
|
||||
import com.agileburo.anytype.core_ui.features.page.styling.StylingMode
|
||||
import com.agileburo.anytype.core_ui.model.UiBlock
|
||||
import com.agileburo.anytype.core_ui.state.ControlPanelState
|
||||
import com.agileburo.anytype.core_ui.widgets.ActionItemType
|
||||
|
@ -158,6 +160,7 @@ class PageViewModel(
|
|||
}
|
||||
|
||||
private fun proceedWithUpdatingDocumentTitle(update: String) {
|
||||
|
||||
viewModelScope.launch {
|
||||
orchestrator.proxies.intents.send(
|
||||
Intent.Document.UpdateTitle(
|
||||
|
@ -827,7 +830,71 @@ class PageViewModel(
|
|||
}
|
||||
}
|
||||
|
||||
fun onStylingToolbarEvent(event: StylingEvent) {
|
||||
val state = controlPanelViewState.value!!
|
||||
when (event) {
|
||||
is StylingEvent.Coloring.Text -> {
|
||||
if (state.stylingToolbar.mode == StylingMode.MARKUP)
|
||||
onMarkupTextColorAction(event.color.title)
|
||||
else
|
||||
onToolbarTextColorAction(event.color.title)
|
||||
}
|
||||
is StylingEvent.Coloring.Background -> {
|
||||
if (state.stylingToolbar.mode == StylingMode.MARKUP)
|
||||
onMarkupBackgroundColorAction(event.color.title)
|
||||
else
|
||||
onBlockBackgroundColorAction(event.color.title)
|
||||
}
|
||||
is StylingEvent.Markup.Bold -> {
|
||||
onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.BOLD
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Italic -> {
|
||||
onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.ITALIC
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.StrikeThrough -> {
|
||||
onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.STRIKETHROUGH
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Code -> {
|
||||
onBlockStyleMarkupActionClicked(
|
||||
action = Markup.Type.KEYBOARD
|
||||
)
|
||||
}
|
||||
is StylingEvent.Markup.Link -> {
|
||||
onBlockStyleLinkClicked()
|
||||
}
|
||||
is StylingEvent.Alignment.Left -> {
|
||||
onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.START
|
||||
)
|
||||
}
|
||||
is StylingEvent.Alignment.Center -> {
|
||||
onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.CENTER
|
||||
)
|
||||
}
|
||||
is StylingEvent.Alignment.Right -> {
|
||||
onBlockAlignmentActionClicked(
|
||||
alignment = Alignment.END
|
||||
)
|
||||
}
|
||||
is StylingEvent.Sliding.Color -> {
|
||||
onStyleColorSlideClicked()
|
||||
}
|
||||
is StylingEvent.Sliding.Background -> {
|
||||
onStyleBackgroundSlideClicked()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun onMarkupTextColorAction(color: String) {
|
||||
Timber.d("STATE : ${controlPanelViewState.value}")
|
||||
|
||||
controlPanelInteractor.onEvent(
|
||||
ControlPanelMachine.Event.OnMarkupTextColorSelected
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue