pass target to toggle
This commit is contained in:
parent
8bfac0f6ff
commit
f315c8b134
|
@ -61,7 +61,7 @@ export default new class EmoteModule extends BuiltinModule {
|
|||
text: 'Favourite',
|
||||
type: 'toggle',
|
||||
checked: false,
|
||||
onChange: e => e
|
||||
onChange: (checked, target) => { console.log(target); return checked; }
|
||||
}
|
||||
], filter => filter.closest('.bd-emote'));
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<div class="bd-cmGroup" ref="test">
|
||||
<template v-for="(item, index) in items">
|
||||
<CMButton v-if="!item.type || item.type === 'button'" :item="item" :onClick="() => { item.onClick(); closeMenu(); }" />
|
||||
<CMToggle v-else-if="item.type === 'toggle'" :item="item" :onClick="() => { item.checked = item.onChange(!item.checked) }" />
|
||||
<CMToggle v-else-if="item.type === 'toggle'" :item="item" :onClick="() => { item.checked = item.onChange(!item.checked, target) }"/>
|
||||
<div v-else-if="item.type === 'sub'" class="bd-cmItem bd-cmSub" @mouseenter="e => subMenuMouseEnter(e, index, item)" @mouseleave="e => subMenuMouseLeave(e, index, item)">
|
||||
{{item.text}}
|
||||
<MiChevronDown />
|
||||
|
@ -40,7 +40,7 @@
|
|||
subStyle: {}
|
||||
}
|
||||
},
|
||||
props: ['items', 'closeMenu', 'left', 'top'],
|
||||
props: ['items', 'closeMenu', 'left', 'top', 'target'],
|
||||
components: { CMButton, CMToggle, MiChevronDown },
|
||||
methods: {
|
||||
subMenuMouseEnter(e, index, sub) {
|
||||
|
|
|
@ -73,6 +73,7 @@ export class DiscordContextMenu {
|
|||
if (!(retVal.props.children instanceof Array)) retVal.props.children = [retVal.props.children];
|
||||
for (const menu of this.menus.filter(menu => { if (!menu.filter) return true; return menu.filter(target)})) {
|
||||
retVal.props.children.push(VueInjector.createReactElement(CMGroup, {
|
||||
target,
|
||||
top,
|
||||
left,
|
||||
closeMenu: () => WebpackModules.getModuleByProps(['closeContextMenu']).closeContextMenu(),
|
||||
|
|
Loading…
Reference in New Issue