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

[ClickAwayListener] Support other documents #18701

Conversation

Izhaki
Copy link
Contributor

@Izhaki Izhaki commented Dec 5, 2019

Mouse and touch event were subscribing to document, meaning these were not intercepted within other documents, like an iframe.

To support other documents, we now subscribe to node.ownerDocument.

Addresses a potential issue raise in #18689 / Pomax/react-onclickoutside#236.

Mouse and touch event were subscribing to `document`, meaning these were not intercepted within other documents, like an iframe.

To support other documents, we now subscribe to node.ownerDocument.
@Izhaki
Copy link
Contributor Author

Izhaki commented Dec 5, 2019

@oliviertassinari I had no reproducible case to test this change.

@mui-pr-bot
Copy link

Details of bundle changes.

Comparing: 8ba3283...717044d

bundle Size Change Size Gzip Change Gzip
@material-ui/core[umd] ▼ -10 B (-0.00% ) 311 kB ▲ +1 B (0.00% ) 89.6 kB
@material-ui/core ▲ +8 B (0.00% ) 354 kB ▲ +5 B (+0.01% ) 96.7 kB
ClickAwayListener ▲ +8 B (+0.21% ) 3.87 kB ▲ +3 B (+0.19% ) 1.56 kB
docs.main ▲ +8 B (0.00% ) 609 kB ▼ -1 B (-0.00% ) 194 kB
Snackbar ▲ +8 B (+0.01% ) 76 kB ▲ +1 B (0.00% ) 23.7 kB
Collapse -- 66.8 kB ▲ +3 B (+0.01% ) 20.6 kB
SwipeableDrawer -- 90.6 kB ▲ +3 B (+0.01% ) 28 kB
Dialog -- 81.5 kB ▲ +2 B (+0.01% ) 25.4 kB
SpeedDial -- 84.9 kB ▲ +2 B (+0.01% ) 26.7 kB
TablePagination -- 140 kB ▼ -2 B (-0.00% ) 40.7 kB
Tooltip -- 99.5 kB ▲ +2 B (+0.01% ) 31.4 kB
Backdrop -- 66.6 kB ▲ +1 B (0.00% ) 20.5 kB
Drawer -- 83.2 kB ▼ -1 B (-0.00% ) 25.2 kB
ExpansionPanel -- 70.1 kB ▲ +1 B (0.00% ) 21.8 kB
Menu -- 87.1 kB ▼ -1 B (-0.00% ) 26.8 kB
MenuList -- 64.9 kB ▲ +1 B (0.00% ) 20.2 kB
Popover -- 81.5 kB ▼ -1 B (-0.00% ) 25.1 kB
Select -- 113 kB ▼ -1 B (-0.00% ) 33.5 kB
Slide -- 24.5 kB ▲ +1 B (+0.01% ) 8.32 kB
StepContent -- 67.9 kB ▲ +1 B (0.00% ) 21.2 kB
Tabs -- 84.3 kB ▲ +1 B (0.00% ) 26.5 kB
TreeItem -- 72.5 kB ▲ +1 B (0.00% ) 22.8 kB
@material-ui/lab -- 174 kB -- 52.3 kB
@material-ui/styles -- 51 kB -- 15.3 kB
@material-ui/system -- 14.8 kB -- 4.06 kB
AppBar -- 62.7 kB -- 19.5 kB
Autocomplete -- 128 kB -- 39.8 kB
Avatar -- 61.7 kB -- 19.3 kB
Badge -- 64.2 kB -- 19.9 kB
BottomNavigation -- 61.3 kB -- 19.1 kB
BottomNavigationAction -- 74.3 kB -- 23.4 kB
Box -- 69.6 kB -- 21 kB
Breadcrumbs -- 66.9 kB -- 20.8 kB
Button -- 78.3 kB -- 23.9 kB
ButtonBase -- 72.8 kB -- 22.7 kB
ButtonGroup -- 80.9 kB -- 24.8 kB
Card -- 61.6 kB -- 19.2 kB
CardActionArea -- 73.9 kB -- 23.2 kB
CardActions -- 60.9 kB -- 19 kB
CardContent -- 60.9 kB -- 19 kB
CardHeader -- 64 kB -- 20 kB
CardMedia -- 61.2 kB -- 19.2 kB
Checkbox -- 80.6 kB -- 25.3 kB
Chip -- 81.4 kB -- 24.8 kB
CircularProgress -- 63 kB -- 19.8 kB
colorManipulator -- 3.85 kB -- 1.52 kB
Container -- 62 kB -- 19.3 kB
CssBaseline -- 56.4 kB -- 17.6 kB
DialogActions -- 61 kB -- 19 kB
DialogContent -- 61.1 kB -- 19.1 kB
DialogContentText -- 62.9 kB -- 19.7 kB
DialogTitle -- 63.2 kB -- 19.7 kB
Divider -- 61.5 kB -- 19.2 kB
docs.landing -- 52.4 kB -- 11.4 kB
ExpansionPanelActions -- 61 kB -- 19 kB
ExpansionPanelDetails -- 60.8 kB -- 19 kB
ExpansionPanelSummary -- 76.9 kB -- 24.2 kB
Fab -- 75.6 kB -- 23.5 kB
Fade -- 22.4 kB -- 7.71 kB
FilledInput -- 72.3 kB -- 22.4 kB
FormControl -- 63.3 kB -- 19.6 kB
FormControlLabel -- 64.4 kB -- 20.1 kB
FormGroup -- 60.9 kB -- 19 kB
FormHelperText -- 62.1 kB -- 19.4 kB
FormLabel -- 62.4 kB -- 19.2 kB
Grid -- 64 kB -- 20 kB
GridList -- 61.4 kB -- 19.2 kB
GridListTile -- 62.6 kB -- 19.5 kB
GridListTileBar -- 62.1 kB -- 19.3 kB
Grow -- 23.1 kB -- 7.83 kB
Hidden -- 64.8 kB -- 20.2 kB
Icon -- 61.7 kB -- 19.2 kB
IconButton -- 75 kB -- 23.3 kB
Input -- 71.3 kB -- 22.1 kB
InputAdornment -- 64 kB -- 20 kB
InputBase -- 69.4 kB -- 21.7 kB
InputLabel -- 64.2 kB -- 20 kB
LinearProgress -- 64.2 kB -- 20 kB
Link -- 65.5 kB -- 20.6 kB
List -- 61.3 kB -- 19 kB
ListItem -- 75.9 kB -- 23.6 kB
ListItemAvatar -- 61 kB -- 19 kB
ListItemIcon -- 61.1 kB -- 19 kB
ListItemSecondaryAction -- 60.9 kB -- 19 kB
ListItemText -- 63.8 kB -- 19.9 kB
ListSubheader -- 61.6 kB -- 19.3 kB
MenuItem -- 77 kB -- 23.9 kB
MobileStepper -- 66.6 kB -- 20.8 kB
Modal -- 14.2 kB -- 4.99 kB
NativeSelect -- 75.6 kB -- 23.7 kB
NoSsr -- 2.19 kB -- 1.03 kB
OutlinedInput -- 72.8 kB -- 22.6 kB
Paper -- 61.1 kB -- 19 kB
Popper -- 28.6 kB -- 10.2 kB
Portal -- 2.87 kB -- 1.29 kB
Radio -- 81.5 kB -- 25.6 kB
RadioGroup -- 62.1 kB -- 19.4 kB
Rating -- 68.9 kB -- 22.1 kB
RootRef -- 4.43 kB -- 1.67 kB
Skeleton -- 61.4 kB -- 19.3 kB
Slider -- 74.5 kB -- 23.3 kB
SnackbarContent -- 64.5 kB -- 20.2 kB
SpeedDialAction -- 116 kB -- 36.5 kB
SpeedDialIcon -- 63.5 kB -- 19.9 kB
Step -- 61.5 kB -- 19.2 kB
StepButton -- 81.1 kB -- 25.5 kB
StepConnector -- 61.6 kB -- 19.3 kB
StepIcon -- 63.5 kB -- 19.7 kB
StepLabel -- 67.5 kB -- 21.1 kB
Stepper -- 63.6 kB -- 20 kB
styles/createMuiTheme -- 15.6 kB -- 5.47 kB
SvgIcon -- 61.9 kB -- 19.3 kB
Switch -- 80 kB -- 25 kB
Tab -- 75.2 kB -- 23.7 kB
Table -- 61.4 kB -- 19.2 kB
TableBody -- 61 kB -- 19 kB
TableCell -- 62.9 kB -- 19.7 kB
TableFooter -- 61 kB -- 19 kB
TableHead -- 61 kB -- 19 kB
TableRow -- 61.4 kB -- 19.1 kB
TableSortLabel -- 76.2 kB -- 23.9 kB
TextareaAutosize -- 5.06 kB -- 2.11 kB
TextField -- 122 kB -- 35.5 kB
ToggleButton -- 75 kB -- 23.7 kB
ToggleButtonGroup -- 62.1 kB -- 19.4 kB
Toolbar -- 61.2 kB -- 19.1 kB
TreeView -- 65.3 kB -- 20.4 kB
Typography -- 62.5 kB -- 19.5 kB
useAutocomplete -- 12.6 kB -- 4.63 kB
useMediaQuery -- 2.47 kB -- 1.04 kB
Zoom -- 22.5 kB -- 7.71 kB

Generated by 🚫 dangerJS against 717044d

@oliviertassinari oliviertassinari added the component: ClickAwayListener The React component label Dec 5, 2019
@Izhaki
Copy link
Contributor Author

Izhaki commented Dec 6, 2019

Firefox 52.0.0 (Windows 10.0.0) <Dialog /> backdrop should ignore the backdrop click if the event did not come from the backdrop FAILED

Didn't fail locally on Chrome... I'll have a look tomorrow.

@oliviertassinari oliviertassinari merged commit 0090249 into mui:master Dec 6, 2019
@oliviertassinari
Copy link
Member

Thanks, It seems that the test fail was a flaky timeout.

@oliviertassinari
Copy link
Member

oliviertassinari commented Dec 6, 2019

@Izhaki For manually testing the fix, there is one easy way to do it with the documentation. I share the steps in #18694.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐛 Something doesn't work component: ClickAwayListener The React component
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants