-
Notifications
You must be signed in to change notification settings - Fork 218
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
[SearchProvider/SetDSE] Add Explainer #917
Open
gu-wei-x
wants to merge
1
commit into
MicrosoftEdge:main
Choose a base branch
from
gu-wei-x:dseapi
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Search Provider --- Set Default Search Engine | ||
|
||
## Authors: | ||
|
||
- [Wei Gu](mailto:[email protected]) | ||
|
||
## Status of this Document | ||
|
||
This document is a starting point for engaging the community and standards | ||
bodies in developing collaborative solutions fit for the Web. As the solutions | ||
to problems described in this document progress along the standards-track, we | ||
will retain this document as an archive and use this section to keep the | ||
community up-to-date with the most current standards venue and content location | ||
of future work and discussions. | ||
|
||
* This document status: **Active** | ||
* Expected venue: [W3C Web Incubator Community Group](https://wicg.io/) | ||
* **Current version: this document** | ||
|
||
## Introduction | ||
|
||
Browsers have a list of search engines and user can set default search engine from settings. | ||
This proposal aims to standardize the API that could be leveraged by search providers to upsell to ask user | ||
to set their search engine as default. | ||
|
||
## Goals | ||
|
||
The goals of the API are: | ||
|
||
- Provide an API to detect whether a search engine is default search engine. | ||
- Privide an API to set search engine as deafault by name. | ||
|
||
## Non-Goals | ||
|
||
The API is not intended to be used for: | ||
|
||
- Update a search engine. | ||
- Delete a search engine. | ||
|
||
## Use Cases | ||
|
||
The feature is intended to be used by any search provider page that wants to do upsell asking users to set their search provider as default. Here are some scenarios in which this can be useful to users: | ||
- On a search engine results page (SERP) | ||
>>![upsell](upsell.png) | ||
- On a SERP page, serp page could show upsell to users. | ||
- User could accept/ignore to set the search provider as default. | ||
- After acception, browser should use the accepeted search provider as default. | ||
|
||
## Proposed Solution | ||
|
||
### Detect whether search engine is default by name | ||
|
||
```js | ||
chrome.searchProvider.canSetDefault(name:string, (success: boolean) => void); | ||
``` | ||
> #### NOTE | ||
> This API will return false if a search provider is already the default one or not existing in the search engine list. | ||
|
||
### Set search engine as default by name | ||
|
||
```js | ||
chrome.searchProvider.setDefault(name:string, (success: boolean) => void) | ||
``` | ||
> #### NOTE | ||
> This API will return false if a search provider is already the default one or not existing in the search engine list. | ||
|
||
## Security and Privacy Considerations | ||
|
||
The API does not introduce any new security or privacy | ||
considerations. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
# Early Self-Review Questionnaire: Security and Privacy | ||
|
||
## Security and Privacy questionnaire for [`SetDefaultSearchEngine`](explainer.md) | ||
|
||
1. **What information might this feature expose to Web sites or other parties, and for what purposes is that exposure necessary?** | ||
|
||
This feature exposes information to the origin if the web site from a search provider. | ||
|
||
It is necessary to allow SERP page from a search provider to set itself as default search engine for the browser. | ||
|
||
2. **Do features in your specification expose the minimum amount of information necessary to enable their intended uses?** | ||
|
||
Yes. | ||
|
||
3. **How do the features in your specification deal with personal information, personally-identifiable information (PII), or information derived from them?** | ||
|
||
There is no information of this type being handled by the feature. | ||
|
||
4. **How do the features in your specification deal with sensitive information?** | ||
|
||
There is no sensitive information handled by the feature. | ||
|
||
5. **Do the features in your specification introduce new state for an origin that persists across browsing sessions?** | ||
|
||
No, this feature does not introduce new states tied to an origin. | ||
|
||
6. **Do the features in your specification expose information about the underlying platform to origins?** | ||
|
||
No. | ||
|
||
7. **Does this specification allow an origin to send data to the underlying platform?** | ||
|
||
No. | ||
|
||
8. **Do features in this specification enable access to device sensors?** | ||
|
||
No. | ||
|
||
9. **Do features in this specification enable new script execution/loading mechanisms?** | ||
|
||
No. | ||
|
||
10. **Do features in this specification allow an origin to access other devices?** | ||
|
||
No. | ||
|
||
11. **Do features in this specification allow an origin some measure of control over a user agent’s native UI?** | ||
|
||
No. | ||
|
||
12. **What temporary identifiers do the features in this specification create or expose to the web?** | ||
|
||
None. | ||
|
||
13. **How does this specification distinguish between behavior in first-party and third-party contexts?** | ||
|
||
It does not make such distinction. | ||
|
||
14. **How do the features in this specification work in the context of a browser’s Private Browsing or Incognito mode?** | ||
|
||
No difference. | ||
|
||
15. **Does this specification have both "Security Considerations" and "Privacy Considerations" sections?** | ||
|
||
The API does not introduce any new security or privacy considerations. | ||
|
||
16. **Do features in your specification enable origins to downgrade default security protections?** | ||
|
||
No. | ||
|
||
17. **How does your feature handle non-"fully active" documents?** | ||
|
||
No difference. | ||
|
||
18. **What should this questionnaire have asked?** | ||
|
||
N/A. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Provide