@@ -1931,13 +1931,13 @@ declare module 'claude-code' {
19311931 * on `ui.open` may refuse it. The keyboard is the person's; unasked, it
19321932 * waits undrawn below 144 columns (110 once asked), judged at each open.
19331933 *
1934- * @param pane `id` (1-64 of letters, digits, `_`, `-`), `title`, `focus`;
1935- * `closeOnEscape` and `holdToasts` make it a dialog (Escape closes it)
1934+ * @param pane `id` (1-64 of letters, digits, `_`, `-`), `title`, `focus`,
1935+ * `closeOnEscape` and `holdToasts` ( a dialog), `rows` it wants inline
19361936 * @returns settles once the pane is open (or retitled)
19371937 * @example
19381938 * await $.ui.open({ id: "clock", title: "Clock" })
19391939 * @example
1940- * await $.ui.open({ id: "pick ", focus: true, closeOnEscape: true })
1940+ * await $.ui.open({ id: "ask ", focus: true, closeOnEscape: true, rows: 9 })
19411941 */
19421942 open : ( pane : PaneOpenArgs ) => Promise < void > ;
19431943 /**
@@ -4820,8 +4820,8 @@ declare module 'claude-code' {
48204820 } ;
48214821
48224822 /**
4823- * The argument of `$.ui.open`: which pane, its title, whether the plugin asks
4824- * the person's keyboard for it , and its dialog manners (Escape, toasts) .
4823+ * The argument of `$.ui.open`: which pane, its title, whether it asks the
4824+ * person's keyboard, its dialog manners , and the rows it wants inline .
48254825 */
48264826 export type PaneOpenArgs = {
48274827 /**
@@ -4862,6 +4862,15 @@ declare module 'claude-code' {
48624862 * show. Left out, toasts show as they come. Each open sets it anew.
48634863 */
48644864 holdToasts ?: true ;
4865+ /**
4866+ * The body rows the pane's content wants while seated inline above the
4867+ * prompt: it opens that tall, up to what the layout spares, not a third.
4868+ *
4869+ * A request, not a grant: a size the person dragged or keyed the block
4870+ * to wins, this session's or a kept one, and the dock ignores it. A
4871+ * positive whole number; left out, a third. Each open sets it anew.
4872+ */
4873+ rows ?: number ;
48654874 } ;
48664875
48674876 /**
@@ -8853,8 +8862,8 @@ declare module 'claude-code' {
88538862 * hook drew in it (a pane's body, the band above the prompt).
88548863 *
88558864 * Every key but `offset` is the engine's word, pinned: `next(e)` passes
8856- * them on, a rewrite that leaves one out keeps it, one that changes it fails
8857- * the hook. `offset` is the hook's to rewrite; the window has not moved yet.
8865+ * them on, a rewrite that leaves one out keeps it, one that changes or adds
8866+ * one fails the hook. `offset` is the hook's to rewrite; nothing moved yet.
88588867 */
88598868 export type UiScrollInput = {
88608869 /**
@@ -8897,6 +8906,15 @@ declare module 'claude-code' {
88978906 * Who moves it (UiScrollOrigin), set by the engine where the move starts.
88988907 */
88998908 origin : UiScrollOrigin ;
8909+ /**
8910+ * The body cell the person's wheel or trackpad was over (UiScrollPointer);
8911+ * absent for the scroll keys and for `$.ui.scroll`. Read-only.
8912+ *
8913+ * Moves summed while a dispatch was in flight carry the latest one's. A
8914+ * hook pinning a list over rows it scrolls itself tells a tick over the
8915+ * list (`row` among its list's rows) from one over the body.
8916+ */
8917+ pointer ?: UiScrollPointer ;
89008918 } ;
89018919
89028920 /**
@@ -8922,6 +8940,30 @@ declare module 'claude-code' {
89228940 name : string ;
89238941 } ;
89248942
8943+ /**
8944+ * The cell the pointer was over when the person's wheel raised `ui.scroll`,
8945+ * in the site's body: the box its `ui.render` hook draws into, as painted.
8946+ *
8947+ * The DOM's `clientY - body.top` in cells, the window's offset not added: a
8948+ * hook drawing its own window reads `row` as its tree's row, one the engine
8949+ * scrolls adds the `scroll.offset` it drew with. The frame lies outside.
8950+ */
8951+ export type UiScrollPointer = {
8952+ /**
8953+ * 0 at the body's left edge, as `bodyColumns` counts them; negative, or
8954+ * `bodyColumns` and past, over an inline pane's side borders.
8955+ */
8956+ column : number ;
8957+ /**
8958+ * 0 at the body's first showing row, as `bodyRows` counts them.
8959+ *
8960+ * The tree's row is `scroll.offset + row` under the engine's window, and
8961+ * `row` itself under a hook's own (offset 0); negative over a pane's top
8962+ * border or tab row, `bodyRows` or more over its bottom border.
8963+ */
8964+ row : number ;
8965+ } ;
8966+
89258967 /**
89268968 * What a `ui.scroll` hook returns, what `next(e)` resolves to, and what
89278969 * `$.ui.scroll` hands back: `{}` once the window moved, or why it did not.
0 commit comments