aboutsummaryrefslogtreecommitdiffstats
path: root/components/style
Commit message (Collapse)AuthorAgeFilesLines
* Updated cssparser dependency to 0.29.Lewin Probst2021-11-188-70/+67
| | | | Signed-off-by: Lewin Probst <info@emirror.de>
* Update nightly rustc.Josh Matthews2021-11-013-4/+4
|
* Fix compiler warningsBryce Wilson2021-08-142-2/+2
|
* feat: shorten thread namesyvt2021-07-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Linux kernel imposes a 15-byte limit on thread names[1]. This means information that does not fit in this limit, e.g., the pipeline ID of layout and script threads, is lost in a debugger and profiler (see the first column of the table below). This commit shortens the thread names used in Servo to maximize the amount of information conveyed. It also rectifies some inconsistencies in the names. | Before | After | |-------------------|-------------------| | `BluetoothThread` | `Bluetooth` | | `CanvasThread` | `Canvas` | | `display alert d` | `AlertDialog` | | `FontCacheThread` | `FontCache` | | `GLPlayerThread` | `GLPlayer` | | `HTML Parser` | `Parse:www.examp` | | `LayoutThread Pi` | `Layout(1,1)` | | `Memory profiler` | `MemoryProfiler` | | `Memory profiler` | `MemoryProfTimer` | | `OfflineAudioCon` | `OfflineACResolv` | | `PullTimelineMar` | `PullTimelineDat` | | `ScriptThread Pi` | `Script(1,1)` | | `WebWorker for h` | `WW:www.example.` | | `ServiceWorker f` | `SW:www.example.` | | `ServiceWorkerMa` | `SvcWorkerManage` | | `Time profiler t` | `TimeProfTimer` | | `Time profiler` | `TimeProfiler` | | `WebGL thread` | `WebGL` | | `Choose a device` | `DevicePicker` | | `Pick a file` | `FilePicker` | | `Pick files` | `FilePicker` | [1]: https://stackoverflow.com/questions/5026531/thread-name-longer-than-15-chars
* Upgrade to uluru 2Leonardo Razovic2021-07-153-8/+8
|
* Do not use deprecated bindgen methodssagudev2021-04-171-6/+6
|
* Update Cargo.tomlsagu2021-04-171-1/+1
|
* Auto merge of #27865 - servo:github-actions-dev, r=jdmbors-servo2021-03-111-1/+1
|\ | | | | | | Add Github Actions workflow for mac/linux/windows builds
| * Add build github actions workflows for mac/windows/linux.Josh Matthews2021-02-261-1/+1
| |
* | Keep not parsing conic gradient, update WPT expectations.Emilio Cobos Álvarez2021-02-271-1/+1
| |
* | Miscellaneous build / tidy fixes.Emilio Cobos Álvarez2021-02-2626-88/+276
| |
* | Revert euclid update.Emilio Cobos Álvarez2021-02-262-28/+31
| |
* | style: Fix Gecko nightly warning.Emilio Cobos Álvarez2021-02-261-1/+1
| |
* | Rustfmt.Emilio Cobos Álvarez2021-02-2628-107/+145
| |
* | style: Don't allow to parse image-set(none).Emilio Cobos Álvarez2021-02-261-11/+20
| | | | | | | | | | | | | | | | | | `none` is not technically part of the `<image>` syntax. Tests in following patches. Depends on D100698 Differential Revision: https://phabricator.services.mozilla.com/D100699
* | Miscellaneous rebase fixes.Emilio Cobos Álvarez2021-02-261-13/+8
| |
* | style: Remove prefers-contrast: forced as per CSSWG resolution.Emilio Cobos Álvarez2021-02-261-31/+9
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D106485
* | style: Implement Animate trait and ComputeSquaredDistance trait for <ratio>.Boris Chiou2021-02-264-7/+83
| | | | | | | | | | | | | | | | I also update the wpt becasue it seems the original one lets <ratio> support the addition. However, the spec says "Addition of <ratio>s is not possible". Differential Revision: https://phabricator.services.mozilla.com/D106219
* | style: Move Ratio into independent files.Boris Chiou2021-02-2612-115/+142
| | | | | | | | | | | | | | | | Based on https://drafts.csswg.org/css-values/#ratios, <ratio> should be a general types in css values, and now the media query and the position use this type, so let's move it into the independent files. Differential Revision: https://phabricator.services.mozilla.com/D106218
* | style: Implement :user-valid and :user-invalid.Emilio Cobos Álvarez2021-02-263-4/+6
| | | | | | | | | | | | | | | | | | And alias :-moz-ui-valid and :-moz-ui-invalid to them. There are CSSWG resolutions for these for quite a while, and spec for user-invalid. Differential Revision: https://phabricator.services.mozilla.com/D105966
* | style: Increase custom property size limit a bit.Emilio Cobos Álvarez2021-02-261-3/+3
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D105978
* | style: Hide :-moz-submit-invalid behind a pref.Emilio Cobos Álvarez2021-02-261-0/+3
| | | | | | | | | | | | | | | | | | No other browser supports anything like this and we don't even have internal users. Only uses of this I've found on the wild were just resetting the box shadow internal styling we added in bug 582277 (and since removed in bug 600151). Differential Revision: https://phabricator.services.mozilla.com/D105955
* | style: Rename alias to aliases in Longhand and ShorthandEmily McDonough2021-02-2611-32/+32
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D105810
* | style: Use a base class for Shorthand and LonghandEmily McDonough2021-02-261-75/+89
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D105797
* | style: Remove -moz-mac-fullscreen-button value.Markus Stange2021-02-261-3/+0
| | | | | | | | | | | | Depends on D105379 Differential Revision: https://phabricator.services.mozilla.com/D105380
* | style: Reduce the amount of code generated by ↵Emilio Cobos Álvarez2021-02-265-59/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UnparsedValues::substitute_variables. This reduces the amount of assembly instructions generated by this function from 18k+ to ~800. This should make reasoning about its stack space usage sane, and should fix the ASAN stack overflows, but also we should take this regardless, because it's saner and makes reading it simpler. I also think that the writing_mode shenanigans is fixing a bug (I think before this, we'd pick the first physical value which mapped to any of the properties, which is wrong), but I haven't bothered looking for a test-case that fails before my patch. The relevant WPTs (css/css-logical/animation*) still pass. Differential Revision: https://phabricator.services.mozilla.com/D105342
* | style: Cache substituted values from shorthand properties during the cascade.Emilio Cobos Álvarez2021-02-264-54/+96
| | | | | | | | | | | | | | | | This brings the time down to 1.6ms from 4.8ms on the test-case in the bug. This should be improvable too, but I think this is a nice improvement for regular styling as well. Differential Revision: https://phabricator.services.mozilla.com/D105187
* | style: Switch properties to use a bitfield to determine validity in rules.Emily McDonough2021-02-266-47/+51
| | | | | | | | | | | | | | This doesn't use a full bitmap for every single rule type, as we only expect that keyframe, page, and style rules will be checked. Differential Revision: https://phabricator.services.mozilla.com/D104949
* | style: Rustfmt cascade.rs.Emilio Cobos Álvarez2021-02-261-75/+75
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D105186
* | style: Hide non-standard values of caption-side.Pierre TALLOTTE2021-02-261-0/+11
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D104321
* | style: Minor cleanup of our @page rule setup.Emilio Cobos Álvarez2021-02-261-22/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually, there's not so much we can improve right now, in the sense that: * We need the ::-moz-page-content pseudo-element to be able to set `display` on the page, since that's a style rule rather than a @page rule. We could get away without it. * Keeping the current code-path (slightly cleaned up) is less code, for now at least. We can have a separate code-path or what not that actually performs the @page rule selector-matching and what not if needed when we get to named pages or other page selectors. Selectors like :first should be pretty trivial to implement, actually. We make some paged mode anon boxes non-inheriting anon boxes. This allows us to share the styles and is generally nicer. They don't need to inherit from anywhere. We could remove the origin handling and don't look at UA rules or what not, but it seems pretty harmless to do that. We also fix the name of the pseudo-elements to match the capitalization. Differential Revision: https://phabricator.services.mozilla.com/D104772
* | style: Make Linux tab bar use the darker of the highlight / highlighttext ↵Emilio Cobos Álvarez2021-02-261-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | colors. Some GTK themes use very soft colors for selection backgrounds, using darker colors for the text. This makes the tab and focus outlines in the tab bar not have sufficient contrast with usual backgrounds. I needed to do this for bug 1690778, but it seems worth doing it on the front-end as well. Differential Revision: https://phabricator.services.mozilla.com/D104547
* | style: Normalize NaN in some other font-related lengths etc.Emilio Cobos Álvarez2021-02-262-2/+2
| | | | | | | | | | | | Depends on D104563 Differential Revision: https://phabricator.services.mozilla.com/D104565
* | style: Normalize NaN to zero as a result of calc().Emilio Cobos Álvarez2021-02-264-6/+25
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D104563
* | style: Remove the need for needs_context in the mako glue.Emilio Cobos Álvarez2021-02-2611-49/+14
| | | | | | | | | | | | | | | | It's only used to disambiguate between the one-argument and the trait version of Keyword::parse. Instead, just explicitly use the trait version, so that we don't need to specify it. Differential Revision: https://phabricator.services.mozilla.com/D104328
* | style: Move caption-side outside of mako.Emilio Cobos Álvarez2021-02-266-5/+60
| | | | | | | | | | | | Make it an enum class, etc. Differential Revision: https://phabricator.services.mozilla.com/D103978
* | style: Remove focus-visible feature flag.Emilio Cobos Álvarez2021-02-263-6/+1
| | | | | | | | | | | | | | This shipped in 85, we can remove the feature flag now. Keep :-moz-focusring as an alias to :focus-visible at parse time. Differential Revision: https://phabricator.services.mozilla.com/D103752
* | style: Support Grid/Flex/Table/Column layout for the rendered legend of a ↵Mats Palmgren2021-02-261-0/+6
| | | | | | | | | | | | fieldset. Differential Revision: https://phabricator.services.mozilla.com/D101555
* | style: Add a more sensible scrollbar size API to nsITheme, and use it to ↵Emilio Cobos Álvarez2021-02-261-4/+0
| | | | | | | | | | | | | | | | | | | | | | replace ScrollbarNonDisappearing. There's no reason we should need an scrollbar box to query the size of a scrollbar. I plan to use this in the following patch to make the size of a resizer not vary depending on whether the container has scrollbars or not, which is what ultimately causes the reftest failure. Differential Revision: https://phabricator.services.mozilla.com/D103302
* | style: Add page-size parsing to ServoEmily McDonough2021-02-266-0/+183
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D102360
* | Bug 1687239 part 3 - Remove the PluginProblem UA Widget and related CSS pseudos.Mats Palmgren2021-02-262-3/+0
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D102901
* | style: Add a non-native-theme media query.Emilio Cobos Álvarez2021-02-261-1/+17
| | | | | | | | Differential Revision: https://phabricator.services.mozilla.com/D102457
* | style: remove svg.transform-box.enabled preflongsonr2021-02-261-1/+0
| | | | | | | | | | | | It's been default true since Firefox 55 via bug 1208550 Differential Revision: https://phabricator.services.mozilla.com/D102093
* | style: Add dark mode to plaintext.css, and a document rule to target ↵Emilio Cobos Álvarez2021-02-261-2/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | plaintext documents. We add two @-moz-document functions: `plain-text-document()`, matching the obvious, and `unobservable-document()`, which matches a top-level document with no opener. This is the equivalent check we do for automatic darkening of `about:blank` here: https://searchfox.org/mozilla-central/rev/014fe72eaba26dcf6082fb9bbaf208f97a38594e/layout/base/PresShell.cpp#5282 The former we don't need to use, but it's nice to let user stylesheets target plaintext documents properly (rather than relying on extensions or what not). Note that these are not content-observable. Add two tests: One showing that we produce different rendering when on dark mode, and one showing that we produce the same one from an iframe, regardless of dark mode. Depends on D101517 Differential Revision: https://phabricator.services.mozilla.com/D101518
* | style: Allow resource:// stylesheets to use chrome-only rules.Emilio Cobos Álvarez2021-02-263-5/+5
| | | | | | | | | | | | We'll use it to use @-moz-document from plaintext.css. Differential Revision: https://phabricator.services.mozilla.com/D101516
* | style: Remove layout.css.unknown-webkit-pseudo-element.Emilio Cobos Álvarez2021-02-261-6/+4
| | | | | | | | | | | | | | | | Enabled since bug 1486325 (Firefox 64). Depends on D101290 Differential Revision: https://phabricator.services.mozilla.com/D101291
* | style: Remove layout.css.file-selector-button.enabled pref.Emilio Cobos Álvarez2021-02-261-6/+1
| | | | | | | | | | | | | | | | On by default since bug 1662478 (Firefox 82) Depends on D101289 Differential Revision: https://phabricator.services.mozilla.com/D101290
* | style: Remove the moz-focus-outer code.Emilio Cobos Álvarez2021-02-261-3/+0
| | | | | | | | | | | | | | This pseudo does nothing and we successfully removed it in bug 1655859 (firefox 81). Differential Revision: https://phabricator.services.mozilla.com/D101289
* | style: Implement source selection for image-set.Emilio Cobos Álvarez2021-02-263-13/+71
| | | | | | | | | | | | | | This is based on the logic in ResponsiveImageSelector::SelectImage (just simplified because there's no viewport-dependent widths here). Differential Revision: https://phabricator.services.mozilla.com/D100698
* | style: Implement parsing and serialization for most of image-set().Emilio Cobos Álvarez2021-02-266-30/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This implements the basic image-set notation without the format() function (for simplicity). There's a remaining serialization issue (we should probably skip 1x resolutions), but that's fine for now, I'll address this in a follow-up when the feature is testable. The intention is to do the image selection at computed value time (keeping a selected index or such), but same, follow-up. This also fixes an issue where the cors-mode for -moz-image-rect and cross-fade() was getting ignored when parsing. Differential Revision: https://phabricator.services.mozilla.com/D100640