Summary: | MobileSafari falsely claims CSS resize property support | ||
---|---|---|---|
Product: | WebKit | Reporter: | Bramus <bramus> |
Component: | CSS | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW --- | ||
Severity: | Normal | CC: | gsnedders, koivisto, mjs, ntim, simon.fraser, tomac, webkit-bug-importer, wenson_hsieh, zalan |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | iOS 13 | ||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=210473 |
Description
Bramus
2020-05-17 03:08:21 PDT
The CSS property is technically detected/understood by the engine on mobile. It's just that we decide to hide the resizer on mobile. (In reply to Tim Nguyen (:ntim) from comment #2) > The CSS property is technically detected/understood by the engine on mobile. > It's just that we decide to hide the resizer on mobile. Who owns the resizer? It seems like the resizer and the property should both be linked to a single setting if WebKit owns it. The resizer is implemented in RenderLayer.cpp (see canResize() and friends). But yeah I agree, the best way to make supports work properly is to guard the CSS property behind a flag. (In reply to Tim Nguyen (:ntim) from comment #4) > The resizer is implemented in RenderLayer.cpp (see canResize() and friends). > > But yeah I agree, the best way to make supports work properly is to guard > the CSS property behind a flag. I… actually knew that. I guess my question was more "what hides it on mobile", or causes it to not be painted? Is it simply that they don't have a layer or something? (In reply to Sam Sneddon [:gsnedders] from comment #5) > (In reply to Tim Nguyen (:ntim) from comment #4) > > The resizer is implemented in RenderLayer.cpp (see canResize() and friends). > > > > But yeah I agree, the best way to make supports work properly is to guard > > the CSS property behind a flag. > > I… actually knew that. I guess my question was more "what hides it on > mobile", or causes it to not be painted? Is it simply that they don't have a > layer or something? No idea, maybe Simon can answer? I think the primary issue here is that we'd need to implement some touch event handling on iOS to actually support user interaction with the resize. That was never done, so early in iOS development it was decided to just not paint the resize. Ah, it's BuilderConverter::convertResize which contains the check, and the TextAreasAreResizable setting. We probably just want to gate the resize property on that setting. (In reply to Sam Sneddon [:gsnedders] from comment #8) > Ah, it's BuilderConverter::convertResize which contains the check, and the > TextAreasAreResizable setting. We probably just want to gate the resize > property on that setting. The check in that function is only for `resize: auto` (a non-standard value fwiw), this bug is about `resize: both`. |