Closed Bug 1382137 Opened 7 years ago Closed 7 years ago

stylo: make 'list-style-type' animatable

Categories

(Core :: CSS Parsing and Computation, enhancement, P2)

enhancement

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox-esr52 --- unaffected
firefox55 --- wontfix
firefox56 --- wontfix
firefox57 --- fixed

People

(Reporter: daisuke, Assigned: daisuke)

References

Details

Attachments

(5 files)

'list-style-type' should animate discretely.
Priority: -- → P2
Comment on attachment 8893672 [details] Bug 1382137 - Part 3: remove test fail annotations from meta in wpt. https://reviewboard.mozilla.org/r/164764/#review170164
Attachment #8893672 - Flags: review?(hikezoe) → review+
Comment on attachment 8893670 [details] Bug 1382137 - Part 1: implement conversion method from Gecko CounterStylePtr to CounterStyleOrNone. https://reviewboard.mozilla.org/r/164760/#review170166 ::: layout/style/ServoBindings.h:334 (Diff revision 1) > uint32_t symbols_count); > void Gecko_SetCounterStyleToString(mozilla::CounterStylePtr* ptr, > const nsACString* symbol); > void Gecko_CopyCounterStyle(mozilla::CounterStylePtr* dst, > const mozilla::CounterStylePtr* src); > +bool Gecko_CounterStyle_IsNone(const mozilla::CounterStylePtr* aPtr); Use 'ptr' for consistency. ::: layout/style/ServoBindings.cpp:1453 (Diff revision 1) > { > *aDst = *aSrc; > } > > +bool > +Gecko_CounterStyle_IsNone(const mozilla::CounterStylePtr* aPtr) { we don't need 'mozilla::' here. ::: layout/style/ServoBindings.cpp:1461 (Diff revision 1) > +} > + > +bool > +Gecko_CounterStyle_IsName(const mozilla::CounterStylePtr* aPtr) { > + MOZ_ASSERT(aPtr); > + return !(*aPtr)->AsAnonymous(); !(*Ptr)->AsAnonymous() && !(*aPtr)->IsNone() ? ::: servo/components/style/gecko/values.rs:473 (Diff revision 1) > + } else { > + let system = unsafe { Gecko_CounterStyle_GetSystem(gecko_value) }; > + let symbol_type = SymbolsType::from_gecko_keyword(system as u32); > + let mut symbols = vec![]; > + let length = unsafe { Gecko_CounterStyle_GetSymbolsLength(gecko_value) }; > + for index in 0..length { This seems inefficient. We should call one single FFI and get Symbols array and iterate array in servo side?
Attachment #8893670 - Flags: review?(hikezoe)
Attachment #8893671 - Flags: review?(hikezoe) → review+
Gecko_CounterStyle_GetSingleStringThe try tells that we need to update analyzeHeapWrites.js. Gecko_CounterStyle_GetName and Gecko_CounterStyle_GetSingleString.
Oops, wrong paste.
Thanks Hiro. Sorry, may I ask one question? How did you specify where the problem is?
linux64-haz in the try told us there were 6 heap write hazards instead of 4. So I just checked the new FFIs in your patch that write argument's value.
Oh, I see, thanks!
Comment on attachment 8894367 [details] Bug 1382137 - Part 4: add Gecko_CounterStyle_GetName and Gecko_CounterStyle_GetName which have a writable paramter into whitelist in analyzeHeapWrites.js. https://reviewboard.mozilla.org/r/165534/#review170604 ::: commit-message-fdfe1:1 (Diff revision 1) > +Bug 1382137 - Part 4: add new FFIs which have a writable paramter into whitelist in analyzeHeapWrites.js. r?hiro Should write function names respectively instead of just saying 'new FFIs'. ::: commit-message-fdfe1:3 (Diff revision 1) > +Bug 1382137 - Part 4: add new FFIs which have a writable paramter into whitelist in analyzeHeapWrites.js. r?hiro > + > +Since we add new FFI to Servo bindings. This is not a reason why we added the function names here.
Attachment #8894367 - Flags: review?(hikezoe) → review+
Comment on attachment 8893670 [details] Bug 1382137 - Part 1: implement conversion method from Gecko CounterStylePtr to CounterStyleOrNone. https://reviewboard.mozilla.org/r/164760/#review170606 ::: layout/style/ServoBindings.cpp:1472 (Diff revision 3) > + MOZ_ASSERT(!Gecko_CounterStyle_IsNone(aPtr) && > + !Gecko_CounterStyle_IsName(aPtr)); AsAnonymous() is mutually exclusive these conditions? If so, we should just check AsAnonymous(). Or expost IsAnonymous() in public and use it. ::: layout/style/ServoBindings.cpp:1481 (Diff revision 3) > + MOZ_ASSERT(!Gecko_CounterStyle_IsNone(aPtr) && > + !Gecko_CounterStyle_IsName(aPtr)); Same as the above assertion.
Attachment #8893670 - Flags: review?(hikezoe) → review+
We're sorry, Autoland could not rebase your commits for you automatically. Please manually rebase your commits and try again. hg error in cmd: hg rebase -s 5e46cc657c38 -d c2422a605996: rebasing 411966:5e46cc657c38 "Bug 1382137 - Part 1: implement conversion method from Gecko CounterStylePtr to CounterStyleOrNone. r=hiro" rebasing 411967:4b5fc213b19e "Bug 1382137 - Part 2: make list-style-type animatable. r=hiro" rebasing 411968:2dc33cb6342e "Bug 1382137 - Part 3: remove test fail annotations from meta in wpt. r=hiro" merging testing/web-platform/meta/web-animations/animation-model/animation-types/accumulation-per-property.html.ini warning: conflicts while merging testing/web-platform/meta/web-animations/animation-model/animation-types/accumulation-per-property.html.ini! (edit, then use 'hg resolve --mark') unresolved conflicts (see hg resolve, then hg rebase --continue)
Pushed by dakatsuka@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a00698496e8c Part 1: implement conversion method from Gecko CounterStylePtr to CounterStyleOrNone. r=hiro https://hg.mozilla.org/integration/autoland/rev/0572352c4de4 Part 2: make list-style-type animatable. r=hiro https://hg.mozilla.org/integration/autoland/rev/5a21057b51a7 Part 3: remove test fail annotations from meta in wpt. r=hiro https://hg.mozilla.org/integration/autoland/rev/3e7f81525e57 Part 4: add Gecko_CounterStyle_GetName and Gecko_CounterStyle_GetName which have a writable paramter into whitelist in analyzeHeapWrites.js. r=hiro
Attached file Servo PR 17985 (deleted) —
Depends on: 1388652
Depends on: 1390510
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: