`onOpenChangeComplete` is not called when opening a `Dropdown.Root`
triage
### Describe the bug
With this snippet:
```svelte
<DropdownMenu.Root
onOpenChange={() => { /* called on open started/close started */ }}
onOpenChangeComplete={() => { /* only called on close ended, not open ended */ }}
>
```
The `onOpenChangeComplete` callback is not called when the dropdown menu is (fully) opened, despite its name and what the docs say. On the other hand, `onOpenChange` is correctly called both at opening and closing.
### Reproduction
````svelte
<script lang="ts">
import { DropdownMenu } from "bits-ui";
</script>
<DropdownMenu.Root
onOpenChange={open => console.log("starting, opening?", open)}
onOpenChangeComplete={opened => /* no called on open */ console.log("complete, opened?", opened)}
>
<DropdownMenu.Trigger>Trigger</DropdownMenu.Trigger>
<DropdownMenu.Content>Whatever</DropdownMenu.Content>
</DropdownMenu.Root>
````
### Logs
Browser console when clicking the button twice:
```
starting, opening? true
starting, opening? false
complete, opened? false
```
### System Info
```bash
System:
OS: macOS 26.4.1
CPU: (10) arm64 Apple M1 Pro
Memory: 341.00 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 25.9.0 - /opt/homebrew/bin/node
npm: 11.14.0 - /opt/homebrew/bin/npm
pnpm: 10.33.2 - /opt/homebrew/bin/pnpm
bun: 1.3.13 - /Users/antoine/.bun/bin/bun
Deno: 2.7.14 - /opt/homebrew/bin/deno
Browsers:
Chrome: 147.0.7727.138
Firefox: 149.0.2
Safari: 26.4
Safari Technology Preview: 26.0
npmPackages:
@sveltejs/kit: ^2.59.0 => 2.59.0
runed: ^0.37.1 => 0.37.1
svelte: ^5.55.5 => 5.55.5
```
### Severity
annoyance
2 条评论