aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/window.rs
Commit message (Collapse)AuthorAgeFilesLines
* Miscellaneous build / tidy fixes.Emilio Cobos Álvarez2021-02-261-2/+3
|
* Remove unused arguments from methods.teymour-aldridge2021-02-051-6/+2
|
* Add creation url and Secure ContextsJonathan Kingston2020-11-251-0/+8
|
* dom: Add Window.js_backtrace debugging extension method.Josh Matthews2020-07-141-1/+16
|
* Auto merge of #26998 - gterzian:improve_task_cancelling, r=jdmbors-servo2020-07-061-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a stronger atomic guarantee when cancelling tasks <!-- Please describe your changes on the following line: --> In the context of https://github.com/servo/servo/issues/22507 Note that the "other side" of these operations is at https://github.com/servo/servo/blob/0b61cfc3ae803ac0f9deef937f890f83b24c9a35/components/script/task.rs#L102 --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * use a stronger atomic guarantee when cancelling tasksGregory Terzian2020-06-201-3/+3
| |
* | Return Option for Window's layout channelAntoine Martin2020-07-031-11/+24
|/
* Implement GPUSwapChain and GPUCanvasContext and interface with WebrenderKunal Mohan2020-06-131-1/+2
|
* Store resolved font style in canvas context stateUtsav Oza2020-06-101-5/+6
|
* Add todos for missing steps while processing parse font queryUtsav Oza2020-06-101-3/+0
|
* Query layout to resolve canvas font property valueUtsav Oza2020-06-101-1/+18
|
* Auto merge of #26628 - gterzian:shutdown_workers, r=asajeffreybors-servo2020-06-031-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve worker shutdown <!-- Please describe your changes on the following line: --> FIX #26548 FIX #25212 and also a step towards https://github.com/servo/servo/issues/26502 --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * properly shutdown dedicated workers when the owning scope shuts-downGregory Terzian2020-06-031-2/+2
| |
* | reading unminified scripts from diskskrzyp12020-06-021-21/+14
|/
* Have Animations struct handle rooting nodesMartin Robinson2020-05-261-10/+7
| | | | | | | Instead of having `ScriptThread` handle rooting nodes, do this in `Animations`. This makes it easier to know when it is appropriate to root and unroot nodes instead of relying on a certain order of events. This also allows reducing quite a bit the amount of unsafe code.
* Implement animationiteration eventMartin Robinson2020-05-211-4/+9
| | | | | | This event is triggered when an animation iterates. This change also moves iteration out of style calculation to an "update animations" which is the next part of having animation event handling match the HTML spec.
* Implement concept of dirty rootAnthony Ramine2020-05-191-7/+21
|
* Share single gpu_id_hub among all threads in a processKunal Mohan2020-05-151-0/+4
|
* dom: Implement current window event.Josh Matthews2020-05-131-0/+30
|
* Move most animation processing to scriptMartin Robinson2020-05-121-5/+7
| | | | | | | This is preparation for sharing this code with layout_2020 and implementing selective off-the-main-thread animations. We still look for nodes not in the flow tree in the layout thread.
* Start having animations conform to the HTML specMartin Robinson2020-05-051-44/+9
| | | | | | | | | | | | | | This is a small step toward fixing #19242. The main idea is that the clock for animations should advance as the event loop ticks. We accomplish this by moving the clock from layout and naming it the "animation timeline" which is the spec language. This should fix flakiness with animations and transitions tests where a reflow could move animations forward while script was running. This change also starts to break out transition and animation events into their own data structure, because it's quite likely that the next step in fixing #19242 is to no longer send these events through a channel.
* Use a restyle for animation ticksMartin Robinson2020-05-051-13/+22
| | | | | | | | | | | | | | This change corrects synchronization issues with animations, by reworking the animation processing model to do a quick restyle and incremental layout when ticking animations. While this change adds overhead to animation ticks, the idea is that this will be the fallback when synchronous behavior is required to fulfill specification requirements. In the optimistic case, many animations could be updated and applied off-the-main-thread and then resynchronized when style information is queried by script. Fixes #13865.
* Update window.open() to return fallible resultUtsav Oza2020-05-041-1/+1
|
* Add support for animationend eventMartin Robinson2020-05-011-10/+5
| | | | | | | | | | This is triggered when an animation finishes. This is a high priority because it allows us to start rooting nodes with animations in the script thread. This doesn't yet cause a lot of tests to pass because they rely on the existence of `Document.getAnimations()` and the presence of `animationstart` and animationiteration` events.
* Auto merge of #26296 - ramyananth:master, r=jdmbors-servo2020-04-301-0/+15
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementing createImageBitmap <!-- Please describe your changes on the following line: --> Implementing createImageBitmap method for canvas image source. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [ ] These changes fix #20650 (GitHub issue number if applicable) <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * implemented CreateImageBitmap function for Canvas image sourceJayalakshmiV2020-04-291-0/+15
| |
* | Support navigating browsing contexts in the devtools.Josh Matthews2020-04-261-3/+9
|/ | | | | | | | | | | | | Break the association between pipelines and browsing context actors. Now there is one browsing context actor per actual browsing context, and individual actors keep track of known pipelines as necessary. There is also one console/performance/timeline/inspector/etc. actor per browsing context. This also centralizes more information in the browsing context actor. Rather than duplicating state for the active pipeline in actors that need to use it, each actor now remembers the name of its associated browsing context actor and obtains that state whenever it's necessary.
* Remove WebVRAlan Jeffrey2020-04-081-11/+0
|
* Don't go through the layout thread to retrieve a node's primary styleAnthony Ramine2020-04-071-9/+2
|
* Make DOM own the style and layout data, in an UnsafeCellAnthony Ramine2020-04-041-7/+0
| | | | The previous Cell was a lie.
* Auto merge of #26077 - jdm:xr-canvas-dirty, r=asajeffreybors-servo2020-03-311-0/+8
|\ | | | | | | | | | | | | | | | | | | | | | | webgl: Don't dirty canvas element while in immersive mode. There are various WebGL APIs that are supposed to trigger a frame composite at the end of the event loop when they're used. We enforce this via dirtying the canvas element and ensuring that reflow occurs for normal content. This is redundant when we're using immersive mode and incurs extra work by the layout thread and compositor that inhibits the immersive rendering performance. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix (part of) #26019 - [x] These changes do not require tests because we do not have infrastructure to test immersive mode on CI.
| * webgl: Don't dirty canvas element while in immersive mode.Josh Matthews2020-03-311-0/+8
| |
* | Cache the result of retrieving an element's client rectangle from layout.Josh Matthews2020-03-311-9/+73
|/
* Pass pending restyles instead of draining them from layoutAnthony Ramine2020-03-281-2/+3
|
* Force alert message to its own line.Josh Matthews2020-03-231-1/+1
|
* Stop embedder calls and fake rAF when window not visiblePaul Rouget2020-03-061-0/+8
|
* Factored out permission_state_invocation_results API to GlobalScopegatowololo2020-02-271-11/+0
| | | | Instead of Window
* implement broadcastchannelGregory Terzian2020-02-251-2/+2
|
* Avoid accessing node global during Node's destructor.Josh Matthews2020-02-241-1/+3
|
* Remove unnecessary Option.Josh Matthews2020-02-241-4/+4
|
* Auto merge of #25777 - kunalmohan:24720-ImageCache, r=jdmbors-servo2020-02-191-1/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Take origin from current window instead of creating a new one in event of reflow Everytime a new `LayoutContext` was created, it created a new origin which caused endless stream of image loads to occur in case of reflow. The reason for this was that the existing image, although cached successfully, was not used because the entry in hashmap did not match because of different(new) origin. This is solved by storing the origin of a window in enum `ScriptReflow` and used in creating new `LayoutContext` in case of reflow. <!-- Please describe your changes on the following line: --> r?@jdm --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #24720 (GitHub issue number if applicable) <!-- Either: --> - [X] There are tests for these changes <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * remove option for origin and mirror changes to layout_thread_2020Kunal Mohan2020-02-181-1/+5
| |
| * Take origin from window instead of creating a new one in case of reflowKunal Mohan2020-02-151-0/+1
| | | | | | | | | | | | | | | | | | | | Everytime a new LayoutContext was created, it created a new origin which caused endless stream of image loads to occur in case of reflow. The reason for this was that the existing image, although cached successfully, was not used because the entry in hashmap did not match because of different(new) origin. This is solved by storing the origin of a window in enum ScriptReflow and used in creating new LayoutContext in case of reflow.
* | Always pass InRealm to GlobalScope::from_context to avoid getting null globalCYBAI2020-02-161-2/+2
|/
* Selection interface working for synthetic operationsPatrick Shaughnessy2020-02-131-0/+6
|
* Event dispatch rewritten to resemble spec more often, activate on clicks betterPatrick Shaughnessy2020-02-121-1/+9
|
* Auto merge of #25691 - mrobinson:improve-query-name, r=jdmbors-servo2020-02-111-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve the name the NodeGeometryQuery This query is used to get the clientTop, clientWidth, clientHeight, clientLeft properties of DOM objects. "NodeGeometry" doesn't really capture what these properties do as they often are returning the width of an element's border. <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [x] These changes do not require tests because they should not change behavior. <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * Improve the name the NodeGeometryQueryMartin Robinson2020-02-051-2/+2
| | | | | | | | | | | | | | This query is used to get the clientTop, clientWidth, clientHeight, clientLeft properties of DOM objects. "NodeGeometry" doesn't really capture what these properties do as they often are returning the width of element border.
* | Embedder Prompt APIPaul Rouget2020-02-101-2/+23
|/
* rename compartment to realmKunal Mohan2020-01-241-2/+2
|