Skip to content

Commit

Permalink
vscode: create theia-extra.d.ts
Browse files Browse the repository at this point in the history
The commit creates the `theia-extra.d.ts` file to contain plugin APIs the framework supports on top of
the VS Code API. The changes better organize APIs that are not part of the base VS Code API support, and
ensure that the comparator passes as well.

Signed-off-by: vince-fugnitto <[email protected]>
  • Loading branch information
vince-fugnitto committed Sep 30, 2022
1 parent af3748e commit 978a3a0
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 12 deletions.
36 changes: 36 additions & 0 deletions packages/plugin/src/theia-extra.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
// *****************************************************************************
// Copyright (C) 2022 Ericsson and others.
//
// This program and the accompanying materials are made available under the
// terms of the Eclipse Public License v. 2.0 which is available at
// http://www.eclipse.org/legal/epl-2.0.
//
// This Source Code may also be made available under the following Secondary
// Licenses when the conditions for such availability set forth in the Eclipse
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
// with the GNU Classpath Exception which is available at
// https://www.gnu.org/software/classpath/license.html.
//
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
// *****************************************************************************

/**
* This is the place for extra APIs Theia supports compared to VS Code.
*/
export module '@theia/plugin' {

export interface WebviewPanel {
/**
* Show the webview panel according to a given options.
*
* A webview panel may only show in a single column at a time. If it is already showing, this
* method moves it to a new column.
*
* @param area target area where webview panel will be resided. Shows in the 'WebviewPanelTargetArea.Main' area if undefined.
* @param viewColumn View column to show the panel in. Shows in the current `viewColumn` if undefined.
* @param preserveFocus When `true`, the webview will not take focus.
*/
reveal(area?: WebviewPanelTargetArea, viewColumn?: ViewColumn, preserveFocus?: boolean): void;
}

}
13 changes: 1 addition & 12 deletions packages/plugin/src/theia.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import './theia-extra';
import './theia-proposed';

/* eslint-disable @typescript-eslint/no-explicit-any */
Expand Down Expand Up @@ -3946,18 +3947,6 @@ export module '@theia/plugin' {
*/
reveal(viewColumn?: ViewColumn, preserveFocus?: boolean): void;

/**
* Show the webview panel according to a given options.
*
* A webview panel may only show in a single column at a time. If it is already showing, this
* method moves it to a new column.
*
* @param area target area where webview panel will be resided. Shows in the 'WebviewPanelTargetArea.Main' area if undefined.
* @param viewColumn View column to show the panel in. Shows in the current `viewColumn` if undefined.
* @param preserveFocus When `true`, the webview will not take focus.
*/
reveal(area?: WebviewPanelTargetArea, viewColumn?: ViewColumn, preserveFocus?: boolean): void;

/**
* Dispose of the webview panel.
*
Expand Down

0 comments on commit 978a3a0

Please sign in to comment.