aboutsummaryrefslogtreecommitdiffstats
path: root/components/servo/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* Moved CompositorMsg enum into compositing crate.Beomjin Kim2015-12-111-1/+1
| | | | | | | moved from components/msg/constellation_msg.rs to components/compositing/lib.rs dependencies on compositing crate added in ports/cef/Cargo.lock
* Modified doc command into module-level doc comment.Beomjin Kim2015-12-091-14/+14
|
* Removed space between doc comment and the actual code of pub struct BrowserBeomjin Kim2015-12-091-1/+0
|
* 1. converted the first comments in servo/lib.rs into doc comments.Beomjin Kim2015-12-091-18/+19
| | | | 2. moved doc comment of impl Browser to pub struct Browser.
* Add check up on extern crate order and sort extern crates alphabeticallyGuillaume Gomez2015-11-281-3/+1
|
* compositing: Split Servo up into multiple sandboxed processes.Patrick Walton2015-11-191-7/+36
| | | | | Multiprocess mode is enabled with the `-M` switch, and sandboxing is enabled with the `-S` switch.
* Split ConstellationMsg into ScriptMsg and CompositorMsgKeith Yeung2015-11-161-4/+4
|
* Simplify and unify compositor shutdown code pathsMartin Robinson2015-10-071-4/+0
| | | | | | | Unify all compositor shutdown code paths into two methods, one which starts the shutdown and the other that finishes it. This simplifies the way the compositor shuts down and prevents "leaking" pixmaps when exiting in uncommon ways.
* sorted the extern crate, mod & use declarationsRavi Shankar2015-09-241-31/+29
|
* Fix reported test-tidy errors for unmerged import blocksBrandon Fairchild2015-09-191-8/+3
| | | | This merges import blocks that were reported by tidy as unmerged.
* Introduce InitialConstellationStateAnthony Ramine2015-09-161-11/+15
|
* Introduce InitialCompositorStateAnthony Ramine2015-09-151-6/+8
|
* Remove 'get_*' on getters as per RFC 0344 on various componentsMathieu Rheaume2015-09-121-2/+2
|
* Re-export crates needed to use the Servo Rust APImeh2015-08-311-15/+62
|
* Move RegisterBindings::RegisterProxyHandlers call into script::initJoão Oliveira2015-08-241-5/+0
| | | | closes #7336
* sort all usesJohann Tuffe2015-08-201-2/+2
|
* Fix existing syntactics nits.Josh Matthews2015-08-161-1/+1
|
* Wire up the JS engine's memory reporting.Nicholas Nethercote2015-07-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SpiderMonkey provides an extremely fine-grained breakdown of memory usage, but for Servo we aggregate the measurements into a small number of coarse buckets, which seems appropriate for the current level of detail provided by Servo's memory profiler. Sample output: ``` | 10.99 MiB -- pages | 7.75 MiB -- url(http://html5demos.com/worker) | 4.63 MiB -- js | 2.00 MiB -- gc-heap | 0.94 MiB -- decommitted | 0.92 MiB -- used | 0.09 MiB -- unused | 0.05 MiB -- admin | 1.44 MiB -- malloc-heap | 1.19 MiB -- non-heap | [...] | 3.24 MiB -- url(http://html5demos.com/js/worker-cruncher.js) | 3.24 MiB -- js | 1.17 MiB -- malloc-heap | 1.06 MiB -- non-heap | 1.00 MiB -- gc-heap | 0.69 MiB -- used | 0.19 MiB -- decommitted | 0.09 MiB -- unused | 0.03 MiB -- admin ``` Most of the changes are plumbing to get the script and worker tasks communicating with the memory profiler task.
* Remove some unnecessary clones.Ms2ger2015-06-221-2/+2
|
* Upgrade to SM 39Michael Wu2015-06-191-0/+1
|
* Remove stray TLS gateManish Goregaokar2015-06-101-1/+0
|
* Allow Window implementations to indicate that they don't support a clipboard.James Graham2015-06-021-3/+14
| | | | | | This is important for the SERVO_HEADLESS configuration, because creating a clipboard on linux creates an X context which then causes reftest instability.
* make Opts.url an Option<> type, only emit initial url load if url existsMike Blumenkrantz2015-05-271-4/+7
| | | | | this is a necessary change for embedded apps to prevent an initial about:blank page load from overwriting whatever the app was actually trying to load
* compositing: Support multiple events per frame.Patrick Walton2015-05-201-4/+4
| | | | Improves scrolling performance on Mac.
* Remove some clones.Ms2ger2015-05-151-3/+3
|
* util: Set the experimental_enabled flag when options are setBrian Anderson2015-05-091-2/+0
|
* Remove call to env::current_dir from BrowserBrian Anderson2015-05-091-12/+1
| | | | Put it in util::opts instead.
* WhitespaceBrian Anderson2015-05-081-0/+1
|
* Remove bogus commentBrian Anderson2015-05-081-1/+0
|
* Auto merge of #5953 - mbrubeck:libc, r=jdmbors-servo2015-05-061-1/+1
|\ | | | | | | | | | | | | | | r? @Ms2ger <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5953) <!-- Reviewable:end -->
| * Get rid of old `libc` featureMatt Brubeck2015-05-051-1/+1
| |
* | Initial changes for devtools support for logging HTTP requests.Himaja2015-05-051-1/+1
|/ | | | | | | | | | Add a NetworkEventActor to devtools/actors/ Authors: Ashritha Mohan Ram <amohanr@ncsu.edu> Himaja Valavala <hsvalava@ncsu.edu> Anand Chandrasekar <achandr9@ncsu.edu> Yiyang Wang <ywang95@ncsu.edu>
* Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8.Simon Sapin2015-05-051-1/+0
|
* Add a `profile_traits` crate to reduce compile times.Nicholas Nethercote2015-04-301-4/+7
| | | | | | | | | | A rebuild after touching components/profile/mem.rs now takes 48 seconds (and only rebuilds `profile` and `servo`) which is much lower than it used to be. In comparison, a rebuild after touching components/profile_traits/mem.rs takes 294 seconds and rebuilds many more crates. This change also removes some unnecessary crate dependencies in `net` and `net_traits`.
* Refactored image cache task - details below.Glenn Watson2015-04-231-22/+4
| | | | | | | | | | | | | | | | | | | | * Simpler image cache API for clients to use. * Significantly fewer threads. * One thread for image cache task (multiplexes commands, decoder threads and async resource requests). * 4 threads for decoder worker tasks. * Removed ReflowEvent hacks in script and layout tasks. * Image elements pass a Trusted<T> to image cache, which is used to dirty nodes via script task. Previous use of Untrusted addresses was unsafe. * Image requests such as background-image on layout / paint threads trigger repaint only rather than full reflow. * Add reflow batching for when multiple images load quickly. * Reduces the number of paints loading wikipedia from ~95 to ~35. * Reasonably simple to add proper prefetch support in a follow up PR. * Async loaded images always construct Image fragments now, instead of generic. * Image fragments support the image not being present. * Simpler implementation of synchronous image loading for reftests. * Removed image holder. * image.onload support. * image NaturalWidth and NaturalHeight support. * Updated WPT expectations.
* Add enough Webdriver support to enable Get().James Graham2015-04-161-4/+4
| | | | | | | | | This is incomplete in several ways: * It assumes that there's only one constellation (i.e. top level browsing context), ever. * The session support is very basic indeed (no capabilities) * Passing channels over channels may not sit well with IPC * The error handling is mostly missing
* Remove unused feature gate.Ms2ger2015-04-141-1/+1
|
* Remove `cfg(not(test))`s from servo/main.rsBrian Anderson2015-04-141-58/+101
| | | | | | Reorganize servo directory code top-down and add comments Remove cfg(not(test)) from servo/lib.rs Remove redundant thread from constellation setup
* Auto merge of #5527 - jagtalon:jag/multiple-urls, r=mbrubeckbors-servo2015-04-071-14/+10
|\ | | | | | | Switched from opts.urls from being of type Vec to type String and changing the name to `url` as well. Changed the other files that are using opts.urls accordingly.
| * opts.rs: don't accept multiple URLs. Fixes #5520.Jag Talon2015-04-071-14/+10
| | | | | | | | | | | | | | | | | | | | | | Switched from opts.urls from being of type Vec to type String and changing the name to `url` as well. Changed the other files that are using opts.urls accordingly. servo/lib.rs + gonk/src/lib.rs: no need for a block scope. cef: fix compiler errors. - remove the use of `mut` since it's not needed. - use `to_owned` instead of `to_string` because it's more efficient.
* | Get the barest bones of webdriver integration ready for keeners.Josh Matthews2015-04-061-0/+5
|/
* Fix warnings when building testsMatt Brubeck2015-04-031-1/+4
|
* Split out shared networking code into net_traits crateGilles Leblanc2015-04-031-8/+13
| | | | Fixes #4476
* Load a placeholder when a url to an image is broken.Adenilson Cavalcanti2015-03-301-3/+3
| | | | | | | | | | I decided to use the old Netscape broken image link icon (later we may replace the image asset for something more trendier). The ref test will expect that a failed load should display the rippy image. ImageCacheTask users can define if a placeholder image should be loaded at start up or not. This enables both the new behavior (e.g. always return an image even for broken urls) as also the previous one.
* Rename lots of profiling-related things.Nicholas Nethercote2015-03-251-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ------------------------------------------------------------------------ BEFORE AFTER ------------------------------------------------------------------------ util::memory util::mem - heap_size_of - heap_size_of (unchanged) - SizeOf - HeapSizeOf - size_of_excluding_self - heap_size_of_children prof::mem prof::mem - MemoryProfilerChan - ProfilerChan - MemoryReport - Report - MemoryReportsChan - ReportsChan - MemoryReporter - Reporter - MemoryProfilerMsg - ProfilerMsg - {R,UnR}egisterMemoryReporter - {R,UnR}egisterReporter - MemoryProfiler - Prof - ReportsForest - ReportsForest (unchanged) - ReportsTree - ReportsTree (unchanged) - SystemMemoryReporter - SystemReporter prof::time prof::time - TimeProfilerChan - ProfilerChan - TimerMetadata - TimerMetadata (unchanged) - Formatable - Formattable [spelling!] - TimeProfilerMsg - ProfilerMsg - TimeProfilerCategory - ProfilerCategory - TimeProfilerBuckets - ProfilerBuckets - TimeProfiler - Profiler - TimerMetadataFrameType - TimerMetadataFrameType (unchanged) - TimerMetadataReflowType - TimerMetadataReflowType (unchanged) - ProfilerMetadata - ProfilerMetadata (unchanged) In a few places both prof::time and prof::mem are used, and so module-qualification is needed to avoid overlap, e.g. time::Profiler and mem::Profiler. Likewise with std::mem and prof::mem. This is not a big deal.
* Move profiler code from `util` into a new crate `profile`.Nicholas Nethercote2015-03-241-2/+3
| | | | | | | | | - Most of util::memory has been moved into profile::mem, though the `SizeOf` trait and related things remain in util::memory. The `SystemMemoryReporter` code is now in a submodule profile::mem::system_reporter. - util::time has been moved entirely into profile::time.
* Remove the unneccesary thread being spawned in Browser::new.Ms2ger2015-03-211-55/+39
|
* Squashing a few warnings.Adenilson Cavalcanti2015-03-181-1/+1
|
* Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev.Ms2ger2015-03-181-6/+5
|
* Add memory reporting infrastructure and use it to measure the display list.Nicholas Nethercote2015-03-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset implements the beginnings of fine-grained measurement of Servo's data structures. - It adds a new `SizeOf` trait, which is used to measure the memory used by heap data structures, and implements it for some std types: Box, String, Option, Arc, Vec, and DList. - It adds a new `MemoryReporter` trait which is used to report memory measurements from other threads to the memory profiler. Reporters are registered and unregistered with the memory profiler, and the memory profiler makes measurement requests of reporters when necessary. - It plumbs a MemoryProfilerChan through to the layout task so it can register a memory reporter. - It implements the `SizeOf` trait for `DisplayList` and associated types, and adds a memory reporter that uses it. The display list hits 14.77 MiB when viewing tests/html/perf-rainbow.html, and 2.51 MiB when viewing the Guardians of the Galaxy Wikipedia page from servo-static-suite. Example output: 0.29: display-list::http://www.reddit.com/ 0.00: display-list::http://static.adzerk.net/reddit/ads.html?sr=-reddit.com,loggedout&bust2#http://www.reddit.com 0.00: display-list::http://www.reddit.com/static/createadframe.html There are a number of FIXME comments indicating sub-optimal things. This is a big enough change for now that doing them as follow-ups seems best.