Introduce ScrollCustomization Property [chromium/src : master]

4 views
Skip to first unread message

Ehsan Karamad (Gerrit)

unread,
Aug 14, 2017, 9:55:21 AM8/14/17
to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

Hello Majid, PTAL.

View Change

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 9
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Mon, 14 Aug 2017 13:55:15 +0000
    Gerrit-HasComments: No
    Gerrit-HasLabels: No

    Majid Valipour (Gerrit)

    unread,
    Aug 28, 2017, 3:11:55 PM8/28/17
    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    View Change

    13 comments:

    • File cc/input/scroll_customization.h:

      • Patch Set #9, Line 30: };

        I think the new preferred way to do these type of bitflags is to use struct with constant integer values. See for example MutableProperties [1].

        In particular, use uint32_t to represent the "scroll_customization_" value which is a bitset
        of the above flags.

        [1] https://codesearch.chromium.org/chromium/src/cc/trees/mutable_properties.h?type=cs&sq=package:chromium&l=12

      • Patch Set #9, Line 35: }

        I am not sure if this is correct for example if one passes in
        kScrollCustomizationPanLeft and kScrollCustomizationPanUp. the
        result is not a valid value in ScrollCustomization.

        See above comment on how to define a safe bitflag.

      • Patch Set #9, Line 53: touch_action

        s/touch_action/scroll_customization/

      • Patch Set #9, Line 94: GetScrollCustomizationFromScrollStateData

        hmmm, you are actually returning a "mask" so perhaps
        |GetScrollCustomizationMaskFromScrollStateData|

        why is this inline?

      • Patch Set #9, Line 98: delta_x

        I have seen this being used a few times, should we have a helper method on
        ScrollStateDate e.g., GetEffectiveDelta{X, Y}() which returns this
        value?

        That way you don't need to pass in the whole scrollStateData but just the
        effective delta.

    • File third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html:

      • Patch Set #9, Line 2: html

        nit: layout tests should not have <html> <head> <body> [1]

        [1] https://chromium.googlesource.com/chromium/src/+/master/docs/testing/writing_layout_tests.md#javascript-tests

      • Patch Set #9, Line 54: }

        I think it will be nicer to have this method take a gesture value instead of delta and
        then turn that into specific delta values.

        Also it will be cleaner for it to return a promise.

        Then usage will be like:
        applyScrollGesture('right').then(verify);

      • Patch Set #9, Line 82: var applyScrollDidChange = callsToApplyScroll < numberOfSetApplyScrollCalls;

        This is hard to read and understand. I think what you want is to set the
        |numberOfSetApplyScrollCalls| to zero just above and check here it it is
        none zero. Also get rid of callsToApplyScroll etc.

      • Patch Set #9, Line 107: numberOfSetApplyScrollCalls

        See my comment above. These steps should be done for each test.
        Perhaps it should be part of a "SetUp" step for each test.

      • Patch Set #9, Line 110: if ('ScrollState' in window) {

        We should turn this conditional into an early return at the top of the script.

      • Patch Set #9, Line 121: testGesture

        Most tests below do the same thing. Perhaps these should be a parametric test.
        Each table row will have an entry like this:

        const test_table = [
        [GESTURE_RIGHT, GESTURE_LEFT, GESTURE_TOP, GESTURE_DOWN], "none", , false]
        ....
        ];

        So
        test_table.forEach([gestures, value, expected, test_prefix]) {
        gestures.forEach(gesture) {
        testGesture(value, gesture, expected, `Verify if property "${value}" works correctly with gesture ${gesture}`);
        }
        }

        The test() is actually invoked inside testGesture. This way you get an individual test for
        each combination and also get rid of most of the boilerplate.

        bonus 1: make GESTURE_RIGHT etc strings so you can print them properly.
        bonus 2: each test is verifying a set gestures for true and the reverse of that set for false. I think you can event remove this bilerplate and generate both set of tests from a single entry in
        test_table.

    • File third_party/WebKit/Source/core/dom/Element.cpp:

      • Patch Set #9, Line 637: NativeDistributeScroll

        This should be merged with previous conditional e.g.,

        bool may_customize_scroll_for_gesture = direction & scroll_customization
        if (!callback || disable_custom_callbacks || !may_customize_scroll_for_gesture)
        [...]

      • Patch Set #9, Line 731: // Cache the current value of ScrollCustomization to later verify the handler

        Is this comment accurate? No value is being cached atm.

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 9
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Mon, 28 Aug 2017 19:11:46 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Majid Valipour (Gerrit)

    unread,
    Aug 28, 2017, 3:14:33 PM8/28/17
    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    View Change

    1 comment:

      • I think the new preferred way to do these type of bitflags is to use struct with constant integer va […]

        Actually looking at it more carefully. I think you may need to use the current
        pattern as it is how StyleBuilderConverter::ConvertFlags expects it to behave.

        So I am fine with this given that it matches TouchAction as well.

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 9
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Mon, 28 Aug 2017 19:14:30 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Ehsan Karamad (Gerrit)

    unread,
    Aug 30, 2017, 2:15:45 PM8/30/17
    to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Kenneth Rohde Christiansen, Majid Valipour, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    Thanks Majid! PTAL.

    View Change

    13 comments:

      • Patch Set #9, Line 30: };

        I think the new preferred way to do these type of bitflags is to use struct with constant integer va […]

      • Thanks. I was about to suggest the same. I could use "uint32_t" for enum though but I am not sure if it is needed/suggested (e.g., "enum ScrollCustomization : uint32 {").

      • I am not sure if this is correct for example if one passes in […]

        I think this falls into the same question above and AFAICT this is correct. It is vague as in for the example you mentioned we do not "define" a value. However, the corresponding "int" value is within the accepted range for ScrollCustomization but the value is not equal to any of the names mentioned. Nonetheless, we do bit manipulation on this so it should be fine (also ditto 
        on being derived from TouchAction logic).
      • Thanks. Done.

      • Patch Set #9, Line 94: GetScrollCustomizationFromScrollStateData

        hmmm, you are actually returning a "mask" so perhaps
        |GetScrollCustomizationMaskFromScrollStateData|

      • I don't see this as a "mask" TBH. This is actually the direction of scrolling based on X & Y. I personally consider the output as "direction" rather than mask, esp. given that we do look at X and Y (also we do return a ScrollCustomization type so GetScrollCustomization is sounds like the safest name to me).

        That being said I am quite open to renaming the method if you believe Mask is a better term.

        why is this inline?
        Thanks for pointing this out. I am open to any suggestions for this. Here is the situation:

        Adding the inline modifier will make sure that we get different definitions of inline in different translation units. Without inline there will be link errors due to multiple definitions of the cc::GetScrollCustomizationFromScrollStateData.

        We could remove inline and add the implementation to a cc file but then the cc file will be inside cc/input and we cannot rely on it from inside blink.

        We could mark it as static inline and leave the implementation in cc-file but then that will be external linkage which I am not quite sure if it is considered as a good approach in coding (+ we are again using "inline" anyway).

        Anything I am missing/suggests?

      • I think it will be nicer to have this method take a gesture value instead of delta and […]

        Done. Thanks for the suggestion.

      • Patch Set #9, Line 82: deltaY = delta

        This is hard to read and understand. I think what you want is to set the […]

        Hopefully the new one makes more sense. (I believe) I now test all (16) possible configurations of "scroll-customization" against all 4 gestures.

      • Patch Set #9, Line 110: powerSet.add(s);

      • We should turn this conditional into an early return at the top of the script.

      • Is this comment accurate? No value is being cached atm.

        Thanks! Fixed. I also think we do not need to cache any value anymore (following our discussion offline).

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 12
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Wed, 30 Aug 2017 18:15:42 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Majid Valipour (Gerrit)

    unread,
    Sep 1, 2017, 3:41:54 PM9/1/17
    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    View Change

    8 comments:

      • Thanks. I was about to suggest the same. […]

        It is fine to follow the TouchAction pattern here.

      • I think this falls into the same question above and AFAICT this is correct. […]

        Ack

      • Patch Set #9, Line 94: GetScrollCustomizationFromScrollStateData

        Its type is ScrollCustomization but it is used as a mask to filter only applicable
        values from element scroll customization value. I am fine with either using ScrollCustomizationDirection or ScrollCustomizationMask but I think
        the name change helps to avoid confusion with Element.GetScrollCustomization.

      • Adding the inline modifier will make sure that we get different definitions of inline in different translation units. Without inline there will be link errors due to multiple definitions of the cc::GetScrollCustomizationFromScrollStateData.

      • I don't think you get a link error due to duplicate definition but rather you may be
        getting one because the cc definition is not exported. Try exporting it and see if
        inline is no longer needed.

      • Thanks. Good suggestion! I believe you are referring to examples such as this: https://cs.chromium. […]

        sgtm.

    • File third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html:

      • Patch Set #12, Line 142:

        This function does not seem to be testing pan-left, pan-right ...

        As a meta comment, I think the test much better now but the new patch is
        taking the test parametrization too far and making the test too complex.

        Now to actually understand the test one has to fully understand getScrollCustomizationFromValidGestureSet
        and how this machinery relies on getPowerSet, validGestureSet and ALL_GESTURE
        too generate all possible inputs. This makes the test less readable and any
        bug in input generation can lead to test not being effective. In general making
        the test too complex is not a good idea.

        I think the test should be parametrized but please use constant static input
        values as opposed to trying to generate them. In this case the number of
        permutations is not that many so there is not actually much that the input generation
        is saving.

        A simple table of ||scroll-customization value | gestures to be tests| callbacks expected||
        should work. e.g.

        const test_table = [
        ["none", [GESTURE_RIGHT, GESTURE_LEFT, GESTURE_TOP, GESTURE_DOWN] , false]
        ["pan-left", [GESTURE_RIGHT, GESTURE_TOP, GESTURE_DOWN] , false]
        ["pan-left", [GESTURE_LEFT] , , true]
        ["pan-x", [GESTURE_TOP, GESTURE_DOWN] , false]
        ["pan-x", [GESTURE_LEFT, GESTURE_RIGHT] , , true]
        ....
        ];


      • > Note quite sure if I understand bonus #2 though.

      • It was suggesting that for example in above table item 3 can be automatically generated
        based on item 2. But I think not doing that is actually better for readability of
        the test in light of above discussion.

      • Patch Set #12, Line 171: });

        nit: can be forEach(testGestureSet)

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 12
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Fri, 01 Sep 2017 19:41:50 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Ehsan Karamad (Gerrit)

    unread,
    Sep 8, 2017, 3:13:23 PM9/8/17
    to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    Thanks Maijd! PTAL.

    View Change

    9 comments:

      • 32 bit is overkill. 8 buts should be more that enough.

      • It is fine to follow the TouchAction pattern here.

        Done

      • Ack

        Done

      • Its type is ScrollCustomization but it is used as a mask to filter only applicable
        values from element scroll customization value. I am fine with either using ScrollCustomizationDirection or ScrollCustomizationMask but I think
        the name change helps to avoid confusion with Element.GetScrollCustomization.

      • I think something like GetScrollCustomizationFromDirection() might make more sense. This means a corresponding ScrollCustomization setting which allows the direction. FWIW this is gotten from input and (I think) the actual mask here would be Element.GetScrollCustomization().


      • > Adding the inline modifier will make sure that we get different definitions of inline in different translation units. Without inline there will be link errors due to multiple definitions of the cc::GetScrollCustomizationFromScrollStateData.
        > I don't think you get a link error due to duplicate definition but rather you may be
        getting one because the cc definition is not exported. Try exporting it and see if
        inline is no longer needed.

      • Thanks. You actually do get a link error due to multiple definition which has to do with the many places the include (V8* files) ScrollCustomization.h Naturally, "in-lining" fixes the issue but not the idea fix.

        The alternate way I tried and failed was to move the implementation to a separate CC file. However the failure reason for that was the lack of CC_EXPORT.

      • This function does not seem to be testing pan-left, pan-right ...

      • Wouldn't "scroll-customization: pan-left pan-right" just mean "scroll-customization: pan-x". That being said, if either one of "pan-left" and "pan-right" is in |gestureSet| it will be in |summarized| per line 124. I still don't understand why it would not work (I believe it does work).

      • As a meta comment, I think the test much better now but the new patch is
        taking the test parametrization too far and making the test too complex.

      • The reason I opted for "input generation" was that we are testing all possible compositions of valid gestures against all possible gestures which is of size 16 x 4 = 64.

      • Now to actually understand the test one has to fully understand getScrollCustomizationFromValidGestureSet
        and how this machinery relies on getPowerSet, validGestureSet and ALL_GESTURE
        too generate all possible inputs. This makes the test less readable and any
        bug in input generation can lead to test not being effective. In general making
        the test too complex is not a good idea.

      • I agree the test should be simple. A few notes:
        * getPowerSet approach is simply listing all possible configurations which is more efficient than listing the 64 cases. When the input is all input I do not see a lot of sense if listing them explicitly. Perhaps renaming the method to "getAllScrollCustomizationSettings" would alleviate the problem more.
          * getScrollCustomizationFromValidGestureSet: This is the helper class which I agree might make the inspection of the test harder.

        So in conclusion and based on out offline chat I will try to use a table like the one you suggested.


      • > I think the test should be parametrized but please use constant static input
        > values as opposed to trying to generate them.

      • I consider the 4 gestures and constant static. If we are to test a subset of current tests I totally understand and agree with you that defining constants and tables is a more readable approach and what I have here is an overkill. If we want to test all cases I do not find writing a table that appealing. All in all, I defer the decision to you given that you are wat more experienced with blink/ and layout testing.

      • > In this case the number of
        > permutations is not that many so there is not actually much that the input generation
        > is saving.
        >
        > A simple table of ||scroll-customization value | gestures to be tests| callbacks expected||
        > should work. e.g.
        >
        > const test_table = [
        > ["none", [GESTURE_RIGHT, GESTURE_LEFT, GESTURE_TOP, GESTURE_DOWN] , false]
        > ["pan-left", [GESTURE_RIGHT, GESTURE_TOP, GESTURE_DOWN] , false]
        > ["pan-left", [GESTURE_LEFT] , , true]
        > ["pan-x", [GESTURE_TOP, GESTURE_DOWN] , false]
        > ["pan-x", [GESTURE_LEFT, GESTURE_RIGHT] , , true]
        > ....
        > ];

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 13
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Fri, 08 Sep 2017 19:13:17 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Majid Valipour (Gerrit)

    unread,
    Sep 11, 2017, 3:24:48 PM9/11/17
    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    lgtm with nits.

    Please update the description to explain how the scroll customization is used i.e., to limit calling scroll customization callbacks only base on this declared
    values thus enhancing performance for composited scrolling.

    Also description talks about sending these values to WebLayer which is not the
    case as of yet. I think that is to happen in follow up CL which wires this up
    to CC.

    View Change

    9 comments:

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 13
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Mon, 11 Sep 2017 19:24:42 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Ehsan Karamad (Gerrit)

    unread,
    Sep 14, 2017, 10:15:36 AM9/14/17
    to Majid Valipour, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, chromium...@chromium.org, Dongseong Hwang, Rob Buis, Alexis Menard, Dirk Schulze, Pavel Feldman

    Ehsan Karamad uploaded patch set #15 to this change.

    View Change

    Introduce ScrollCustomization Property

    This CL introduces the CSS property, 'scroll-customization'. Through modifying
    scroll customization unnecessary calls to apply/distributeScroll handles
    can be avoided.

    This CL implements the logic inside blinks main thread. If an scrollable node
    has customized scrolling handlers, it can further specify which class
    of gestures it is interested for custom scrolling.

    The list of valid values for customization includes 'auto', 'pan-x',
    'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down'.

    This CL will eventually be followed up by changes to the compositor layer
    so that for nodes with custom scroll, the scroll events corresponding
    not allowed through scroll customization do not get sent to the main thread.

    Bug:
    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
    Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    ---
    M cc/BUILD.gn
    A cc/input/scroll_customization.cc
    A cc/input/scroll_customization.h
    A third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html
    M third_party/WebKit/Source/core/BUILD.gn
    M third_party/WebKit/Source/core/css/BUILD.gn
    M third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
    M third_party/WebKit/Source/core/css/CSSProperties.json5
    M third_party/WebKit/Source/core/css/CSSValueKeywords.json5
    M third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp
    A third_party/WebKit/Source/core/css/properties/CSSPropertyAPIScrollCustomization.cpp
    M third_party/WebKit/Source/core/dom/Element.cpp
    M third_party/WebKit/Source/core/frame/UseCounter.cpp
    M third_party/WebKit/Source/core/page/scrolling/ScrollState.h
    M third_party/WebKit/Source/devtools/front_end/sdk/CSSMetadata.js
    M third_party/WebKit/Source/platform/BUILD.gn
    A third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp
    A third_party/WebKit/Source/platform/scroll/ScrollCustomization.h
    M tools/metrics/histograms/enums.xml
    19 files changed, 553 insertions(+), 5 deletions(-)

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: newpatchset
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 15

    Ehsan Karamad (Gerrit)

    unread,
    Sep 14, 2017, 1:40:16 PM9/14/17
    to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    Patch Set 13:

    (9 comments)

    lgtm with nits.

    Please update the description to explain how the scroll customization is used i.e., to limit calling scroll customization callbacks only base on this declared
    values thus enhancing performance for composited scrolling.

    Also description talks about sending these values to WebLayer which is not the
    case as of yet. I think that is to happen in follow up CL which wires this up
    to CC.

    Yes thanks the description was fairly outdated and insufficient. PTAL. Also, do we have an umbrella bug I should add to the CL?

    View Change

    9 comments:

      • s/result?/scroll customization handler was called/

      • nit: Is this still needed? The state is reset at the begging of each test case.

      • I added this line to instantiate/define variables used in lines 133-134 and 140-143. But it is not really needed. While still not needed, I added explicit definition of the variables to where I am defining constants.

      • nit: s/and deltaX() otherwise/otherwise deltaX()/ […]

        Ack

      • nit: should we use data_->is_beginning here? the function call seems unnecessary and […]

        Done. I simply used the methods to make it cleaner and performance wise it should not change as perhaps all these methods will be inline. That being said, taking a second look, it would look more consistent if we use |data_| like in other methods.

      • Patch Set #13, Line 76: hint : data_->delta_y;

        nit: ditto.

        Ack

      • nit: ditto

        Ack

    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

    Gerrit-Project: chromium/src
    Gerrit-Branch: master
    Gerrit-MessageType: comment
    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
    Gerrit-Change-Number: 590497
    Gerrit-PatchSet: 16
    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
    Gerrit-CC: Alexis Menard <alexis...@intel.com>
    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
    Gerrit-CC: Justin Novosad <ju...@chromium.org>
    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
    Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
    Gerrit-CC: Rob Buis <rob....@samsung.com>
    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
    Gerrit-Comment-Date: Thu, 14 Sep 2017 17:40:12 +0000
    Gerrit-HasComments: Yes
    Gerrit-HasLabels: No

    Majid Valipour (Gerrit)

    unread,
    Sep 14, 2017, 2:01:50 PM9/14/17
    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

    lgtm
    here is the bug you can use: https://crbug.com/765326

    +tdresser@ to review

    View Change

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 17
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Thu, 14 Sep 2017 18:01:46 +0000
      Gerrit-HasComments: No
      Gerrit-HasLabels: No

      Majid Valipour (Gerrit)

      unread,
      Sep 14, 2017, 2:01:50 PM9/14/17
      to Timothy Dresser, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ehsan Karamad

      Majid Valipour would like Timothy Dresser to review this change.

      View Change

      19 files changed, 558 insertions(+), 7 deletions(-)


      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: newchange

      Ehsan Karamad (Gerrit)

      unread,
      Sep 14, 2017, 2:02:30 PM9/14/17
      to Timothy Dresser, Majid Valipour, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, chromium...@chromium.org, Dongseong Hwang, Rob Buis, Alexis Menard, Dirk Schulze, Pavel Feldman

      Ehsan Karamad uploaded patch set #18 to this change.

      View Change

      Introduce ScrollCustomization Property

      This CL introduces the CSS property, 'scroll-customization'. Through modifying
      scroll customization unnecessary calls to apply/distributeScroll handles
      can be avoided.

      This CL implements the logic inside blinks main thread. If an scrollable node
      has customized scrolling handlers, it can further specify which class
      of gestures it is interested for custom scrolling.

      The list of valid values for customization includes 'auto', 'pan-x',
      'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down'.

      This CL will eventually be followed up by changes to the compositor layer
      so that for nodes with custom scroll, the scroll events corresponding
      not allowed through scroll customization do not get sent to the main thread.

      Bug: 765326
      Gerrit-MessageType: newpatchset
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 18

      Majid Valipour (Gerrit)

      unread,
      Sep 14, 2017, 2:05:19 PM9/14/17
      to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      View Change

      1 comment:

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 18
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Thu, 14 Sep 2017 18:05:12 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Timothy Dresser (Gerrit)

      unread,
      Sep 14, 2017, 2:54:27 PM9/14/17
      to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      Can we add some unit tests for this?

      View Change

      4 comments:

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 18
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Thu, 14 Sep 2017 18:54:24 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Ehsan Karamad (Gerrit)

      unread,
      Sep 25, 2017, 11:32:40 AM9/25/17
      to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      Patch Set 18:

      (4 comments)

      Can we add some unit tests for this?

      Thanks Tim and Majid for the reviews. PTAL.

      tdresser@: I assumed the unit tests you were suggesting were for CSS parsing. Also not sure if the tests I added are in the correct spot.

      View Change

      6 comments:

      • File cc/input/scroll_customization.h:

        • Patch Set #18, Line 16: nLeft = 0x1,

          Can we name this ScrollCustomizationEnabledDirections, or similar? […]

          Sure. The suggestion sounds good (a bit too long though). So I shortened the constants' names inside.

          Also, the property is now 'scroll-customization' which is leading to style()->ScrollCustomization() for getter. Should I change the property name accordingly? Say, scroll-customization-direction or *-enabled-direction?

        • Patch Set #18, Line 55: 1

        • Why are we using integer literals instead of the constants defined above?

        • I am not sure how I could handle the combination of different properties then, such as line 65 for kScrollCustomizationPanLeft | kScrollCustomizationPanUp.

      • File cc/input/scroll_customization.h:

        • Is there precedent for using a *& here?

        • Not really. Maybe it makes the statement inside if nicer (!pan_x instead of !*pan_x maybe?).
          I did copy this from *TouchAction*.

        • In general, we use pointers for out parameters, even when references work.

          From the style guide:
          "Input parameters are usually values or const references, while output and input/output parameters will be pointers to non-const."

        • Will !pan_x ever be true?

        • Looking at the call on line 48 I believe |pan_x| is nullptr. It may remain nullptr in the second call as well.

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 19
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Mon, 25 Sep 2017 15:32:33 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Timothy Dresser (Gerrit)

      unread,
      Oct 3, 2017, 2:33:03 PM10/3/17
      to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      Sorry for the delay...

      View Change

      5 comments:

        • Sure. The suggestion sounds good (a bit too long though). […]

          Hmm, this feels like a decision that will be bikeshed at specification time. I don't care either way at this point.

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 19
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Tue, 03 Oct 2017 18:32:58 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Ehsan Karamad (Gerrit)

      unread,
      Oct 4, 2017, 10:51:34 AM10/4/17
      to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      Thanks! PTAL.

      I also think we might need to relocate the layout test file to some other folder.

      View Change

      5 comments:

        • Is there such a thing as a non-thenable promise?

        • ScrollState doesn't represent an arbitrary gesture. […]

          Ack

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 21
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Wed, 04 Oct 2017 14:51:28 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Timothy Dresser (Gerrit)

      unread,
      Oct 4, 2017, 10:54:16 AM10/4/17
      to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      View Change

      1 comment:

        • Hmm..I believe the answer is no... […]

          Sorry, I didn't really say what I meant...

          I think this is redundant - let's just say "returns a Promise".

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 21
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Wed, 04 Oct 2017 14:54:10 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Ehsan Karamad (Gerrit)

      unread,
      Oct 4, 2017, 11:01:51 AM10/4/17
      to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      Thanks! PTAL.

      View Change

      1 comment:

        • Sorry, I didn't really say what I meant... […]

          Done

      To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

      Gerrit-Project: chromium/src
      Gerrit-Branch: master
      Gerrit-MessageType: comment
      Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
      Gerrit-Change-Number: 590497
      Gerrit-PatchSet: 22
      Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
      Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
      Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
      Gerrit-CC: Alexis Menard <alexis...@intel.com>
      Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
      Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
      Gerrit-CC: Justin Novosad <ju...@chromium.org>
      Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
      Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
      Gerrit-CC: Rob Buis <rob....@samsung.com>
      Gerrit-CC: Stephen Chenney <sche...@chromium.org>
      Gerrit-Comment-Date: Wed, 04 Oct 2017 15:01:44 +0000
      Gerrit-HasComments: Yes
      Gerrit-HasLabels: No

      Timothy Dresser (Gerrit)

      unread,
      Oct 4, 2017, 11:15:03 AM10/4/17
      to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

      LGTM, thanks.

      Patch set 22:Code-Review +1

      View Change

        To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

        Gerrit-Project: chromium/src
        Gerrit-Branch: master
        Gerrit-MessageType: comment
        Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
        Gerrit-Change-Number: 590497
        Gerrit-PatchSet: 22
        Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
        Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
        Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
        Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
        Gerrit-CC: Alexis Menard <alexis...@intel.com>
        Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
        Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
        Gerrit-CC: Justin Novosad <ju...@chromium.org>
        Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
        Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
        Gerrit-CC: Rob Buis <rob....@samsung.com>
        Gerrit-CC: Stephen Chenney <sche...@chromium.org>
        Gerrit-Comment-Date: Wed, 04 Oct 2017 15:14:58 +0000
        Gerrit-HasComments: No
        Gerrit-HasLabels: Yes

        Ehsan Karamad (Gerrit)

        unread,
        Oct 4, 2017, 11:18:40 AM10/4/17
        to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, David Bokan, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

        Thanks for the reviews!
        Adding owner reviewers:
        vollick@ for cc/
        boken@ for blink/

        PTAL.

        View Change

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 22
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Wed, 04 Oct 2017 15:18:35 +0000
          Gerrit-HasComments: No
          Gerrit-HasLabels: No

          David Bokan (Gerrit)

          unread,
          Oct 4, 2017, 11:49:12 AM10/4/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          This seems a little strange to me (why would an author install a handler if they don't want it called?) but I've missed all the discussion so I'm probably missing the point. Could you point me to any explainer or web discussions that have been happening here?

          Also, I can stamp (once ready) for the scrolling bits in Blink but I don't really understand anything in core/css so you'll probably want to find a reviewer that can vouch for correctness there.

          View Change

          2 comments:

          • Commit Message:

            • Patch Set #20, Line 10: scroll customization unnecessary calls to apply/distributeScroll handles

              nit: scroll-customization, unnecessary calls to apply/distributeScroll handlers

          • File third_party/WebKit/Source/core/dom/Element.cpp:

            • Patch Set #20, Line 731: !has_scroll_customization_for_gesture

              So if I'm understanding this API correctly, unless the author sets a `scroll-customization` value, it'll default to None in which case we won't call any of the installed handlers. Is that correct?

              I suspect in its current form, this will break viewport actions. Overscroll glow and URL bar movement occur through an ApplyScroll installed by Blink on the HTML element (and changeable by document.rootScroller). You'd need to either apply an exception here for Element that is the TopDocumentRootScrollerController::GlobalRootScroller or modify TDRSC to also set this property correctly.

              Have you run this through the try bots? I'd be interested to know if they miss this since that'd imply lacking test coverage.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 22
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Wed, 04 Oct 2017 15:49:06 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Ehsan Karamad (Gerrit)

          unread,
          Oct 4, 2017, 1:37:15 PM10/4/17
          to Timothy Dresser, David Bokan, Ian Vollick, Majid Valipour, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, chromium...@chromium.org, Dongseong Hwang, Rob Buis, Alexis Menard, Dirk Schulze, Pavel Feldman

          Ehsan Karamad uploaded patch set #23 to this change.

          View Change

          Introduce ScrollCustomization Property

          This CL introduces the CSS property, 'scroll-customization'. Through
          modifying scroll-customization, unnecessary calls to apply/distributeScroll handles

          can be avoided.

          This CL implements the logic inside blinks main thread. If an scrollable node
          has customized scrolling handlers, it can further specify which class
          of gestures it is interested for custom scrolling.

          The list of valid values for customization includes 'auto', 'pan-x',
          'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down'.

          This CL will eventually be followed up by changes to the compositor layer
          so that for nodes with custom scroll, the scroll events corresponding
          not allowed through scroll customization do not get sent to the main thread.

          Bug: 765326

          Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
          Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          ---
          M cc/BUILD.gn
          A cc/input/scroll_customization.cc
          A cc/input/scroll_customization.h
          A third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html
          M third_party/WebKit/Source/core/BUILD.gn
          M third_party/WebKit/Source/core/css/BUILD.gn
          M third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
          M third_party/WebKit/Source/core/css/CSSProperties.json5
          M third_party/WebKit/Source/core/css/CSSValueKeywords.json5
          M third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp
          M third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp

          A third_party/WebKit/Source/core/css/properties/CSSPropertyAPIScrollCustomization.cpp
          M third_party/WebKit/Source/core/dom/Element.cpp
          M third_party/WebKit/Source/core/frame/UseCounter.cpp
          M third_party/WebKit/Source/core/page/scrolling/ScrollState.h
          M third_party/WebKit/Source/devtools/front_end/sdk/CSSMetadata.js
          M third_party/WebKit/Source/platform/BUILD.gn
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.h
          M tools/metrics/histograms/enums.xml
          20 files changed, 579 insertions(+), 6 deletions(-)

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: newpatchset
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 23
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 10:39:38 AM10/5/17
          to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Commit Bot, David Bokan, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Thanks for reviews! PTAL.

          There seems to be a scroll customization test which is still failing. I need to investigate that. I also left two comments regarding how we could consider scroll-customization in some cases (need feedback), Thanks!

          View Change

          4 comments:

          • Commit Message:

            • Patch Set #20, Line 10: modifying scroll-customization, unnecessary calls to apply/distributeScr

              nit: scroll-customization, unnecessary calls to apply/distributeScroll handlers

              Thanks. Done.

          • File third_party/WebKit/Source/core/dom/Element.cpp:

            • Patch Set #20, Line 731: llStateCallback* callback =

              So if I'm understanding this API correctly, unless the author sets a `scroll-customization` value, i […]

              I ran the trybots based on this (old) patch. Couple of tests failed mostly due to rootScroller issue you mentioned.

              In the most recent patch I am ignoring customization if the element is GlobalRootScroller().

          • File third_party/WebKit/Source/core/dom/Element.cpp:

            • Patch Set #26, Line 196: if (direction == ScrollCustomizationEnabledDirection::kNone) {

              This is not correct and I am thinking about a more rigorous less hacky solution. The issue I am observing is that sometimes when |scroll_state.isBeginning/Ending()| is true the deltas are 0.00 which makes it impossible to determine the direction.

              Supposedly if the isBeginning() case can be determined, we 'could' hold a state here, say |element_in_custom_scroll_| and return true when the element is in scroll and the scroll state isEnding() is true (regardless of the direction).

            • Patch Set #26, Line 745: !RuntimeEnabledFeatures::ScrollCustomizationEnabled() ||

              Is there any scenario where applyScroll or distributeScroll exist without ScrollCustomizationEnabled()? If so then this seems to be necessary.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 26
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 14:39:33 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          David Bokan (Gerrit)

          unread,
          Oct 5, 2017, 11:20:40 AM10/5/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Sahel Sharifymoghaddam, Alexandre Elias, Commit Bot, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Thanks, this looks better but I'll wait until you figure out the breaking test.

          View Change

          4 comments:

            • This is not correct and I am thinking about a more rigorous less hacky solution. […]

              +sahel@ has some insight into when we don't get direction in Begin and had to make this work for latching. She might be able to shed some light on how to fix this.

            • Is there any scenario where applyScroll or distributeScroll exist without ScrollCustomizationEnabled […]

              Yes, the viewport sets the ViewportScrollCallback on the <html> Element as the applyScroll callback, even if ScrollCustomization isn't enabled (i.e. the web-facing API).

            • Patch Set #26, Line 746:

              GetDocument()
              .GetPage()
              ->GlobalRootScrollerController()
              .Globa

              Please add this as an overload of RootScrollerUtil::IsGlobal and use that. It'll make the code here more readable and it'll help me keep track of all the places we have exceptions for RootScroller as I move stuff around.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 26
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 15:20:33 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 2:03:05 PM10/5/17
          to Timothy Dresser, David Bokan, Ian Vollick, Majid Valipour, Sahel Sharifymoghaddam, Alexandre Elias, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, chromium...@chromium.org, Dongseong Hwang, Rob Buis, Commit Bot, Alexis Menard, Dirk Schulze, Pavel Feldman

          Ehsan Karamad uploaded patch set #27 to this change.

          View Change

          Introduce ScrollCustomization Property

          This CL introduces the CSS property, 'scroll-customization'. Through
          modifying scroll-customization, unnecessary calls to apply/distributeScroll
          handlers can be avoided.


          This CL implements the logic inside blinks main thread. If an scrollable node
          has customized scrolling handlers, it can further specify which class
          of gestures it is interested for custom scrolling.

          The list of valid values for customization includes 'auto', 'pan-x',
          'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down'.

          This CL will eventually be followed up by changes to the compositor layer
          so that for nodes with custom scroll, the scroll events corresponding
          not allowed through scroll customization do not get sent to the main thread.

          Bug: 765326

          Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
          Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          ---
          M cc/BUILD.gn
          A cc/input/scroll_customization.cc
          A cc/input/scroll_customization.h
          M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scrollstate-distribute-to-scroll-chain-descendant.html
          M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/touch-scroll-customization.html

          A third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html
          M third_party/WebKit/Source/core/BUILD.gn
          M third_party/WebKit/Source/core/css/BUILD.gn
          M third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
          M third_party/WebKit/Source/core/css/CSSProperties.json5
          M third_party/WebKit/Source/core/css/CSSValueKeywords.json5
          M third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp
          M third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp

          A third_party/WebKit/Source/core/css/properties/CSSPropertyAPIScrollCustomization.cpp
          M third_party/WebKit/Source/core/dom/Element.cpp
          M third_party/WebKit/Source/core/frame/UseCounter.cpp
          M third_party/WebKit/Source/core/page/scrolling/ScrollState.h
          M third_party/WebKit/Source/devtools/front_end/sdk/CSSMetadata.js
          M third_party/WebKit/Source/platform/BUILD.gn
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.h
          M tools/metrics/histograms/enums.xml
          22 files changed, 606 insertions(+), 6 deletions(-)

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: newpatchset
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 27
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 2:13:50 PM10/5/17
          to Timothy Dresser, David Bokan, Ian Vollick, Majid Valipour, Sahel Sharifymoghaddam, Alexandre Elias, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, chromium...@chromium.org, Dongseong Hwang, Rob Buis, Commit Bot, Alexis Menard, Dirk Schulze, Pavel Feldman

          Ehsan Karamad uploaded patch set #28 to this change.

          View Change

          Introduce ScrollCustomization Property

          This CL introduces the CSS property, 'scroll-customization'. Through
          modifying scroll-customization, unnecessary calls to apply/distributeScroll
          handlers can be avoided.

          This CL implements the logic inside blink's main thread. If an scrollable

          node has customized scrolling handlers, it can further specify which class
          of gestures it is interested in for custom scrolling.


          The list of valid values for customization includes 'auto', 'pan-x',
          'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down', and 'none'.
          The default value is 'none' (any node interested in customized scroll
          handlers should specify that).

          For RootScroller we ignore customized scroll as it will regress certain
          features which depend on global RootScroller.


          This CL will eventually be followed up by changes to the compositor layer
          so that for nodes with custom scroll, the scroll events corresponding
          not allowed through scroll customization do not get sent to the main thread.

          Bug: 765326

          Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
          Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          ---
          M cc/BUILD.gn
          A cc/input/scroll_customization.cc
          A cc/input/scroll_customization.h
          M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scrollstate-distribute-to-scroll-chain-descendant.html
          M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/touch-scroll-customization.html

          A third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization-property.html
          M third_party/WebKit/Source/core/BUILD.gn
          M third_party/WebKit/Source/core/css/BUILD.gn
          M third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
          M third_party/WebKit/Source/core/css/CSSProperties.json5
          M third_party/WebKit/Source/core/css/CSSValueKeywords.json5
          M third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp
          M third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp

          A third_party/WebKit/Source/core/css/properties/CSSPropertyAPIScrollCustomization.cpp
          M third_party/WebKit/Source/core/dom/Element.cpp
          M third_party/WebKit/Source/core/frame/UseCounter.cpp
          M third_party/WebKit/Source/core/page/scrolling/ScrollState.h
          M third_party/WebKit/Source/devtools/front_end/sdk/CSSMetadata.js
          M third_party/WebKit/Source/platform/BUILD.gn
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp
          A third_party/WebKit/Source/platform/scroll/ScrollCustomization.h
          M tools/metrics/histograms/enums.xml
          22 files changed, 606 insertions(+), 6 deletions(-)

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: newpatchset
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 28
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 2:18:19 PM10/5/17
          to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Sahel Sharifymoghaddam, Alexandre Elias, David Bokan, Commit Bot, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Thanks David. I am still poking at the failing test:
          'scrollstate-distribute-to-scroll-chain-descendant.html' where there seems to be
          a crash on around line 39: "scrollState.distributeToScrollChainDescendant()".

          Also I will wait for feedback on eventSender.* as well as the (0, 0) case for deltas in scrollBegin/end. Thanks!

          View Change

          4 comments:

            • +sahel@ has some insight into when we don't get direction in Begin and had to make this work for lat […]

              This is one (or the?) case when this happens; specifically in the context of "touch-scroll-customization.html" test which relies on eventSender.gestureScrollBegin.

              https://cs.chromium.org/chromium/src/content/shell/test_runner/event_sender.cc?rcl=eef344fe33e64b9b43ce2ca53c21f5f8edf79e97&l=2360

              If this is possibly the only reason behind (0,0) deltas, I believe we should fix the event synthesizing code to setup some gesture direction or perhaps even pass it as parameters to eventSender.gestureScrollBegin. The only issue is that I guess eventSender stuff are deprecated(?).

            • Yes, the viewport sets the ViewportScrollCallback on the <html> Element as the applyScroll callback, […]

              Ack

            • Please add this as an overload of RootScrollerUtil::IsGlobal and use that. […]

              Yes good idea. Done!

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 28
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 18:18:12 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Alexandre Elias (Gerrit)

          unread,
          Oct 5, 2017, 3:46:16 PM10/5/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          View Change

          1 comment:

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 29
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 19:46:10 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 5:27:19 PM10/5/17
          to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Thanks. PTAL at the new tests. (still investigating the test failure).

          View Change

          1 comment:

            • https://developer.mozilla. […]

              Thanks. I think the way the property parsing is implemented is similar to that of 'touch-action'. I added new test cases here as well as unit tests to CSSPropertyParserTest.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 31
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 21:27:11 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Ehsan Karamad (Gerrit)

          unread,
          Oct 5, 2017, 6:13:29 PM10/5/17
          to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Ian Vollick, Timothy Dresser, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Tests fixed with two questions for tdresser@ who was the test author.
          PTAL.

          View Change

          2 comments:

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 32
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Thu, 05 Oct 2017 22:13:24 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Timothy Dresser (Gerrit)

          unread,
          Oct 6, 2017, 10:15:52 AM10/6/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Ian Vollick, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          View Change

          3 comments:

            • Patch Set #32, Line 30: element.style.scrollCustomization = 'auto';

              Are these changes OK, or do we really have to support unattached elements?

            • I think so, in the same way as it makes sense to set a style for an object that isn't attached yet.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 32
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Fri, 06 Oct 2017 14:15:47 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Ian Vollick (Gerrit)

          unread,
          Oct 6, 2017, 8:03:33 PM10/6/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Majid Valipour, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          View Change

          1 comment:

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 32
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Sat, 07 Oct 2017 00:03:28 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Majid Valipour (Gerrit)

          unread,
          Oct 18, 2017, 3:48:55 PM10/18/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, Timothy Dresser, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          View Change

          1 comment:

            • I think so, in the same way as it makes sense to set a style for an object that isn't attached yet.

              Can you actually ave style for un-attached object?
              Both these return empty string "":
              > getComputedStyle(document.createElement("div")).overflow
              > var el = document.createElement("div"); el.style.overflow="visible"; getComputedStyle(el).overflow

              To me this test feels a bit artificial given that it creates the
              scroll chain using an internal method. In practice, will we ever
              end up customizing scroll on an unattached element? Those element
              are never target of a scroll gesture.

              Given this I am not sure if we should go out of our way to support
              this property on un-attached elements.

          To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

          Gerrit-Project: chromium/src
          Gerrit-Branch: master
          Gerrit-MessageType: comment
          Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
          Gerrit-Change-Number: 590497
          Gerrit-PatchSet: 32
          Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
          Gerrit-Reviewer: David Bokan <bo...@chromium.org>
          Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
          Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
          Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
          Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
          Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
          Gerrit-CC: Alexis Menard <alexis...@intel.com>
          Gerrit-CC: Commit Bot <commi...@chromium.org>
          Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
          Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
          Gerrit-CC: Justin Novosad <ju...@chromium.org>
          Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
          Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
          Gerrit-CC: Rob Buis <rob....@samsung.com>
          Gerrit-CC: Stephen Chenney <sche...@chromium.org>
          Gerrit-Comment-Date: Wed, 18 Oct 2017 19:48:50 +0000
          Gerrit-HasComments: Yes
          Gerrit-HasLabels: No

          Timothy Dresser (Gerrit)

          unread,
          Oct 19, 2017, 8:23:50 AM10/19/17
          to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

          Patch Set 32:

          (1 comment)

          See an example of why this matters here:
          https://output.jsbin.com/rivawug/quiet

          If I'm creating an element, I can style it before or after I attach it. You're right that it doesn't matter until it's attached, but it's still important to allow doing things in this order.

          In the same way, I should be able to customize scroll on an element before or after it's attached.

          Patch set 32:-Code-Review

          View Change

            To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

            Gerrit-Project: chromium/src
            Gerrit-Branch: master
            Gerrit-MessageType: comment
            Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
            Gerrit-Change-Number: 590497
            Gerrit-PatchSet: 32
            Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
            Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
            Gerrit-Reviewer: David Bokan <bo...@chromium.org>
            Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
            Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
            Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
            Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
            Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
            Gerrit-CC: Alexis Menard <alexis...@intel.com>
            Gerrit-CC: Commit Bot <commi...@chromium.org>
            Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
            Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
            Gerrit-CC: Justin Novosad <ju...@chromium.org>
            Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
            Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
            Gerrit-CC: Rob Buis <rob....@samsung.com>
            Gerrit-CC: Stephen Chenney <sche...@chromium.org>
            Gerrit-Comment-Date: Thu, 19 Oct 2017 12:23:45 +0000
            Gerrit-HasComments: No
            Gerrit-HasLabels: Yes

            Ehsan Karamad (Gerrit)

            unread,
            Oct 19, 2017, 10:02:37 AM10/19/17
            to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

            Patch Set 32: -Code-Review

            Patch Set 32:

            (1 comment)

            See an example of why this matters here:
            https://output.jsbin.com/rivawug/quiet

            If I'm creating an element, I can style it before or after I attach it. You're right that it doesn't matter until it's attached, but it's still important to allow doing things in this order.

            In the same way, I should be able to customize scroll on an element before or after it's attached.

            I think the issue is mostly "calling" the handlers on unattached elements. I do agree we can setup properties and handlers before attaching - but the handlers should not get called before being attached. Specifically scrolling which is input related.

            View Change

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 32
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Thu, 19 Oct 2017 14:02:32 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: No

              Timothy Dresser (Gerrit)

              unread,
              Oct 19, 2017, 10:17:25 AM10/19/17
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Patch Set 32:

              Patch Set 32: -Code-Review

              Patch Set 32:

              (1 comment)

              See an example of why this matters here:
              https://output.jsbin.com/rivawug/quiet

              If I'm creating an element, I can style it before or after I attach it. You're right that it doesn't matter until it's attached, but it's still important to allow doing things in this order.

              In the same way, I should be able to customize scroll on an element before or after it's attached.

              I think the issue is mostly "calling" the handlers on unattached elements. I do agree we can setup properties and handlers before attaching - but the handlers should not get called before being attached. Specifically scrolling which is input related.

              I agree we shouldn't have handlers called before we're attached. You're right, I was incorrectly thinking about handler registration, and others were correctly thinking about handler execution. Sorry about that!

              Gerrit-Comment-Date: Thu, 19 Oct 2017 14:17:19 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Oct 20, 2017, 3:01:55 PM10/20/17
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dari...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, jochen...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, mlamouri+wa...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, David Bokan, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Thanks. PTAL.

              Also adding rbyres@ for 'event_sender.cc' changes. PTAL.

              View Change

              4 comments:

                • Most styling can be applied before an element is attached, right? […]

                  I guess as things are right now we can set the 'scroll-customization' style for unattached elements. So this should be fine.

                • Without this line the test fails. I believe the style is not setup properly. If we remove this line and instead load the tests after window.onload they pass. But dropping this line does not setup the style properly.

              • File third_party/WebKit/Source/core/dom/Element.cpp:

                • Patch Set #26, Line 196: scroll_state.effectiveDeltaY());

                  This is one (or the?) case when this happens; specifically in the context of "touch-scroll-customiza […]

                  I changed eventSender's API to support providing deltas for gestureScrollBegin and gestureScrollEnd.

                  Alternatively, I could modify the test touch-scroll-customization.html which was failing due to this root cause and migrate it to using gpuBenchmarking.pointerActionSequence API (the same as the newly added test scroll-customization-property.html). But I think the fact that eventSender.gestureScrollBegin forces the deltas to 0 is not correct.

                  The tests should be fine now and lines 196-198 are removed.

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 33
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Fri, 20 Oct 2017 19:01:51 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Oct 20, 2017, 3:45:33 PM10/20/17
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dari...@chromium.org, dglazko...@chromium.org, eae+bli...@chromium.org, jochen...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, mlamouri+wa...@chromium.org, pfeldma...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              12 comments:

              Gerrit-Comment-Date: Fri, 20 Oct 2017 19:45:28 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Nov 24, 2017, 10:07:34 AM11/24/17
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, David Bokan, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Sorry for the long delay in sending the new CL. The design around filtering scroll events changed a bit (following discussions with David and Majid).

              Ptal.

              View Change

              12 comments:

                • Patch Set #33, Line 14: crbug.com/410974 virtual/scroll_customization/fast/scroll-behavior/scroll-customization/scroll-customization-property.html [ Leak ]

                  Why does the test leak? We shouldn't commit a leaky test/CL.

                • itle> Scroll Customization Property </title>
                  <scri

                  Blink LayoutTest style is to omit <html> <head> and <body> tags. See https://chromium.googlesource. […]

                  Thanks I vaguely remembered this (perhaps you'd told me :)) but was not sure. Done.

                • Does the body have to be scrollable? And if so, should it be horizontally scrollable too?

                  I believe not. We are only interested in class="a" div and whether or not the handlers are called. Thanks for catching these. :)

                • Patch Set #33, Line 42: element.d

                • Check for the internals object before calling.

                • Done...but do we need to assert it too?

                • Patch Set #33, Line 145: andler = false;

                  This should be didCallDistributeScrollHandler

                  Yes. Thanks.

                • This is separate from whether we have a customization (i.e. […]

                  Good point. How about changing this to "should_consider_scroll_customization" and then adding IsScrollCustomized(this, scroll_state) to the conditional on line 653, instead?

              • File tools/metrics/histograms/enums.xml:

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 44
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Fri, 24 Nov 2017 15:07:26 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Dec 14, 2017, 11:32:56 AM12/14/17
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, David Bokan, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Pinging David :). PTAL. Thanks!

              View Change

              Gerrit-Comment-Date: Thu, 14 Dec 2017 16:32:51 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Dec 15, 2017, 12:08:16 PM12/15/17
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Apologies for the delay.

              View Change

              14 comments:

                • I just repeated what we have done for other ScrollCustomization tests here. […]

                  But it fails without the flag? If that's the case the tests should live in LayoutTests/virtual/scroll_customization so they only run with the flag. Could you find out why these are all here and if the reason is just because of the flag behavior we can move them in a separate patch. Otherwise, please add a comment above explaining why all scroll-customization tests are allowed to be flaky.

              • File third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scroll-customization-property.html:

                • Patch Set #33, Line 42: element.d

                  Done... […]

                  No, we usually like that layout tests can be open and run in a live browser. In cases where you need internals, at the least we just don't want JS errors.

                • Hmm....right. I know it is not ideal but if we do not use "chrome. […]

                  I replied on the new patch.

              • File third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scroll-customization-property.html:

                • Patch Set #44, Line 29:

                  test(function() {
                  assert_true('ScrollState' in window, "'ScrollState' in window");
                  }, 'These tests only work with scroll customization enabled.')

                  Lets add asserts here for internals and gpuBenchmarking that output a message to make it clear that this test only works in content shell with these enabled. You can then remove the checks below I think (a failing assert throws IIRC).

                • Patch Set #44, Line 56: // [scroll customization, gesture, scroll customization handler

                  You can shorten the distance between columns to make this comment fit in 80 cols

                • Patch Set #44, Line 180: deltaX * 2), y : (deltaY * 2)

                  Is this realistic? Does an Up also include some delta that isn't represented in a Move? Would it hurt to just have pointerUp at (deltaX, deltaY)?

                • Patch Set #44, Line 191: element.scrollCustomization

                  shouldn't this be `element.style.scrollCustomization`?

                • Patch Set #44, Line 196: Invalid behavior for gesture input "${testCase[1]}" and scroll customization "${testCase[0]}

                  You already specify testCase[0] and testCase[1] in the test()'s description. This should probably state whether the case expected customization callbacks to be called and whether they were or not.

              • File third_party/WebKit/Source/core/dom/Element.cpp:

                • Good point. […]

                  sgtm.

              • File third_party/WebKit/Source/core/dom/Element.cpp:

                • Patch Set #44, Line 620: !GetScrollCustomizationCallbacks().InScrollPhase(this);

                  This "in scroll phase" state is new. What is the consequence of not having it? It seems that we flip this bit on everything in the scroll chain at scroll begin - how can we get here if we're not in the scroll chain and thus have the bit flipped?

                • Patch Set #44, Line 3254:

                  scroll_customization != ScrollCustomizationEnabledDirection::kNone &&
                  ((scroll_customization == ScrollCustomizationEnabledDirection::kAuto)

                  You shouldn't need to separate the None case explicitly here - it'll be handled correctly by the bitfield check.

                  Auto would as well except for the case where deltaX and deltaY are both < the epsilon. Do we really want to start a scroll phase if the delta hint has no direction?

              • File third_party/WebKit/Source/core/input/ScrollManager.cpp:

              Gerrit-Comment-Date: Fri, 15 Dec 2017 17:08:13 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 11, 2018, 12:08:01 PM1/11/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Thanks David and sorry it took this long. I noticed some fundamental issues with the test but now it is fixed. I tried to pinpoint the important issues and changes. PTAL.

              View Change

              14 comments:

                • I don't necessarily have a strong opinion here, but IMO, if you're going to be using values as a bit […]

                  I like changing it to int type. But first to understand your suggestion properly, the "type_name" should become uint8_t and then keep these values as constants as:

                  namespace cc {
                  const uint8_t kScrollCustomizationEnabledDirectionNone = 0;
                  ...
                  }

                  or maybe in its own namespace or a struct?

              • File third_party/WebKit/LayoutTests/TestExpectations:

                • But it fails without the flag? If that's the case the tests should live in LayoutTests/virtual/scroll_customization so they only run with the flag. Could you find out why these are all here and if the reason is just because of the flag behavior we can move them in a separate patch. Otherwise, please add a comment above explaining why all scroll-customization tests are allowed to be flaky.

                • top: 1000px;
                  }

                  Lets add asserts here for internals and gpuBenchmarking that output a message to make it clear that […]

                  Done

                • Patch Set #44, Line 56: var testCases = [

                • You can shorten the distance between columns to make this comment fit in 80 cols

                • Done. Thanks for the suggestion.

                • Yes. We now decide whether a scroll direction matches the property during GestureScrollBegin. If so |InScrollPhase(this)| returns true. This is also done for each scroll phase and for all the elements inside the scroll chain. The InScrollPhase() will return false after GestureScrollEnd.

                • What is the consequence of not having it?

                • The callbacks will not get invoked.

                • It seems that we flip this bit on everything in the scroll chain at scroll begin

                • Yes. The bit is flipped for all elements inside the chain whose customization matches the scrollBegin's direction.

                • how can we get here if we're not in the scroll chain and thus have the bit flipped?

                • I don't think we get here if not on scroll chain already.

                • turn GetElementRareData()->IntersectionObserverData();
                  return nullptr;

                • You shouldn't need to separate the None case explicitly here - it'll be handled correctly by the bitfield check.

                • Yes agreed. I ended up simplifying this whole method quite a bit; starting with the fact that we do not actually need |scroll_state|. I am passing the direction now. This would save computing it every time for each node on the scroll chain.

                • Auto would as well except for the case where deltaX and deltaY are both < the epsilon. Do we really want to start a scroll phase if the delta hint has no direction?

                • This was intentional originally. Please look at scroll_customization.cc and the new definition of GetScrollCustomizationForDirection().

                  Essentially, there is a bunch of places where delta hints are 0 -- most important of all is 'touch-scroll-customization.html' which uses eventSender.gestureScrollBegin (it does not take deltas).

                  At first I tried changing eventSender so that delta hints could be passed as arguments. This revealed another problem however: in ScrollManager::CanScroll we currently return true 'true' when hints are zero. Because of that, all the <div>'s in touch-scroll-customization.html end up on the scroll chain automatically (while they shouldn't have normally since their scrollTop and scrollLeft are not properly setup for the purpose). I talked to sahel@ about this and apparently this problem exists in some "20 or so layout tests". So removal of the early return code in CanScroll() should perhaps be done in another CL. Also, to modify 'touch-scroll-customization.html' such that it won't rely on deltas = 0 proved to be problematic as the tests in the file might need to be adjusted accordingly -- perhaps even moved to using gpuBenchmarking.pointerActionSequence might lead to a re-write of most of the tests.

                  To conclude the story, I now duplicated the hack (:P) in scroll_customization.cc where we decide the direction is kAuto when deltas are zero. I am happy to followup on this matter in an upcoming patch and revise touch-scroll-customization.html for that matter.

              • File third_party/WebKit/Source/core/input/ScrollManager.cpp:

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 48
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Thu, 11 Jan 2018 17:07:58 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 11, 2018, 2:45:00 PM1/11/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Patch set 48:Code-Review +1

              View Change

              Gerrit-Comment-Date: Thu, 11 Jan 2018 19:44:59 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: Yes

              Ehsan Karamad (Gerrit)

              unread,
              Jan 11, 2018, 2:45:22 PM1/11/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              This change is ready for review.

              Gerrit-Comment-Date: Thu, 11 Jan 2018 19:45:18 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Jan 12, 2018, 2:37:00 PM1/12/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, cc-...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              12 comments:

                • This is my way of making sure the <div> can actually scroll in all 4 directions (by scrolling p1 int […]

                  I would just add a <div id="spacer" style="width: 1000px; height: 1000px></div> inside. Then reset the scrollLeft and scrollTop to 300px explicitly. (or calculate it using (scrollWidth - clientWidth)/2).

                • Patch Set #48, Line 45: These

                  Nit: gpuBenchmarking should be here too.

                • > This "in scroll phase" state is new. […]

                  Ok, I think I get how it works but let me confirm with an example. Lets say you have:

                    <div id="A"> scroll-customization: pan-x
                  <div id="B"> scroll-customization: pan-y
                  <div id="C"> scroll-customization: pan-x

                  If we do a horizontal scroll over C, we'll execute the handlers for C and A but not B, right?

                  What if we start a horizontal scroll but then switch to vertical, in that case it still won't execute the handler for B but will for A and C. Is this the intended behavior?

              Gerrit-Comment-Date: Fri, 12 Jan 2018 19:36:44 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 15, 2018, 6:04:33 PM1/15/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Thanks Daivd. PTAL.

              View Change

              12 comments:

                • Sure, uint8_t and putting it in a namespace sgtm. Please use the pattern: […]

                  Done. but I added the change to platform/scroll/ScrollCustomization.h/cpp and removed this file. Looking at the CL again we are not doing anything cc-related right now. The objective of having scroll-customization inside cc/ would be a future work and perhaps we could add cc/input/scroll_customization.h/cc later?

              • File third_party/WebKit/LayoutTests/TestExpectations:

                • Patch Set #33, Line 650: crbug.com/635619 virtual/layout_ng/external/wpt/css/CSS2/positioning/abspos-inline-004.xht [ Skip ]

                  I don't think that's good practice and I don't see that suggested in the doc (I suppose it doesn't m […]

                  Thanks for the detailed explanation. What I had done before is somewhat mentioned in the doc listed. But regardless, your explanation makes sense, esp. about the part about the bots. I moved the test to virtual/ and made the required modifications.

              • File third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scroll-customization-property.html:

                • I would just add a <div id="spacer" style="width: 1000px; height: 1000px></div> inside. […]

                  Thanks for the suggestion! Done.

                • Nit: gpuBenchmarking should be here too.

                  Yes I forgot. Thanks!

                • Ack. […]

                  You are right. I think the this one is not necessary. I only need the one before 'pointerUp'. Thanks!

                  That being said, is it still considered to be a bug? i.e., having to put in a pause in between (as opposed to this just being a the need for more explicit documentation about pointerActionSequence). If so I will add the bug number here.

              • File third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scrollstate-distribute-to-scroll-chain-descendant.html:

                • Patch Set #48, Line 61: propagatesCorrectlyTest = async_test("distributeToScrollChainDescendan

                  document.body is guaranteed to be valid in every way during window. […]

                  Ack. But I was getting an exception due to document.body being nullptr before. This is change is mainly for the setup phase which has to run after window.onload. I think the tests themselves, as you said, will run after onload.

                • Patch Set #48, Line 89: emptyScrollChainTestLogic();

                • I'm not sure what our policy on console.log in tests is but I would remove these.

                • Ok, I think I get how it works but let me confirm with an example. Lets say you have: […]

                  Yes. This is the intended behavior. We only consider GestureScrollBegin. So any update until the very next GestureScrollEnd will be sent to any node whose customization matches the direction of GestureScrollBegin.

                  One other alternative would have been to do per-GSUpdate filtering. But that might lead to some complications. For example, what if we start vertical and then go horizontal. The scrolling for A and C will not have a GSB. Also, how call GSE for such gestures is unclear.

                  A third option would have been inserting GSE + GSB whenever the direction of update changes (to dissect a gesture into a series of up,down, left, and right gestures. But that would maybe break stuff (i.e., multiple gesture scroll begins before user lifts their finger).

                  There is some comments about this in the document. But the doc is google.com only.
                  majidvp@: I think we should make it available to chromium.org and add the link to the CL?

              • File third_party/WebKit/Source/core/input/ScrollManager.cpp:

                • Patch Set #50, Line 754: scroll_customization::ScrollDirection direction =

                  Is this against blink formatting? I ended up with presubmit errors in all such occurrences. If that is the case, then I guess the idea of 'int' inside namespace might not quite work. Maybe revert to enum or use a struct instead?

              • File third_party/WebKit/Source/core/page/scrolling/ScrollCustomizationCallbacks.cpp:

                • Nit: All these should now be 2018

                • Ack

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 50
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Mon, 15 Jan 2018 23:04:31 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Jan 17, 2018, 8:19:11 AM1/17/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Sorry for the delay, meant to get to this yesterday but got sidetracked.

              View Change

              10 comments:

                • Ack. But I was getting an exception due to document.body being nullptr before. […]

                  Ah, yeah, since there's no displayed elements (e.g. <div>) above, any script run here will be run before <body> is created. But since you're calling it from onload I'd expect there to be a body by then. In any case, that's just FYI - looks good to me.

                • I am basically making sure the test runs after window.onload event. So I broke it up like this. […]

                  You mean during the onload event, right? My understanding is that a non-async tests are for cases where the test can complete in the load handler, like this. async_test is for tests that need to do something after load (e.g. requestAnimationFrame, event listeners, etc). It should be fairly straightforward to convert to non-async so I'd suggest trying that but if you're still having issues and it's drawing too much time this is fine too.

              • File third_party/WebKit/Source/core/dom/Element.cpp:

                • Is this against blink formatting? I ended up with presubmit errors in all such occurrences. […]

                  I can't see why it would be, what does the error say?

              • File third_party/WebKit/Source/platform/scroll/ScrollCustomization.h:

                • Patch Set #50, Line 11: scroll_customization

                  hmm...style guide says lower case but it looks out of place and most sub-namespaces in Blink code are CamelCase (couldn't find any with an underscore). I'd make this CamelCase to maintain consistency.

                • Patch Set #50, Line 12: using ScrollDirection = unsigned char;

                  I get a strange compile error for "uint8_t". "unsigned char" works.

                • IIRC style guide explicitly forbids relying on non uintX_t types if you need a specific width. Did you include <stdint.h>? platform/wtf/dtoa/utils.h includes that and does some defines on Windows which maybe is missing that so maybe that's better (though other examples like PODArena.h simply include stdint.h)?

                • Patch Set #50, Line 14: const

                  These should be constexpr. Can we not just assign them in the header and remove PLATFORM_EXPORT? There's no reason these should be allocated and linked rather than just inlined.

              • File third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp:

              Gerrit-Comment-Date: Wed, 17 Jan 2018 13:19:09 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Navid Zolghadr (Gerrit)

              unread,
              Jan 17, 2018, 2:26:26 PM1/17/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              1 comment:

                • It's not a bug since that's how the gesture recognizer really works. […]

                  The bug that was filed was that when we were creating fling gesture the callback here was never called which is incorrect in any situation.
                  I prefer not to have that option for turning off fling though. I'm pretty sure this option will not be available in the webdriver version of these APIs and if you start using that here it wouldn't be easy to change this to use webdriver testing API.

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 51
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Wed, 17 Jan 2018 19:26:23 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Jan 17, 2018, 2:40:13 PM1/17/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              1 comment:

                • The bug that was filed was that when we were creating fling gesture the callback here was never call […]

                  It seems unreasonable to require each scroll to take at least 50ms and that won't scale. Whether or not web driver support for this is currently planned, WPT will eventually have to grapple with how to deal with this since if we were to move all our scrolling layout tests to use WebDriver in this form testing would slow to a crawl. e.g. This test takes ~5 *seconds* to run. Multiply that by the number of tests that will want to scroll.

                  One solution would be to write WPT with a "kScrollCoolDown" constant that browsers can tweak. If we can turn of fling generation we could ratchet that value down.

              Gerrit-Comment-Date: Wed, 17 Jan 2018 19:40:11 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 17, 2018, 3:04:24 PM1/17/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Timothy Dresser, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Thanks David. PTAL.

              View Change

              9 comments:

                • I can't see why it would be, what does the error say?

                • Thanks. Done.

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 52
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Wed, 17 Jan 2018 20:04:21 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Timothy Dresser (Gerrit)

              unread,
              Jan 17, 2018, 3:06:41 PM1/17/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              1 comment:

                • Patch Set #48, Line 195:

                  It seems unreasonable to require each scroll to take at least 50ms and that won't scale. […]

                • I agree with Navid that we shouldn't add a flag here. We should come up with some way of preventing fling that works in all browsers.

                  Bad idea: what about relying on the fact that key presses stop fling?
                  We could just hit the Ctrl key directly after the finger lifts?
                  Does that work in all browsers?

              Gerrit-Comment-Date: Wed, 17 Jan 2018 20:06:39 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Jan 18, 2018, 7:45:07 AM1/18/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              View Change

              3 comments:

              Gerrit-Comment-Date: Thu, 18 Jan 2018 12:45:03 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 18, 2018, 2:03:50 PM1/18/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, David Bokan, Timothy Dresser, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Thanks. PTAL.

              View Change

              3 comments:

                • constexpr just means the value is available at compile time so: […]

                  Ack

              To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

              Gerrit-Project: chromium/src
              Gerrit-Branch: master
              Gerrit-MessageType: comment
              Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
              Gerrit-Change-Number: 590497
              Gerrit-PatchSet: 53
              Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
              Gerrit-Reviewer: David Bokan <bo...@chromium.org>
              Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
              Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
              Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
              Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
              Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
              Gerrit-CC: Alexis Menard <alexis...@intel.com>
              Gerrit-CC: Commit Bot <commi...@chromium.org>
              Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
              Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
              Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
              Gerrit-CC: Justin Novosad <ju...@chromium.org>
              Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
              Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
              Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
              Gerrit-CC: Peter Beverloo <pe...@chromium.org>
              Gerrit-CC: Rob Buis <rob....@samsung.com>
              Gerrit-CC: Stephen Chenney <sche...@chromium.org>
              Gerrit-Comment-Date: Thu, 18 Jan 2018 19:03:47 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: No

              David Bokan (Gerrit)

              unread,
              Jan 18, 2018, 3:31:22 PM1/18/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Some nits but % those, lgtm!

              Patch set 53:Code-Review +1

              View Change

              2 comments:

              Gerrit-Comment-Date: Thu, 18 Jan 2018 20:31:19 +0000
              Gerrit-HasComments: Yes
              Gerrit-HasLabels: Yes

              David Bokan (Gerrit)

              unread,
              Jan 18, 2018, 3:31:55 PM1/18/18
              to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Also, my lgtm does not include anything in core/css. Please have a domain expert review those bits.

              View Change

              Gerrit-Comment-Date: Thu, 18 Jan 2018 20:31:53 +0000
              Gerrit-HasComments: No
              Gerrit-HasLabels: No

              Ehsan Karamad (Gerrit)

              unread,
              Jan 18, 2018, 3:40:11 PM1/18/18
              to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, nainar, David Bokan, Timothy Dresser, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

              Adding nainar@ for core/css reviews.

              PTAL.

              View Change

                To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                Gerrit-Project: chromium/src
                Gerrit-Branch: master
                Gerrit-MessageType: comment
                Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                Gerrit-Change-Number: 590497
                Gerrit-PatchSet: 53
                Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
                Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
                Gerrit-Reviewer: David Bokan <bo...@chromium.org>
                Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
                Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
                Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
                Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
                Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
                Gerrit-Reviewer: nainar <nai...@chromium.org>
                Gerrit-CC: Alexis Menard <alexis...@intel.com>
                Gerrit-CC: Commit Bot <commi...@chromium.org>
                Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
                Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
                Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
                Gerrit-CC: Justin Novosad <ju...@chromium.org>
                Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
                Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
                Gerrit-CC: Pavel Feldman <pfel...@chromium.org>
                Gerrit-CC: Peter Beverloo <pe...@chromium.org>
                Gerrit-CC: Rob Buis <rob....@samsung.com>
                Gerrit-CC: Stephen Chenney <sche...@chromium.org>
                Gerrit-Comment-Date: Thu, 18 Jan 2018 20:40:08 +0000
                Gerrit-HasComments: No
                Gerrit-HasLabels: No

                Timothy Dresser (Gerrit)

                unread,
                Jan 18, 2018, 3:59:08 PM1/18/18
                to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, nainar, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                View Change

                1 comment:

                  • That could be flaky (maybe not in this case) since where the scroll stops will be time dependent. […]

                    I can imagine a solution of:
                    Fling.
                    Key Press.
                    Reset scroll position.

                    Which should be non-flaky as long as long as we pick the right key to press.

                    I thought that setting scrollTop cancelled a fling, but that doesn't appear to be the case at this point.

                Gerrit-Comment-Date: Thu, 18 Jan 2018 20:59:06 +0000
                Gerrit-HasComments: Yes
                Gerrit-HasLabels: No

                Ehsan Karamad (Gerrit)

                unread,
                Jan 18, 2018, 4:22:51 PM1/18/18
                to Timothy Dresser, David Bokan, Ian Vollick, nainar, Majid Valipour, Sahel Sharifymoghaddam, Alexandre Elias, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, chromium...@chromium.org, Dongseong Hwang, John Abd-El-Malek, Pavel Feldman, Justin Novosad, Kenneth Rohde Christiansen, devtools...@chromium.org, Stephen Chenney, Navid Zolghadr, Rob Buis, Commit Bot, Alexis Menard, Dirk Schulze, Peter Beverloo

                Ehsan Karamad uploaded patch set #54 to this change.

                View Change

                Introduce ScrollCustomization Property

                This CL introduces the CSS property, 'scroll-customization'. Through
                modifying scroll-customization, unnecessary calls to apply/distributeScroll
                handlers can be avoided.

                This CL implements the logic inside blink's main thread. If an scrollable
                node has customized scrolling handlers, it can further specify which class
                of gestures it is interested in for custom scrolling.

                The list of valid values for customization includes 'auto', 'pan-x',
                'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down', and 'none'.
                The default value is 'none' (any node interested in customized scroll
                handlers should specify that).

                For RootScroller we ignore customized scroll as it will regress certain
                features which depend on global RootScroller.

                This CL will eventually be followed up by changes to the compositor layer
                so that for nodes with custom scroll, the scroll events corresponding
                not allowed through scroll customization do not get sent to the main thread.

                Link to document:
                https://docs.google.com/document/d/1fB524MG5SJpajou7QdulqklciCLWTcoGa9olkPzVQVo/edit#heading=h.2b398wn8pdq

                Bug: 765326
                Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel
                Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                ---
                M third_party/WebKit/LayoutTests/LeakExpectations
                M third_party/WebKit/LayoutTests/SlowTests
                M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/scrollstate-distribute-to-scroll-chain-descendant.html
                M third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-customization/touch-scroll-customization.html
                A third_party/WebKit/LayoutTests/virtual/scroll_customization/fast/scroll-behavior/scroll-customization/scroll-customization-property.html
                M third_party/WebKit/Source/core/BUILD.gn
                M third_party/WebKit/Source/core/css/BUILD.gn
                M third_party/WebKit/Source/core/css/CSSComputedStyleDeclaration.cpp
                M third_party/WebKit/Source/core/css/CSSPrimitiveValueMappings.h
                M third_party/WebKit/Source/core/css/CSSProperties.json5
                M third_party/WebKit/Source/core/css/CSSValueKeywords.json5
                M third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp
                M third_party/WebKit/Source/core/css/properties/ComputedStyleUtils.cpp
                M third_party/WebKit/Source/core/css/properties/ComputedStyleUtils.h
                A third_party/WebKit/Source/core/css/properties/longhands/ScrollCustomizationCustom.cpp
                M third_party/WebKit/Source/core/dom/Element.cpp
                M third_party/WebKit/Source/core/dom/Element.h
                M third_party/WebKit/Source/core/frame/UseCounter.cpp
                M third_party/WebKit/Source/core/input/ScrollManager.cpp
                M third_party/WebKit/Source/core/input/ScrollManager.h
                M third_party/WebKit/Source/core/page/scrolling/RootScrollerUtil.cpp
                M third_party/WebKit/Source/core/page/scrolling/RootScrollerUtil.h
                M third_party/WebKit/Source/core/page/scrolling/ScrollCustomizationCallbacks.cpp
                M third_party/WebKit/Source/core/page/scrolling/ScrollCustomizationCallbacks.h
                M third_party/WebKit/Source/core/page/scrolling/ScrollState.h
                M third_party/WebKit/Source/devtools/front_end/sdk/CSSMetadata.js
                M third_party/WebKit/Source/platform/BUILD.gn
                A third_party/WebKit/Source/platform/scroll/ScrollCustomization.cpp
                A third_party/WebKit/Source/platform/scroll/ScrollCustomization.h
                M tools/metrics/histograms/enums.xml
                30 files changed, 679 insertions(+), 43 deletions(-)

                To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                Gerrit-Project: chromium/src
                Gerrit-Branch: master
                Gerrit-MessageType: newpatchset
                Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                Gerrit-Change-Number: 590497
                Gerrit-PatchSet: 54

                nainar (Gerrit)

                unread,
                Jan 18, 2018, 6:10:19 PM1/18/18
                to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Pavel Feldman, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                core/css lgtm. You also have OWNERS lgtm on core/css thanks to bokan@'s review. :)

                Patch set 54:Code-Review +1

                View Change

                  To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                  Gerrit-Project: chromium/src
                  Gerrit-Branch: master
                  Gerrit-MessageType: comment
                  Gerrit-Comment-Date: Thu, 18 Jan 2018 23:10:11 +0000
                  Gerrit-HasComments: No
                  Gerrit-HasLabels: Yes

                  Ehsan Karamad (Gerrit)

                  unread,
                  Jan 19, 2018, 11:15:20 AM1/19/18
                  to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Pavel Feldman, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                  Thanks for the reviews.

                  I would need vollick@'s owner LGTM for platform/.

                  Adding pfeldman@ for CSSMetaData.js ownership review.

                  PTAL.

                  View Change

                  2 comments:

                    • Move this outside the test()

                    • If it works in the bots, I'd actually use stdint.h. […]

                      Worked on Linux. Will see how other platforms fare against Linux.

                  To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                  Gerrit-Project: chromium/src
                  Gerrit-Branch: master
                  Gerrit-MessageType: comment
                  Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                  Gerrit-Change-Number: 590497
                  Gerrit-PatchSet: 56
                  Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
                  Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
                  Gerrit-Reviewer: David Bokan <bo...@chromium.org>
                  Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
                  Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
                  Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
                  Gerrit-Reviewer: Pavel Feldman <pfel...@chromium.org>
                  Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
                  Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
                  Gerrit-Reviewer: nainar <nai...@chromium.org>
                  Gerrit-CC: Alexis Menard <alexis...@intel.com>
                  Gerrit-CC: Commit Bot <commi...@chromium.org>
                  Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
                  Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
                  Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
                  Gerrit-CC: Justin Novosad <ju...@chromium.org>
                  Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
                  Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
                  Gerrit-CC: Peter Beverloo <pe...@chromium.org>
                  Gerrit-CC: Rob Buis <rob....@samsung.com>
                  Gerrit-CC: Stephen Chenney <sche...@chromium.org>
                  Gerrit-Comment-Date: Fri, 19 Jan 2018 16:15:17 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-HasLabels: No

                  Pavel Feldman (Gerrit)

                  unread,
                  Jan 19, 2018, 1:15:32 PM1/19/18
                  to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                  devtools lgtm

                  View Change

                  Gerrit-Comment-Date: Fri, 19 Jan 2018 18:15:30 +0000
                  Gerrit-HasComments: No
                  Gerrit-HasLabels: No

                  Pavel Feldman (Gerrit)

                  unread,
                  Jan 19, 2018, 1:15:50 PM1/19/18
                  to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Ian Vollick, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                  Patch set 56:Code-Review +1

                  Gerrit-Comment-Date: Fri, 19 Jan 2018 18:15:48 +0000
                  Gerrit-HasComments: No
                  Gerrit-HasLabels: Yes

                  Ian Vollick (Gerrit)

                  unread,
                  Jan 19, 2018, 7:55:59 PM1/19/18
                  to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Pavel Feldman, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                  platform/ lgtm

                  Gerrit-Comment-Date: Sat, 20 Jan 2018 00:55:53 +0000
                  Gerrit-HasComments: No
                  Gerrit-HasLabels: Yes

                  Ehsan Karamad (Gerrit)

                  unread,
                  Jan 22, 2018, 1:32:50 PM1/22/18
                  to apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, Pavel Feldman, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Alexandre Elias, Sahel Sharifymoghaddam, Commit Bot, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                  Patch set 57:Commit-Queue +2

                  View Change

                    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                    Gerrit-Project: chromium/src
                    Gerrit-Branch: master
                    Gerrit-MessageType: comment
                    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                    Gerrit-Change-Number: 590497
                    Gerrit-PatchSet: 57
                    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
                    Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
                    Gerrit-Reviewer: David Bokan <bo...@chromium.org>
                    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
                    Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
                    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
                    Gerrit-Reviewer: Pavel Feldman <pfel...@chromium.org>
                    Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
                    Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
                    Gerrit-Reviewer: nainar <nai...@chromium.org>
                    Gerrit-CC: Alexis Menard <alexis...@intel.com>
                    Gerrit-CC: Commit Bot <commi...@chromium.org>
                    Gerrit-CC: Dirk Schulze <dsch...@chromium.org>
                    Gerrit-CC: Dongseong Hwang <dongseo...@intel.com>
                    Gerrit-CC: John Abd-El-Malek <j...@chromium.org>
                    Gerrit-CC: Justin Novosad <ju...@chromium.org>
                    Gerrit-CC: Kenneth Rohde Christiansen <kenneth.ch...@gmail.com>
                    Gerrit-CC: Navid Zolghadr <nzol...@chromium.org>
                    Gerrit-CC: Peter Beverloo <pe...@chromium.org>
                    Gerrit-CC: Rob Buis <rob....@samsung.com>
                    Gerrit-CC: Stephen Chenney <sche...@chromium.org>
                    Gerrit-Comment-Date: Mon, 22 Jan 2018 18:32:48 +0000
                    Gerrit-HasComments: No
                    Gerrit-HasLabels: Yes

                    Commit Bot (Gerrit)

                    unread,
                    Jan 22, 2018, 1:32:56 PM1/22/18
                    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, Pavel Feldman, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Alexandre Elias, Sahel Sharifymoghaddam, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                    CQ is trying the patch.

                    Note: The patchset sent to CQ was uploaded after this CL was approved.
                    "Disabled the test on Mac" https://chromium-review.googlesource.com/c/590497/57

                    Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/chromium-review.googlesource.com/590497/57

                    Bot data: {"action": "start", "triggered_at": "2018-01-22T18:32:48.0Z", "cq_cfg_revision": "a668b5363cd374a29ca0f46124c226e2e2aa21d9", "revision": "d52e34aa0ba51fc08887189c7f3dace5a439fbd0"}

                    Gerrit-Comment-Date: Mon, 22 Jan 2018 18:32:55 +0000
                    Gerrit-HasComments: No
                    Gerrit-HasLabels: No

                    Commit Bot (Gerrit)

                    unread,
                    Jan 22, 2018, 1:38:42 PM1/22/18
                    to Ehsan Karamad, apavlo...@chromium.org, asvitki...@chromium.org, blink-re...@chromium.org, blink-re...@chromium.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, caseq...@chromium.org, dtapuska+...@chromium.org, eae+bli...@chromium.org, kinuko...@chromium.org, kozyatins...@chromium.org, lushnik...@chromium.org, pfeldma...@chromium.org, cc-...@chromium.org, dglazko...@chromium.org, dari...@chromium.org, jochen...@chromium.org, mlamouri+wa...@chromium.org, blink-reviews-p...@chromium.org, drott+bl...@chromium.org, fmalit...@chromium.org, pdr+graphi...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, Ian Vollick, Pavel Feldman, nainar, Timothy Dresser, David Bokan, Navid Zolghadr, John Abd-El-Malek, Peter Beverloo, Majid Valipour, Alexandre Elias, Sahel Sharifymoghaddam, Kenneth Rohde Christiansen, devtools...@chromium.org, Dirk Schulze, Justin Novosad, Stephen Chenney, Alexis Menard, chromium...@chromium.org, Dongseong Hwang, Rob Buis

                    Commit Bot merged this change.

                    View Change

                    Approvals: Ian Vollick: Looks good to me David Bokan: Looks good to me Pavel Feldman: Looks good to me Ehsan Karamad: Looks good to me; Commit nainar: Looks good to me
                    Introduce ScrollCustomization Property

                    This CL introduces the CSS property, 'scroll-customization'. Through
                    modifying scroll-customization, unnecessary calls to apply/distributeScroll
                    handlers can be avoided.

                    This CL implements the logic inside blink's main thread. If an scrollable
                    node has customized scrolling handlers, it can further specify which class
                    of gestures it is interested in for custom scrolling.

                    The list of valid values for customization includes 'auto', 'pan-x',
                    'pan-left', 'pan-right', 'pan-y', 'pan-up', and 'pan-down', and 'none'.
                    The default value is 'none' (any node interested in customized scroll
                    handlers should specify that).

                    For RootScroller we ignore customized scroll as it will regress certain
                    features which depend on global RootScroller.

                    This CL will eventually be followed up by changes to the compositor layer
                    so that for nodes with custom scroll, the scroll events corresponding
                    not allowed through scroll customization do not get sent to the main thread.

                    Link to document:
                    https://docs.google.com/document/d/1fB524MG5SJpajou7QdulqklciCLWTcoGa9olkPzVQVo/edit#heading=h.2b398wn8pdq

                    Bug: 765326
                    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel
                    Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                    Reviewed-on: https://chromium-review.googlesource.com/590497
                    Commit-Queue: Ehsan Karamad <ekar...@chromium.org>
                    Reviewed-by: Pavel Feldman <pfel...@chromium.org>
                    Reviewed-by: Ian Vollick <vol...@chromium.org>
                    Reviewed-by: nainar <nai...@chromium.org>
                    Reviewed-by: David Bokan <bo...@chromium.org>
                    Reviewed-by: Ehsan Karamad <ekar...@chromium.org>
                    Cr-Commit-Position: refs/heads/master@{#530921}

                    ---
                    M third_party/WebKit/LayoutTests/LeakExpectations
                    M third_party/WebKit/LayoutTests/SlowTests
                    M third_party/WebKit/LayoutTests/TestExpectations
                    31 files changed, 675 insertions(+), 43 deletions(-)


                    To view, visit change 590497. To unsubscribe, or for help writing mail filters, visit settings.

                    Gerrit-Project: chromium/src
                    Gerrit-Branch: master
                    Gerrit-MessageType: merged
                    Gerrit-Change-Id: Ia54971b5535cb0b841682d242ef90761975f8c81
                    Gerrit-Change-Number: 590497
                    Gerrit-PatchSet: 58
                    Gerrit-Owner: Ehsan Karamad <ekar...@chromium.org>
                    Gerrit-Reviewer: Alexandre Elias <ael...@chromium.org>
                    Gerrit-Reviewer: Commit Bot <commi...@chromium.org>
                    Gerrit-Reviewer: David Bokan <bo...@chromium.org>
                    Gerrit-Reviewer: Ehsan Karamad <ekar...@chromium.org>
                    Gerrit-Reviewer: Ian Vollick <vol...@chromium.org>
                    Gerrit-Reviewer: Majid Valipour <maj...@chromium.org>
                    Gerrit-Reviewer: Pavel Feldman <pfel...@chromium.org>
                    Gerrit-Reviewer: Sahel Sharifymoghaddam <sa...@chromium.org>
                    Gerrit-Reviewer: Timothy Dresser <tdre...@chromium.org>
                    Gerrit-Reviewer: nainar <nai...@chromium.org>
                    Gerrit-CC: Alexis Menard <alexis...@intel.com>
                    Reply all
                    Reply to author
                    Forward
                    0 new messages