Skip to content

fix(icon): handle unescaped characters in names #15678

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

Merged
merged 1 commit into from
May 13, 2019

Conversation

crisbeto
Copy link
Member

@crisbeto crisbeto commented Apr 1, 2019

Handles the icon registry not being able to find icons whose ids contain unescaped characters (e.g. spaces).

Note that for this example in particular having a space in the id is invalid, however I did it since supporting it is trivial.

Fixes #15673.

@crisbeto crisbeto added the target: patch This PR is targeted for the next patch release label Apr 1, 2019
@crisbeto crisbeto requested a review from jelbourn as a code owner April 1, 2019 15:57
@googlebot googlebot added the cla: yes PR author has agreed to Google's Contributor License Agreement label Apr 1, 2019
@@ -449,7 +449,7 @@ export class MatIconRegistry implements OnDestroy {
* returns it. Returns null if no matching element is found.
*/
private _extractSvgIconFromSet(iconSet: SVGElement, iconName: string): SVGElement | null {
const iconSource = iconSet.querySelector('#' + iconName);
const iconSource = iconSet.querySelector(`[id="${iconName}"]`);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add a comment here like

// Use the `id="xxx"` syntax in order to escape special characters in the ID
// (versus using the #xxx syntax) 

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@crisbeto crisbeto force-pushed the 15673/icon-unescaped-characters branch from 1752fa4 to 8ec5964 Compare April 1, 2019 16:30
Copy link
Member

@jelbourn jelbourn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jelbourn jelbourn added pr: lgtm action: merge The PR is ready for merge by the caretaker labels Apr 1, 2019
@mmalerba mmalerba added aaa and removed aaa labels Apr 25, 2019
@jelbourn
Copy link
Member

@crisbeto this passes presubmit, just needs a rebase

Handles the icon registry not being able to find icons whose ids contain unescaped characters (e.g. spaces).

Note that for this example in particular having a space in the id is invalid, however I did it since supporting it is trivial.

Fixes angular#15673.
@crisbeto
Copy link
Member Author

Rebased.

@crisbeto crisbeto force-pushed the 15673/icon-unescaped-characters branch from 8ec5964 to 8dfe10e Compare May 13, 2019 16:08
@crisbeto
Copy link
Member Author

Rebased.

@jelbourn jelbourn merged commit cf03621 into angular:master May 13, 2019
RudolfFrederiksen pushed a commit to RudolfFrederiksen/material2 that referenced this pull request Jun 21, 2019
Handles the icon registry not being able to find icons whose ids contain unescaped characters (e.g. spaces).

Note that for this example in particular having a space in the id is invalid, however I did it since supporting it is trivial.

Fixes angular#15673.
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Sep 10, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker cla: yes PR author has agreed to Google's Contributor License Agreement target: patch This PR is targeted for the next patch release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MatIconRegistry cannot find icon with special id
4 participants