From eabacae0c03d9be78de9646ece034fe4cd93b5fe Mon Sep 17 00:00:00 2001 From: v-bbrady <60623315+v-bbrady@users.noreply.github.com> Date: Mon, 6 Jul 2020 14:01:08 -0700 Subject: [PATCH] fixes show all extensions button #10445 #10625 (#11104) * fixes button alignment and missing icons issues with ads welcome page * removes dead code, registers new Button * creates one button component and adds proper attributes depending on platform * Add CodeQL Analysis workflow (#10195) * Add CodeQL Analysis workflow * Fix path * adds return types to functions * fixes show all extensions command * formats css * fixes layering issue * updates querySelectors to be more specific Co-authored-by: Justin Hutchings --- .../welcome/media/icon_postgre_sql.png | Bin 0 -> 10833 bytes .../contrib/welcome/media/icon_powershell.png | Bin 0 -> 9972 bytes .../page/browser/az_data_welcome_page.ts | 30 +-- .../welcome/page/browser/welcomePage.css | 83 +++----- .../welcome/page/browser/welcomePage.ts | 199 +++++++++++++----- 5 files changed, 184 insertions(+), 128 deletions(-) create mode 100644 src/sql/workbench/contrib/welcome/media/icon_postgre_sql.png create mode 100644 src/sql/workbench/contrib/welcome/media/icon_powershell.png diff --git a/src/sql/workbench/contrib/welcome/media/icon_postgre_sql.png b/src/sql/workbench/contrib/welcome/media/icon_postgre_sql.png new file mode 100644 index 0000000000000000000000000000000000000000..4de7187cb138b053af9281d40c1c851c1dee3a7c GIT binary patch literal 10833 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 literal 0 HcmV?d00001 diff --git a/src/sql/workbench/contrib/welcome/media/icon_powershell.png b/src/sql/workbench/contrib/welcome/media/icon_powershell.png new file mode 100644 index 0000000000000000000000000000000000000000..76dc30059ba42cd1579463dd5ac0a7fc07e96c72 GIT binary patch literal 9972 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 `
-
+ @@ -158,8 +141,6 @@ export default () => `

${escape(localize('welcomePage.documentationBody', "Visit the documentation center for quickstarts, how-to guides, and references for PowerShell, APIs, etc."))}

- -

Videos

@@ -169,7 +150,6 @@ export default () => `

${escape(localize('welcomePage.videoDescriptionOverview', "Overview of Azure Data Studio"))}

-
@@ -186,7 +166,7 @@ export default () => `
this.dispose())); const recentlyOpened = this.workspacesService.getRecentlyOpened(); @@ -317,7 +319,7 @@ class WelcomePage extends Disposable { while (ul.firstChild) { ul.removeChild(ul.firstChild); } - await this.mapListEntries(workspacesToShow, fileService); + await this.mapListEntries(workspacesToShow, fileService, container); }; await updateEntries(); this._register(this.labelService.onDidChangeFormatters(updateEntries)); @@ -334,11 +336,76 @@ class WelcomePage extends Disposable { } } })); + this.createButtons(); this.createDropDown(); this.createWidePreviewToolTip(); this.createPreviewModal(); } + private createButtons(): void { + const container = document.querySelector('.ads-homepage .hero'); + const dropdownButtonContainer = document.querySelector('#dropdown-btn-container') as HTMLElement; + const dropdownUl = document.createElement('ul'); + const i = document.createElement('div'); + const nav = document.createElement('nav'); + const newText = localize('welcomePage.new', "New"); + let dropdownBtn = this._register(new Button(dropdownButtonContainer)); + dropdownBtn.label = newText; + + const iconClassList = ['twisties', 'codicon', 'codicon-chevron-right']; + + i.classList.add(...iconClassList); + const openFileCopy = localize('welcomePage.openFile', "Open file"); + dropdownUl.classList.add('dropdown-content'); + dropdownUl.setAttribute('aria-hidden', 'true'); + dropdownUl.setAttribute('aria-label', 'submenu'); + dropdownUl.setAttribute('role', 'menu'); + dropdownUl.setAttribute('aria-labelledby', 'dropdown-btn'); + dropdownUl.id = 'dropdown'; + dropdownUl.innerHTML = + `
  • ${(localize('welcomePage.newConnection', "New connection"))}
  • +
  • ${(localize('welcomePage.newQuery', "New query"))}
  • +
  • ${(localize('welcomePage.newNotebook', "New notebook"))}
  • +
  • ${(localize('welcomePage.deployServer', "Deploy a Server"))}
  • + +