From 2c2911b1e1df6544d322f12498d6696a0fa7dbd8 Mon Sep 17 00:00:00 2001 From: DavidKutu Date: Fri, 17 Jul 2020 14:41:01 -0700 Subject: [PATCH] remove release notes from the start page --- StartPageReleaseNotes.md | 3 --- package.nls.json | 2 +- src/client/common/startPage/startPage.ts | 12 ++--------- src/client/common/startPage/types.ts | 11 +++++------ src/client/common/utils/localize.ts | 2 +- src/datascience-ui/startPage/startPage.css | 6 ++++++ src/datascience-ui/startPage/startPage.tsx | 23 ++++++---------------- 7 files changed, 21 insertions(+), 38 deletions(-) delete mode 100644 StartPageReleaseNotes.md diff --git a/StartPageReleaseNotes.md b/StartPageReleaseNotes.md deleted file mode 100644 index 5fb96d33988a..000000000000 --- a/StartPageReleaseNotes.md +++ /dev/null @@ -1,3 +0,0 @@ -Added a start page for the extension. Launched in experimental mode such that it opens to new users or when there is a new release. It can be disabled with the setting 'Python: Show Start Page' and it can be opened at any time with the command 'Python: Open Start Page'. -Removed `python.jediEnabled` setting in favor of `python.languageServer`. Instead of `"python.jediEnabled": true` please use `"python.languageServer": "Jedi"`. -Made the variable explorer in the Notebook editor resizable. diff --git a/package.nls.json b/package.nls.json index 2c7b4c709c71..7a1428eeab9b 100644 --- a/package.nls.json +++ b/package.nls.json @@ -528,7 +528,7 @@ "StartPage.pythonFileDescription": "- Create a
new file
with a .py extension", "StartPage.openInteractiveWindow": "Use the Interactive Window to develop Python Scripts", "StartPage.interactiveWindowDesc": "- You can create cells on a Python file by typing \"#%%\"
- Use \"
Shift + Enter
\" to run a cell, the output will be shown in the interactive window", - "StartPage.releaseNotes": "Take a look at our Release Notes to learn more about the latest features", + "StartPage.releaseNotes": "Take a look at our Release Notes to learn more about the latest features.", "StartPage.tutorialAndDoc": "Explore more features in our Tutorials or check Documentation for tips and troubleshooting.", "StartPage.dontShowAgain": "Don't show this page again", "StartPage.helloWorld": "Hello world", diff --git a/src/client/common/startPage/startPage.ts b/src/client/common/startPage/startPage.ts index 6ebb7fe62165..8a6ad587ed4b 100644 --- a/src/client/common/startPage/startPage.ts +++ b/src/client/common/startPage/startPage.ts @@ -120,11 +120,9 @@ export class StartPage extends WebViewHost implements IStartP case StartPageMessages.Started: this.webviewDidLoad = true; break; - case StartPageMessages.RequestReleaseNotesAndShowAgainSetting: + case StartPageMessages.RequestShowAgainSetting: const settings = this.configuration.getSettings(); - const filteredNotes = await this.handleReleaseNotesRequest(); - await this.postMessage(StartPageMessages.SendReleaseNotes, { - notes: filteredNotes, + await this.postMessage(StartPageMessages.SendSetting, { showAgainSetting: settings.showStartPage }); break; @@ -245,12 +243,6 @@ export class StartPage extends WebViewHost implements IStartP return shouldShowStartPage; } - // This gets the release notes from StartPageReleaseNotes.md - private async handleReleaseNotesRequest(): Promise { - const releaseNotes = await this.file.readFile(path.join(EXTENSION_ROOT_DIR, 'StartPageReleaseNotes.md')); - return releaseNotes.splitLines(); - } - private async activateBackground(): Promise { const enabled = await this.expService.inExperiment(EnableStartPage.experiment); const settings = this.configuration.getSettings(); diff --git a/src/client/common/startPage/types.ts b/src/client/common/startPage/types.ts index 0e724d7bff2d..a147085fe426 100644 --- a/src/client/common/startPage/types.ts +++ b/src/client/common/startPage/types.ts @@ -8,16 +8,15 @@ export interface IStartPage { extensionVersionChanged(): Promise; } -export interface IReleaseNotesPackage { - notes: string[]; +export interface ISettingPackage { showAgainSetting: boolean; } export namespace StartPageMessages { export const Started = SharedMessages.Started; export const UpdateSettings = SharedMessages.UpdateSettings; - export const RequestReleaseNotesAndShowAgainSetting = 'RequestReleaseNotesAndShowAgainSetting'; - export const SendReleaseNotes = 'SendReleaseNotes'; + export const RequestShowAgainSetting = 'RequestShowAgainSetting'; + export const SendSetting = 'SendSetting'; export const OpenBlankNotebook = 'OpenBlankNotebook'; export const OpenBlankPythonFile = 'OpenBlankPythonFile'; export const OpenInteractiveWindow = 'OpenInteractiveWindow'; @@ -30,8 +29,8 @@ export namespace StartPageMessages { } export class IStartPageMapping { - public [StartPageMessages.RequestReleaseNotesAndShowAgainSetting]: IReleaseNotesPackage; - public [StartPageMessages.SendReleaseNotes]: IReleaseNotesPackage; + public [StartPageMessages.RequestShowAgainSetting]: ISettingPackage; + public [StartPageMessages.SendSetting]: ISettingPackage; public [StartPageMessages.Started]: never | undefined; public [StartPageMessages.UpdateSettings]: boolean; public [StartPageMessages.OpenBlankNotebook]: never | undefined; diff --git a/src/client/common/utils/localize.ts b/src/client/common/utils/localize.ts index e5ae37dce774..27642897ae80 100644 --- a/src/client/common/utils/localize.ts +++ b/src/client/common/utils/localize.ts @@ -1062,7 +1062,7 @@ export namespace StartPage { export const releaseNotes = localize( 'StartPage.releaseNotes', - 'Take a look at our Release Notes to learn more about the latest features' + 'Take a look at our Release Notes to learn more about the latest features.' ); export const tutorialAndDoc = localize( 'StartPage.tutorialAndDoc', diff --git a/src/datascience-ui/startPage/startPage.css b/src/datascience-ui/startPage/startPage.css index de64fbe8538a..035610dcebf8 100644 --- a/src/datascience-ui/startPage/startPage.css +++ b/src/datascience-ui/startPage/startPage.css @@ -53,6 +53,12 @@ white-space: nowrap; } +.releaseNotesRow { + display: block; + min-height: 50px; + white-space: nowrap; +} + .link { display: inline; color: var(--vscode-debugIcon-continueForeground); diff --git a/src/datascience-ui/startPage/startPage.tsx b/src/datascience-ui/startPage/startPage.tsx index 84f1ad076062..3794c22919fe 100644 --- a/src/datascience-ui/startPage/startPage.tsx +++ b/src/datascience-ui/startPage/startPage.tsx @@ -4,7 +4,7 @@ import * as React from 'react'; import '../../client/common/extensions'; -import { IReleaseNotesPackage, IStartPageMapping, StartPageMessages } from '../../client/common/startPage/types'; +import { ISettingPackage, IStartPageMapping, StartPageMessages } from '../../client/common/startPage/types'; import { Image, ImageName } from '../react-common/image'; import { getLocString } from '../react-common/locReactSide'; import { IMessageHandler, PostOffice } from '../react-common/postOffice'; @@ -19,8 +19,7 @@ export interface IStartPageProps { // Front end of the Python extension start page. // In general it consists of its render method and methods that send and receive messages. export class StartPage extends React.Component implements IMessageHandler { - private releaseNotes: IReleaseNotesPackage = { - notes: [], + private releaseNotes: ISettingPackage = { showAgainSetting: false }; private postOffice: PostOffice = new PostOffice(); @@ -30,7 +29,7 @@ export class StartPage extends React.Component implements IMess } public componentDidMount() { - this.postOffice.sendMessage(StartPageMessages.RequestReleaseNotesAndShowAgainSetting); + this.postOffice.sendMessage(StartPageMessages.RequestShowAgainSetting); } // tslint:disable: no-any @@ -129,9 +128,8 @@ export class StartPage extends React.Component implements IMess {this.renderInteractiveWindowDescription()} -
+
{this.renderReleaseNotesLink()} - {this.renderReleaseNotes()} {this.renderTutorialAndDoc()}
@@ -151,8 +149,7 @@ export class StartPage extends React.Component implements IMess // tslint:disable-next-line: no-any public handleMessage = (msg: string, payload?: any) => { - if (msg === StartPageMessages.SendReleaseNotes) { - this.releaseNotes.notes = payload.notes; + if (msg === StartPageMessages.SendSetting) { this.releaseNotes.showAgainSetting = payload.showAgainSetting; this.setState({}); } @@ -240,21 +237,13 @@ export class StartPage extends React.Component implements IMess dangerouslySetInnerHTML={{ __html: getLocString( 'StartPage.releaseNotes', - 'Take a look at our Release Notes to learn more about the latest features' + 'Take a look at our Release Notes to learn more about the latest features.' ).format('https://aka.ms/AA8dxtb') }} /> ); } - private renderReleaseNotes(): JSX.Element { - const notes: JSX.Element[] = []; - this.releaseNotes.notes.forEach((rel, index) => { - notes.push(
  • {rel}
  • ); - }); - return
      {notes}
    ; - } - private renderTutorialAndDoc(): JSX.Element { // tslint:disable: react-no-dangerous-html return (