Extending into title bar blocks ImGUI interaction

Hey, good evening.

I’m on 7.1-70.

When using ImGUI.Skia, if you enable Extend Into Title Bar and have some widgets there, they won’t receive mouse clicks. See the following repro video :

You can paste the following XML into an empty patch to get the same setup:

Snippet
<?xml version="1.0" encoding="utf-16"?>
<Patch xmlns:p="property" xmlns:r="reflection" Id="LSQG16qrCcqOmkXcyg7Kpt" MergeId="5">
  <Canvas Id="SAeCh5KZOhaLd7l6o8rGO7" MergeId="4" CanvasType="Group">
    <Node Bounds="329,339,126,92" Id="SxlbrwcmMiRLcTEebyi80w">
      <p:NodeReference LastCategoryFullName="Graphics.Skia.Layer" LastDependency="VL.ImGui.Skia.vl">
        <Choice Kind="StatefulRegion" Name="Region (Stateful)" Fixed="true" />
        <Choice Kind="ProcessAppFlag" Name="ImGui" />
      </p:NodeReference>
      <Pin Id="LUZl7Nb17j0PbfEh1g1mRK" Name="Node Context" Kind="InputPin" IsHidden="true" />
      <Pin Id="DYigZOACgu5LvdDB7hVgdQ" Name="Docking Enabled" Kind="InputPin" />
      <Pin Id="VGkhE4sUlpkN7VMgVxZWoj" Name="Fonts" Kind="InputPin" />
      <Pin Id="R7l0xZ9CwwIOuYCwpU2NFg" Name="Add Fullscreen Window" Kind="InputPin" />
      <Pin Id="AT6CKYjPrSONNn9IRhrfzI" Name="Style" Kind="InputPin" />
      <Pin Id="RZFcB2OABxAPfA3yi7ezDY" Name="Use Skia Space" Kind="InputPin" />
      <Pin Id="Q8Ffgne0jLtNVedQPo8wCH" Name="Output" Kind="OutputPin" />
      <Patch Id="EObTvC9EUFUOee2Oy7foBw" ManuallySortedPins="true">
        <Patch Id="DUL5B41oDvELKhzBA0zcoh" Name="Create" ManuallySortedPins="true" />
        <Patch Id="GKLaCs4PYotLlvi2Fr3l6I" Name="Update" ManuallySortedPins="true" />
        <Patch Id="FMM2lj23Q3qQG84NnZJwUA" Name="Dispose" ManuallySortedPins="true" />
        <Node Bounds="358,371,85,19" Id="C7lq3xJ0sAPNZFS97xLhEl">
          <p:NodeReference LastCategoryFullName="ImGui.Widgets" LastDependency="VL.ImGui.vl">
            <Choice Kind="NodeFlag" Name="Node" Fixed="true" />
            <CategoryReference Kind="Category" Name="Widgets" NeedsToBeDirectParent="true" />
            <Choice Kind="ProcessNode" Name="Button" />
          </p:NodeReference>
          <Pin Id="NuefWbPjZzYLrcXLtfDFa3" Name="Context" Kind="InputPin" />
          <Pin Id="GRgs8GRCzmMP3yL1oUxenI" Name="Channel" Kind="InputPin" />
          <Pin Id="DfsCwvo44W3Mv3S0eJJDrd" Name="Label" Kind="InputPin" DefaultValue="Click me" />
          <Pin Id="MrHNftx69SZLIk8TSz863e" Name="Size" Kind="InputPin" />
          <Pin Id="PM4IYdpjKJdM8TyODKb71U" Name="Style" Kind="InputPin" />
          <Pin Id="BgXBvr8Mb0FOoCTUeRkYny" Name="Context" Kind="OutputPin" />
          <Pin Id="VQ1WYzNCvZeNJMON6muf8m" Name="Bang" Kind="OutputPin" />
        </Node>
      </Patch>
    </Node>
    <Node Bounds="329,470,145,19" Id="FeyYXaCmRS1OrHQLrUqeyg">
      <p:NodeReference LastCategoryFullName="Graphics.Skia" LastDependency="VL.Skia.vl">
        <Choice Kind="NodeFlag" Name="Node" Fixed="true" />
        <Choice Kind="ProcessAppFlag" Name="Renderer" />
      </p:NodeReference>
      <Pin Id="HIsUOXlJYyrOBAqX6sdbxI" Name="Node Context" Kind="InputPin" IsHidden="true" />
      <Pin Id="EQd3L3WpLbTPLR4of9jTQt" Name="Bounds" Kind="InputPin" DefaultValue="1454, 453, 322, 193" IsHidden="true" />
      <Pin Id="G9F9ZYfLd7yQWxXQEBGlNo" Name="Save Bounds" Kind="InputPin" IsHidden="true" />
      <Pin Id="V6gt0aP2vhQQbpgQ4gs6pK" Name="Bound to Document" Kind="InputPin" IsHidden="true" />
      <Pin Id="LBnjG5FGtCdNlxzIYW7d5H" Name="Dialog If Document Changed" Kind="InputPin" IsHidden="true" />
      <Pin Id="QIDz08Vr4vIQdEB8px8EtX" Name="Always On Top" Kind="InputPin" IsHidden="true" />
      <Pin Id="FbeMUfR9YO2LSdohCRU9Mb" Name="Extend Into Title Bar" Kind="InputPin" DefaultValue="True" IsHidden="true" />
      <Pin Id="FcTIlC0cl7PPo83mpfYoCb" Name="Input" Kind="InputPin" />
      <Pin Id="OD1dSytIdSlMe7ScFk0TlZ" Name="Title" Kind="InputPin" />
      <Pin Id="CSfZimPSYmVPLMmxakLTwl" Name="Color" Kind="InputPin" />
      <Pin Id="KDR0zGDyyosN6Dn7EMZcBR" Name="Clear" Kind="InputPin" />
      <Pin Id="BTGJ24oJzJRPc7e3gVRmjg" Name="Space" Kind="InputPin" />
      <Pin Id="CNJizd5bO6zNX1lJm1HuMO" Name="Show Cursor" Kind="InputPin" />
      <Pin Id="SYU7LaXUVElQV75RIrvqVd" Name="VSync" Kind="InputPin" />
      <Pin Id="MiVO8G2o452L2kQAWVlXvL" Name="Commands" Kind="InputPin" IsHidden="true" />
      <Pin Id="DC2STYRgvoGLDU8HEQhSEo" Name="Enable Keyboard Shortcuts" Kind="InputPin" IsHidden="true" />
      <Pin Id="TZ7jeOqbvviLV9EBJ7InFt" Name="Enabled" Kind="InputPin" />
      <Pin Id="KwibaqrHCUtQKSK8ythYRL" Name="Form Bounds Notifications" Kind="OutputPin" IsHidden="true" />
      <Pin Id="FSDHTvfpWUUPFrZfU6cFYX" Name="Form" Kind="OutputPin" />
      <Pin Id="QXLYzkzUvwfMsEwqzlKBpU" Name="ClientBounds" Kind="OutputPin" />
      <Pin Id="HPVNwRCzjcOOk3Tnu8irBH" Name="Render Time" Kind="OutputPin" />
    </Node>
  </Canvas>
  <Link Id="TNTjq0149NlP2GXyTwr9Ah" Ids="Q8Ffgne0jLtNVedQPo8wCH,FcTIlC0cl7PPo83mpfYoCb" />
  <NugetDependency Id="CGLu9CMp7knNSAoCAWUhrg" Location="VL.ImGui" Version="2025.7.1-0070-g54e23a3bf8" />
  <NugetDependency Id="NwBWXgpbUKNPeghVLnmAnl" Location="VL.ImGui.Skia" Version="2025.7.1-0070-g54e23a3bf8" />
  <NugetDependency Id="HBoEayaOAcMNarn5VO6aHF" Location="VL.Skia" Version="2025.7.1-0070-g54e23a3bf8" />
</Patch>

Thanks!

seb

Good point, I guess we’ll need to add a pin for that, something like reserved area which gets excluded from titlebar interaction.

In upcoming you’ll find an optional pin on the render windows where you can set an interaction width (in DIP) which defines the area from the top-left of the window where mouse clicks will not be handled by the title bar but instead lead to regular mouse events.

3 Likes

Thanks for the prompt fix @Elias !