Skip to content

Commit

Permalink
fix "view as scrollable element" not working
Browse files Browse the repository at this point in the history
The issue was due to cell output metadata being set to `undefined` by the Positron notebook controllers, causing the `scrollable` metadata to not be set here: https://github.com/posit-dev/positron/blob/54d791da6b5e015ff03a596a848c8893cf90d3bd/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.ts#L766.
  • Loading branch information
seeM committed Dec 10, 2024
1 parent 54d791d commit 3a8978a
Showing 1 changed file with 18 additions and 3 deletions.
21 changes: 18 additions & 3 deletions extensions/positron-notebook-controllers/src/notebookController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,21 @@ import { JUPYTER_NOTEBOOK_TYPE } from './constants';
import { log } from './extension';
import { ResourceMap } from './map';

/** The type of a Jupyter notebook cell output. */
/**
* The type of a Jupyter notebook cell output.
*
* Used by the ipynb notebook serializer (extensions/ipynb/src/serializers.ts) to convert from
* VSCode notebook cell outputs to Jupyter notebook cell outputs.
*
* See: https://jupyter-client.readthedocs.io/en/latest/messaging.html
*/
enum NotebookCellOutputType {
/** An error occurred during an execution. */
Error = 'error',

/** Output from one of the standard streams (stdout or stderr). */
Stream = 'stream',

/** One of possibly many outputs related to an execution. */
DisplayData = 'display_data',

Expand Down Expand Up @@ -584,7 +597,9 @@ async function handleRuntimeMessageStream(
if (lastOutputItems && lastOutputItems.every(item => item.mime === cellOutputItem.mime)) {
await execution.appendOutputItems([cellOutputItem], lastOutput);
} else {
const cellOutput = new vscode.NotebookCellOutput([cellOutputItem]);
const cellOutput = new vscode.NotebookCellOutput(
[cellOutputItem], { outputType: NotebookCellOutputType.Stream },
);
await execution.appendOutput(cellOutput);
}
}
Expand All @@ -605,6 +620,6 @@ async function handleRuntimeMessageError(
message: message.message,
stack: message.traceback.join('\n'),
})
]);
], { outputType: NotebookCellOutputType.Error });
await execution.appendOutput(cellOutput);
}

0 comments on commit 3a8978a

Please sign in to comment.