Prevent hiding handles by clicking on handles

This commit is contained in:
Henrik Giesel 2021-09-15 17:56:56 +02:00
parent 9001b597da
commit 97647e7b24
3 changed files with 17 additions and 9 deletions

View file

@ -19,14 +19,20 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
<ButtonToolbar <ButtonToolbar
{id} {id}
class={`dropdown-menu btn-dropdown-menu ${className}`} class="dropdown-menu btn-dropdown-menu {className}"
wrap={false} wrap={false}
{api} {api}
> >
<div on:mousedown|preventDefault|stopPropagation>
<slot /> <slot />
</div>
</ButtonToolbar> </ButtonToolbar>
<style lang="scss"> <style lang="scss">
div {
display: contents;
}
:global(.dropdown-menu.btn-dropdown-menu) { :global(.dropdown-menu.btn-dropdown-menu) {
display: none; display: none;
min-width: 0; min-width: 0;

View file

@ -16,7 +16,13 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
setContext(dropdownKey, null); setContext(dropdownKey, null);
</script> </script>
<div {id} class="dropdown-menu" class:show aria-labelledby={labelledby}> <div
{id}
class="dropdown-menu"
class:show
aria-labelledby={labelledby}
on:mousedown|preventDefault|stopPropagation
>
<div class="dropdown-content {className}"> <div class="dropdown-content {className}">
<slot /> <slot />
</div> </div>

View file

@ -41,23 +41,19 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
}); });
</script> </script>
<!-- <textarea bind:value use:openCodemirror /> -->
<div <div
on:click|stopPropagation on:click|stopPropagation
on:focus|stopPropagation on:focus|stopPropagation
on:keydown|stopPropagation on:keydown|stopPropagation
on:focusin|stopPropagation
on:keyup|stopPropagation on:keyup|stopPropagation
on:focusin|stopPropagation
on:mousedown|preventDefault|stopPropagation
on:mouseup|stopPropagation on:mouseup|stopPropagation
> >
<!-- TODO no focusin for now, as EditingArea will defer to Editable/Codable --> <!-- TODO no focusin for now, as EditingArea will defer to Editable/Codable -->
<textarea <textarea
bind:this={textarea} bind:this={textarea}
value={initialValue} value={initialValue}
on:mouseup|preventDefault|stopPropagation
on:keyup|stopPropagation
on:click|stopPropagation
on:focusin|stopPropagation
on:input={onInput} on:input={onInput}
use:openCodemirror use:openCodemirror
/> />