Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explore open/install an extension from the Market Place #10340

Closed
7 tasks done
joaomoreno opened this issue Aug 9, 2016 · 13 comments
Closed
7 tasks done

Explore open/install an extension from the Market Place #10340

joaomoreno opened this issue Aug 9, 2016 · 13 comments
Assignees
Labels
feature-request Request for new features or functionality verification-needed Verification of issue is requested verified Verification succeeded
Milestone

Comments

@joaomoreno
Copy link
Member

joaomoreno commented Aug 9, 2016

The idea here is to support URLs such as vscode:extension/${UUID}. These could make Code open that extension in its UI, allowing for a fast path towards extension installation from the Marketplace.

Code is in https://github.com/joaomoreno/vscode/tree/urlservice

  • Propagate Electron's app.on('open-url') to the last focused Window
  • Make Extension contribution listen on onOpenUrl events and open the extension UI
  • Figure out how to do the same when Code is not running 69e8c7a
  • Implement for Windows 8609a07
  • Talk to Marketplace guys about this, along with a demo @waderyan
  • Coordinate with @hamenon on the UI for the marketplace @waderyan
  • Create docs for figuring out your VS Code version @waderyan
@joaomoreno joaomoreno added feature-request Request for new features or functionality marketplace labels Aug 9, 2016
@joaomoreno joaomoreno added this to the August 2016 milestone Aug 9, 2016
@joaomoreno joaomoreno self-assigned this Aug 9, 2016
@egamma egamma changed the title Support open/install an extension from the Market Place Explore open/install an extension from the Market Place Aug 17, 2016
@joaomoreno
Copy link
Member Author

@hamenon says:

CC: @waderyan @joaomoreno @seanmcbreen

With the direct application URL handler changes coming in this next iteration we're working on changes to the Marketplace UX to allow direct installation of extension from Marketplace. We wanted to run a few options by you to get your thoughts as well, as there are a few factors to consider:

  • The VS Code insiders build has a separate application handler so needs to be handled separately
  • Older versions of the client won’t support the application handler hence copy command option still needs to be present

Following are two options we're considering:
Option 1:
vscode install1
Option 2:
vs code install2

Current preference is toward option 1, the reasoning being:

  • A majority of the users are generally on the latest build and hence that should be the most prominent CTA (Install button)
  • We can also take a call to remove the helper message once enough users have moved to the latest version.

@joaomoreno
Copy link
Member Author

How about something like this?

image

The main button would be the Install action. The dropdown would expose another option to install in the insiders build and the description to install with ext install.

@waderyan
Copy link

@joaomoreno yeah I like that.

  1. User clicks on the Install button
  2. User determines which VS Code version
  3. User clicks the appropriate version.

The second step (2 from above) does cause cognitive friction. How many users know what their version is? If we could do the above, but with something making it obvious that if you've updated recently use this one.

Here's a slight addition to @joaomoreno's.

image

The goal is to reduce the cognitive friction of having to find out your version. I think its obvious to us how to find the version, but it may or may not be to others.

ping @hamenon - see above.

@hamenon
Copy link

hamenon commented Aug 22, 2016

The issue I have is around discoverability. At least at launch majority of the users will be on the older version which supports only the copy based method. For those users the install button click which is the primary action based on the above design will fail, and they'll then have to click on the arrow portion to choose the appropriate version etc.

Also if the idea is to phase out the copy based option eventually wouldn't it make more sense to simplify and have both install options (latest and insiders) present directly as opposed to under a menu?

@waderyan
Copy link

@hamenon I think I'm seeing your point. In your mind:

  1. User sees the install button.
  2. User clicks install button (main action)
  3. Nothing happens for users on an older version.
  4. User comes back to the site and has to know to click the arrow portion of the button.

Is that correct?

@waderyan
Copy link

We might be in the weeds and losing marginal benefit.

I would be in favor of the option below, as long as we add something about finding the version of VS Code. It could be a link to VS Code's docs (we can make a short section on how to find your version). I'm concerned a non trivial number of users won't know what their version is.

image

@joaomoreno thoughts?

@hamenon
Copy link

hamenon commented Aug 23, 2016

@waderyan Yup, thats exactly it.

I see your point about users not knowing what version they are on. We can improve the message below the install to include something like a "Find out yours" link that points to documentation on finding out the VS Code version.

@joaomoreno
Copy link
Member Author

Sounds good to me!

@waderyan
Copy link

cc @seanmcbreen see above on design iterations.

@waderyan
Copy link

waderyan commented Sep 1, 2016

ping @hamenon

@joaomoreno a question came up during our call today. For earlier versions of VS code that do not have the URL handler what will happen if they click the install button? My assumption is nothing will happen because there is no URL handler (i.e. we won't show them a warning or anything).

Timing update from Marketplace

  • Looking at doing the work for this a week after August release.

joaomoreno added a commit that referenced this issue Sep 16, 2016
joaomoreno added a commit that referenced this issue Sep 28, 2016
@joaomoreno
Copy link
Member Author

Closing the exploration as it seems our work is done in macOS and Windows.

@joaomoreno joaomoreno added the verification-needed Verification of issue is requested label Sep 28, 2016
@kieferrm kieferrm added verified Verification succeeded and removed verified Verification succeeded labels Sep 28, 2016
@joaomoreno
Copy link
Member Author

joaomoreno commented Sep 29, 2016

Verification only in Windows and macOS. Format:

vscode:extension/vscodevim.vim
vscode-insiders:extension/vscodevim.vim

@chrmarti chrmarti added the verified Verification succeeded label Sep 29, 2016
@chrmarti
Copy link
Collaborator

OSX: Verified vscode-insiders: with Safari, Chrome, Firefox
Windows: Verified with Edge, Chrome, Firefox

On Windows, if VSCode is already running, its window does not get to the top. The user might not notice anything has happened at all.

Removing the verified label again so we can confirm it is working the stable release.

@chrmarti chrmarti removed the verified Verification succeeded label Sep 29, 2016
@egamma egamma modified the milestones: October 2016, September 2016 Oct 3, 2016
@joaomoreno joaomoreno added the verified Verification succeeded label Oct 25, 2016
@vscodebot vscodebot bot locked and limited conversation to collaborators Nov 18, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature-request Request for new features or functionality verification-needed Verification of issue is requested verified Verification succeeded
Projects
None yet
Development

No branches or pull requests

6 participants