Skip to content

Comments

Remove unnecessary explicit reflows#23118

Closed
jdm wants to merge 1 commit intoservo:mainfrom
jdm:rm-explicit-reflow
Closed

Remove unnecessary explicit reflows#23118
jdm wants to merge 1 commit intoservo:mainfrom
jdm:rm-explicit-reflow

Conversation

@jdm
Copy link
Member

@jdm jdm commented Mar 27, 2019

These should be unnecessary since the introduction of the catch-all reflow in #9421. Any explicit reflow that is not performing a layout query is unnecessary, and we should be postponing reflow for as long as possible. This should allow pages to perform better when processing mouse events, for example, and allow profiles to better reflect the actual work being done by a page.



This change is Reviewable

@highfive
Copy link

Heads up! This PR modifies the following files:

  • @asajeffrey: components/script/dom/htmliframeelement.rs, components/script/dom/document.rs, components/script/dom/activation.rs, components/script/dom/element.rs, components/script/dom/htmlimageelement.rs and 2 more
  • @KiChjang: components/script/dom/htmliframeelement.rs, components/script/dom/document.rs, components/script/dom/activation.rs, components/script/dom/element.rs, components/script/dom/htmlimageelement.rs and 2 more

@highfive highfive added the S-awaiting-review There is new code that needs to be reviewed. label Mar 27, 2019
@highfive
Copy link

warning Warning warning

  • These commits modify script code, but no tests are modified. Please consider adding a test!

@jdm jdm force-pushed the rm-explicit-reflow branch from 49720a3 to d21a163 Compare March 27, 2019 19:08
@jdm
Copy link
Member Author

jdm commented Mar 27, 2019

r? @nox

@highfive highfive assigned nox and unassigned SimonSapin Mar 27, 2019
@nox
Copy link
Contributor

nox commented Mar 28, 2019

Nice.

@bors-servo r+

@bors-servo
Copy link
Contributor

📌 Commit d21a163 has been approved by nox

@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. labels Mar 28, 2019
@bors-servo
Copy link
Contributor

⌛ Testing commit d21a163 with merge 080338d...

bors-servo pushed a commit that referenced this pull request Mar 28, 2019
Remove unnecessary explicit reflows

These should be unnecessary since the introduction of the catch-all reflow in #9421. Any explicit reflow that is not performing a layout query is unnecessary, and we should be postponing reflow for as long as possible. This should allow pages to perform better when processing mouse events, for example, and allow profiles to better reflect the actual work being done by a page.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #5329
- [x] There are tests for these changes

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23118)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

💔 Test failed - linux-rel-css

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Mar 28, 2019
@jdm
Copy link
Member Author

jdm commented Mar 28, 2019

{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/_mozilla/css/iframe/size_attributes.html", 
    "line": 36205, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/_mozilla/css/iframe/size_attributes_vertical_writing_mode.html", 
    "line": 38582, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/css/compositing/mix-blend-mode/mix-blend-mode-iframe-parent.html", 
    "line": 42843, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/css/compositing/mix-blend-mode/mix-blend-mode-iframe-sibling.html", 
    "line": 42909, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/css/mediaqueries/min-width-tables-001.html", 
    "line": 43866, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/_mozilla/css/iframe/bg_color.html", 
    "line": 45894, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/_mozilla/mozilla/stylesheet-adopt-panic.html", 
    "line": 45977, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "NOTRUN", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": "Using matchMedia inside of a MediaQueryList callback does not panic", 
    "test": "/_mozilla/mozilla/mql_borrow.html", 
    "line": 246158, 
    "action": "test_result", 
    "expected": "PASS"
}
{
    "status": "TIMEOUT", 
    "group": "default", 
    "message": null, 
    "stack": null, 
    "subtest": null, 
    "test": "/_mozilla/mozilla/mql_borrow.html", 
    "line": 246159, 
    "action": "test_result", 
    "expected": "OK"
}

@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo try=linux

@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo retry

@bors-servo
Copy link
Contributor

⌛ Trying commit d21a163 with merge 349d2f6...

bors-servo pushed a commit that referenced this pull request Apr 9, 2019
Remove unnecessary explicit reflows

These should be unnecessary since the introduction of the catch-all reflow in #9421. Any explicit reflow that is not performing a layout query is unnecessary, and we should be postponing reflow for as long as possible. This should allow pages to perform better when processing mouse events, for example, and allow profiles to better reflect the actual work being done by a page.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #5329
- [x] There are tests for these changes

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23118)
<!-- Reviewable:end -->
@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo r-

@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo retry

@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo try- r-

@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo try=linux

bors-servo pushed a commit that referenced this pull request Apr 9, 2019
Remove unnecessary explicit reflows

These should be unnecessary since the introduction of the catch-all reflow in #9421. Any explicit reflow that is not performing a layout query is unnecessary, and we should be postponing reflow for as long as possible. This should allow pages to perform better when processing mouse events, for example, and allow profiles to better reflect the actual work being done by a page.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #5329
- [x] There are tests for these changes

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23118)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

⌛ Trying commit d21a163 with merge 1562967...

@bors-servo
Copy link
Contributor

💔 Test failed - status-taskcluster

@jdm jdm force-pushed the rm-explicit-reflow branch from d21a163 to 419f41b Compare April 9, 2019 15:12
@highfive highfive added S-awaiting-review There is new code that needs to be reviewed. and removed S-tests-failed The changes caused existing tests to fail. labels Apr 9, 2019
@jdm jdm force-pushed the rm-explicit-reflow branch from 419f41b to 4916f39 Compare April 9, 2019 15:13
@jdm
Copy link
Member Author

jdm commented Apr 9, 2019

@bors-servo try=linux

@bors-servo
Copy link
Contributor

⌛ Trying commit 4916f39 with merge b674a2e...

bors-servo pushed a commit that referenced this pull request Apr 9, 2019
Remove unnecessary explicit reflows

These should be unnecessary since the introduction of the catch-all reflow in #9421. Any explicit reflow that is not performing a layout query is unnecessary, and we should be postponing reflow for as long as possible. This should allow pages to perform better when processing mouse events, for example, and allow profiles to better reflect the actual work being done by a page.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #5329
- [x] There are tests for these changes

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23118)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

☔ The latest upstream changes (presumably #23115) made this pull request unmergeable. Please resolve the merge conflicts.

@highfive highfive added the S-needs-rebase There are merge conflict errors. label Apr 22, 2019
@jdm
Copy link
Member Author

jdm commented May 2, 2019

@bors-servo r- try-

@jdm jdm closed this May 2, 2019
@jdm jdm reopened this May 2, 2019
@jdm
Copy link
Member Author

jdm commented May 24, 2019

@bors-servo r-

@jdm jdm closed this May 24, 2019
@jdm jdm reopened this May 24, 2019
@jdm jdm closed this Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-awaiting-review There is new code that needs to be reviewed. S-needs-rebase There are merge conflict errors.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document why calls to methods like force_relayout are required

5 participants