aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/webglframebuffer.rs
Commit message (Collapse)AuthorAgeFilesLines
* Replace .map_or(false with Option::is_some_and (#33468)Simon Wülker2024-09-161-1/+1
| | | Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* clippy fixes regarding clone_from (#32482)Peter Mikola2024-06-121-1/+1
|
* fix: omitted the `let` bindings (#31908)Azhar Ismagulova2024-03-271-1/+1
|
* fixes dereferencing on an immutable reference (#31864)Aarya Khandelwal2024-03-261-1/+1
|
* changed `match` to 'matches!' (#31850)Aarya Khandelwal2024-03-251-7/+4
|
* clippy: Fix redundant field names warnings (#31793)Oluwatobi Sofela2024-03-201-3/+3
|
* clippy: Fix many warnings in `components/script` (#31717)Richard Dushime2024-03-191-3/+3
| | | | | | | | | | | | | | | | | * Fix Several clippy warnings * Fix Build errors * Fix Unused import * Fix requested changes * Fix rustfmt * Minor fixes --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Replace script_plugins with a clippy like rustc driver (named crown) (#30508)Samson2023-12-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove script_plugins * Use crown instead of script_plugins * crown_is_not_used * Use crown in command base * bootstrap crown * tidy happy * disable sccache * Bring crown in tree * Install crown from tree * fix windows ci * fix warning * fix mac libscript_plugins.dylib is not available anymore * Update components/script/lib.rs Co-authored-by: Martin Robinson <mrobinson@igalia.com> * Update for nightly-2023-03-18 Mostly just based off https://github.com/servo/servo/pull/30630 * Always install crown it's slow only when there is new version * Run crown test with `mach test-unit` * Small fixups; better trace_in_no_trace tests * Better doc * crown in config.toml * Fix tidy for real * no sccache on rustc_wrapper * document rustc overrides * fixup of compiletest * Make a few minor comment adjustments * Fix a typo in python/servo/platform/base.py Co-authored-by: Samson <16504129+sagudev@users.noreply.github.com> * Proper test types * Ignore tidy on crown/tests --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Strict import formatting (grouping and granularity) (#30325)Samson2023-09-111-8/+10
| | | | | * strict imports formatting * Reformat all imports
* No tracing of nop traceable fields (#29926)Samson2023-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add `no_trace` option to JSTraceable derive * NoTrace wrapper * Port some types to no_trace schematics * Fixing my unsafe mistakes (not tracing traceables) * Add docs & safety guards for no_trace Safety guards (trait shenanigans) guarantees safety usage of `no_trace` * Port canvas_traits to no_trace * Port servo_media to no_trace * Port net_traits to no_trace * Port style to no_trace * Port webgpu to no_trace * Port script_traits to no_trace * Port canvas_traits, devtools_traits, embedder_traits, profile_traits to no_trace * unrooted_must_root lint in seperate file * Add trace_in_no_trace_lint as script_plugin * Composable types in must_not_have_traceable * Introduced HashMapTracedValues wrapper * `HashMap<NoTrace<K>,V>`->`HashMapTracedValues<K,V>` * Port rest of servo's types to no_trace * Port html5ever, euclid, mime and http to no_trace * Port remaining externals to no_trace * Port webxr and Arc<Mutex<_>> * Fix spelling in notrace doc
* Make textures that come from webxr invalid outside an rAFAlan Jeffrey2020-08-061-0/+10
|
* Update WebXR Layer IDL, and matching changes to the Rust code.Alan Jeffrey2020-08-031-6/+1
|
* Support for webxr layer managementAlan Jeffrey2020-06-281-55/+55
|
* Replaced failible boolean with an enumTobias Tschinkowitz2020-04-231-7/+6
|
* Support WebGL2 contexts in XRWebGLLayer.Josh Matthews2020-04-081-2/+7
|
* Add trait DomObjectWrap to provide WRAP functionYUAN LYU2020-03-201-2/+0
|
* Add support for WebGL2 read and draw buffer settingsMátyás Mustoha2020-03-161-0/+53
| | | | | | | | | | | Adds support for the `ReadBuffer` and `DrawBuffers` WebGL2 calls and the related parameter getters. See: - https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2 - https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.4 - https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.11
* Integrate swapchain surface provider changes into webgl and webxr ↵Josh Matthews2020-03-091-3/+5
| | | | implementations.
* Improved the WebGL2 framebuffer render validationMátyás Mustoha2020-03-051-1/+1
| | | | | It seems `MissingColorAttachment` should be returned only when all of the color attachments are missing.
* Add support for WebGL2 FramebufferTextureLayerMátyás Mustoha2020-03-041-0/+55
| | | | | | Adds support for `FramebufferTextureLayer` WebGL2 call. See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.4
* Allow more WebGL2 FBO attachment formatsMátyás Mustoha2020-03-031-25/+101
| | | | | | | | | | Add support for most of the framebuffer attachment formats introduced in WebGL2 for textures and renderbuffers. Related format tables: - https://www.khronos.org/registry/OpenGL-Refpages/es3.0/html/glTexImage2D.xhtml - https://www.khronos.org/registry/OpenGL-Refpages/es3.0/html/glRenderbufferStorage.xhtml
* Add support for WebGL2 framebuffer attachmentsMátyás Mustoha2020-02-211-110/+192
| | | | | Adds an initial implementation for the framebuffer attachments introduced with WebGL2 and the related enums and constrains checks.
* Use `#![register_tool]` instead of `#![register_attr]`Simon Sapin2019-11-151-1/+1
| | | | CC https://github.com/rust-lang/rust/issues/66079
* Auto merge of #24616 - teapotd:imageinfo-option-refactoring, r=jdmbors-servo2019-11-011-5/+9
|\ | | | | | | | | | | | | | | | | | | | | | | Store Option<ImageInfo> instead of making fields of ImageInfo optional Fixes #24582 --- - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #24582 - [X] These changes do not require tests
| * Store Option<ImageInfo> instead of making fields optionalteapotd2019-11-011-5/+9
| |
* | Use surfman for managing GL surfacesPatrick Walton2019-11-011-21/+108
|/ | | | | | Co-authored-by: Alan Jeffrey <ajeffrey@mozilla.com> Co-authored-by: Zakor Gyula <gyula.zakor@h-lab.eu> Co-authored-by: Josh Matthews <josh@joshmatthews.net>
* webgl: Update framebuffer completion status when attached ↵Josh Matthews2019-09-231-1/+23
| | | | renderbuffer/texture storage changes.
* webgl: Support RGB color attachments for complete framebuffers.Josh Matthews2019-09-201-0/+1
|
* Don't panic if WebGL thread can't be reached during finalization.Josh Matthews2019-07-291-5/+9
|
* Rustfmt has changed its default style :/Simon Sapin2018-12-281-7/+3
|
* Update MPL license to https (part 3)Jan Andre Ikenmeyer2018-11-191-1/+1
|
* Reorder importsPyfisch2018-11-061-2/+2
|
* `cargo fix --edition`Simon Sapin2018-11-061-10/+10
|
* Format script componentchansuke2018-09-191-83/+125
|
* webgl: Mark framebuffers as uninitialized when their attached renderbuffer's ↵Josh Matthews2018-09-141-0/+1
| | | | storage changes.
* webgl: Remove knowledge of attached framebuffers from renderbuffers and ↵Josh Matthews2018-09-101-11/+3
| | | | textures.
* webgl: Ensure that renderbuffers have been bound before attaching to a ↵Josh Matthews2018-09-101-1/+1
| | | | framebuffer.
* webgl: Ensure that depth and stencil attachments are rebound after messing ↵Josh Matthews2018-09-101-52/+140
| | | | with DEPTH_STENCIL attachments.
* webgl: Move framebuffer initialization logic to WebGL thread.Josh Matthews2018-09-101-8/+14
|
* webgl: Differentiate between missing colour attachments and incomplete ↵Josh Matthews2018-09-101-4/+10
| | | | attachments.
* webgl: return missing attachment status from framebuffers with no attachments.Josh Matthews2018-09-101-2/+2
|
* webgl: Clear renderbuffers on first read/write operation.Josh Matthews2018-09-101-4/+41
|
* webgl: Check internal format of textures when determining attachment ↵Josh Matthews2018-09-101-2/+2
| | | | completeness.
* webgl: Ensure that framebuffers have a color attachment before reading or ↵Josh Matthews2018-09-101-0/+10
| | | | writing.
* webgl: Mark framebuffers as incomplete if attachments do not meet format ↵Josh Matthews2018-09-101-5/+19
| | | | requirements.
* webgl: Mark zero-sized framebuffers as incomplete attachments.Josh Matthews2018-08-011-1/+5
|
* Store a reference to the WebGLRenderingContext in WebGLObjectAnthony Ramine2018-07-241-38/+42
|
* Implement WebGL getFramebufferAttachmentParameter APIIgor Gutorov2018-03-221-0/+25
|
* Replace all uses of the `heapsize` crate with `malloc_size_of`.Nicholas Nethercote2017-10-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Servo currently uses `heapsize`, but Stylo/Gecko use `malloc_size_of`. `malloc_size_of` is better -- it handles various cases that `heapsize` does not -- so this patch changes Servo to use `malloc_size_of`. This patch makes the following changes to the `malloc_size_of` crate. - Adds `MallocSizeOf` trait implementations for numerous types, some built-in (e.g. `VecDeque`), some external and Servo-only (e.g. `string_cache`). - Makes `enclosing_size_of_op` optional, because vanilla jemalloc doesn't support that operation. - For `HashSet`/`HashMap`, falls back to a computed estimate when `enclosing_size_of_op` isn't available. - Adds an extern "C" `malloc_size_of` function that does the actual heap measurement; this is based on the same functions from the `heapsize` crate. This patch makes the following changes elsewhere. - Converts all the uses of `heapsize` to instead use `malloc_size_of`. - Disables the "heapsize"/"heap_size" feature for the external crates that provide it. - Removes the `HeapSizeOf` implementation from `hashglobe`. - Adds `ignore` annotations to a few `Rc`/`Arc`, because `malloc_size_of` doesn't derive those types, unlike `heapsize`.
* Remove use of unstable box syntax.Simon Sapin2017-10-161-1/+1
| | | | | | | | | | | | | | | | | | | | http://www.robohornet.org gives a score of 101.36 on master, and 102.68 with this PR. The latter is slightly better, but probably within noise level. So it looks like this PR does not affect DOM performance. This is expected since `Box::new` is defined as: ```rust impl<T> Box<T> { #[inline(always)] pub fn new(x: T) -> Box<T> { box x } } ``` With inlining, it should compile to the same as box syntax.