Commit graph

4,319 commits

Author SHA1 Message Date
Moonchild
fdeb68f0b8 Issue #1689 - Part 3: Add a preference for animation composite modes.
This feature should not be shipped until the various definitions of addition for
each additive property are properly specified and then implemented accordingly.

Unlike other patches in this series, compositing is not frequently used
internally so there is no need to enable this by default for chrome callers.
2021-01-21 14:31:22 +08:00
Moonchild
d9693c298c Issue #1689 - Part 2: Add a preference for implicit keyframes
This preference controls whether authors are allowed to specify animations
without a 0% or 100% keyframe.

We intend to ship this but it isn't implemented yet (needs a follow-up) but this
preference acts as a safeguard in case we discover we need to disable it once
it's implemented.
2021-01-21 14:31:20 +08:00
Moonchild
ad1e2abea1 Issue #1689 - Part 1: Add pref for DOM Animation timelines API
Default false, no intent to ship for web content. Always enabled for Chrome.
2021-01-21 14:31:18 +08:00
Moonchild
29963d81bd Bump platform version for added features. 2021-01-21 14:31:00 +08:00
Moonchild
9afad4faa9 [Basilisk] [Tabbed browser] Pref detach&tear-off of tabs.
See MoonchildProductions/Pale-Moon#1845
2021-01-14 22:39:17 +08:00
Moonchild
7827259c9f [Basilisk] [SSUAO] Update overrides for YouTube 2021-01-14 22:38:12 +08:00
Moonchild
ef13be6ef8 [Pale-Moon] Issue #1845 - Pref detach&tear-off tab handling.
Resolves #1845
2021-01-14 22:33:04 +08:00
Moonchild
6ee59c813d [Pale-Moon] [SSUAO] Update overrides for YouTube 2021-01-14 22:32:38 +08:00
Moonchild
4461ea7a07 Issue #1705 - Part 9b: Revert overzealous changes on Mac (cocoa). 2021-01-14 22:20:05 +08:00
Moonchild
b523c3be80 Issue #1705 - Part 9: Implement scrollbar-width:thin on Mac (cocoa). 2021-01-14 22:20:03 +08:00
Moonchild
2d99d18c21 Issue #1705 - Part 8: Implement scrollbar-width:thin on GTK. 2021-01-14 22:20:01 +08:00
Moonchild
32df94bf3b Issue #1705 - Part 7: Implement scrollbar-width:thin on Windows. 2021-01-14 22:20:00 +08:00
Moonchild
953cd5b6b2 Issue #1705 - Part 6: Remove scrollbarbutton min-{width|height} rule from theme.
This would interfere with implementing thin scrollbars.

Almost all widgets provide a non-overridable size for scrollbar buttons, so it
makes no sense to specify min size for them. It is probably(?) a layout bug that
min size properties can override the value returned by GetMinimumWidgetSize
even if aIsOverridable is set to false, but removing this rule is simpler than
locating and fixing the issue in layout code ;)
2021-01-14 22:19:58 +08:00
Moonchild
7060aae250 Issue #1705 - Part 5: Implement scrollbar-width:none for all target platforms. 2021-01-14 22:19:56 +08:00
Moonchild
8e08d8bfd3 Issue #1705 - Part 4: Add scrollbar-width CSS keyword to CSS parser.
This should be all parts needed to add a brand new enum keyword including
getting the computed style from it...
2021-01-14 22:19:55 +08:00
Moonchild
21f707390d Issue #1705 - Part 3: Rename ScrollbarStyles to ScrollStyles.
ScrollbarStyles contains values of overflow, (over)scroll-behavior, etc.
The only one which is marginally related to scroll _bars_ is overflow, which can
be used to hide scrollbar (by making an element not scrollable) or enforce the
scrollbar to display.

It makes more sense to be called ScrollStyles as it's mainly concerning behavior
of scrolling, not scrollbars. Also, with the addition of scrollbar width
properties, the current name can be confusing.
2021-01-14 22:19:53 +08:00
Moonchild
3765010635 Issue #1705 - Part 2: Add a ShowScrollbar enum to be used in ScrollReflowInput.
Overflow properties have two purposes:
1. controlling whether the scrollbar should be shown;
2. controlling whether the content is scrollable.

However, with the scrollbar-width property being added, scrollability and
presence of a scrollbar are no longer tied together.
This patch makes a separation between the value of overflow and the presence of
a scrollbar by making it clear that for ScrollReflowInput, we only care about
whether scrollbar should be shown.
This should make it easier to write the logic involving presence of the
scrollbar based on webdev choice.
2021-01-14 22:19:51 +08:00
Moonchild
e993607a88 Issue #1705 - Part 1: Rename nsChangeHint_CSSOverflowChange to *ScrollbarChange.
Prepare for scrollbar-width which should trigger the same kind of change.
2021-01-14 22:19:49 +08:00
Matt A. Tobin
325e57e916 Issue #1624 - Fix slot access intrinsics for objects with > 16 reserved slots
Also flips ion inlining pref back on
2021-01-14 22:19:19 +08:00
Moonchild
3caca43d30 Issue #1710 - Check for triggering principal URI in FTP subresource check.
Resolves #1710
2021-01-14 22:19:17 +08:00
Olivier Certner
24391cb707 Issue #1699 - Part 3c: mozjemalloc: FreeBSD: Ensure early initialization
This guarantees that initialization is done in a single-thread context.
2021-01-08 17:40:55 +08:00
Olivier Certner
b7e6f5fd45 Issue #1699 - Part 3b: mozjemalloc: Bootstrap allocator, early diversion for FreeBSD
Coded a simple memory allocator meant to be used during jemalloc bootstrap
(malloc_init_hard()). Although protected by "#ifdef __FreeBSD__", it is not
FreeBSD-specific: Any POSIX platform could use it.

Hook it so that it is used in place of jemalloc's own routines while
malloc_init_hard() is executing or memory for mutexes is being
allocated. Currently, 'malloc', 'calloc', '*memalign' and 'free' are diverted
during init or lock initializations.

Details are quite complex, see the big comment block starting with "There are
several problematic interactions between FreeBSD's libthr and this jemalloc."
for more explanations.

Also replaced ad-hoc BSD code to determine the number of CPUs with 'sysconf',
which is POSIX-compliant (and supported on modern BSDs).
2021-01-08 17:40:53 +08:00
Olivier Certner
208a992fe9 Issue #1699 - Part 2: libevent: Remove 'evutil_secure_rng_add_bytes'
In fact, this is a security threat.

This function calls 'arc4random_addrandom', which was removed from the
reference implementation 7 years go [1], on the ground that this was in fact an
internal interface which is almost impossible to use correctly. This update has
since then been propagated to other implementations (e.g., FreeBSD, IllumOS,
Android).

Do this for all platforms, since 'evutil_secure_rng_add_bytes' is not even used
in the current tree, and for the reason stated above, should never be.

Related bugs at Mozilla and libevent: Links [2] and [3] below.

[1] http://marc.info/?l=openbsd-cvs&m=138238762705209&w=2
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=931354
[3] https://sourceforge.net/p/levent/bugs/320/
2021-01-08 17:40:51 +08:00
Olivier Certner
729af0b142 Issue #1699 - Part 1: python/psutil: Support recent FreeBSD versions
'sysctl' interface to currently opened connections changed in FreeBSD 12.

Drop support for FreeBSD < 9, these are very old and unsupported versions.
2021-01-08 17:40:50 +08:00
Moonchild
926243b406 [Basilisk] Update comment. 2021-01-06 13:25:43 +08:00
Moonchild
2e38cc1da9 [Basilisk] Update about box link to point to rpmo. 2021-01-06 13:25:23 +08:00
Moonchild
04df8ca786 [Pale-Moon] [SSUAO] Add netteller to UA overrides.
See: https://forum.palemoon.org/viewtopic.php?f=70&t=25906
2021-01-01 10:03:06 +08:00
Moonchild
89823dc87b Issue #1053 - Part 2b: Remove android from /layout reftests
Also cleans up some other obsolete checks and stylo reftest lists.
2021-01-01 10:02:18 +08:00
Moonchild
787b0a52a3 Issue #1053 - Part 3b: Remove AndroidSurfaceTexture and Android media decoder
interface.
2021-01-01 10:01:11 +08:00
Moonchild
753251e54c Issue #1053 - Part 3a: Remove Android conditionals from /gfx 2021-01-01 10:01:09 +08:00
Moonchild
7167c960d0 Issue #1053 - Part 2a: Remove android from /layout (partial)
This removes android code from base, build, forms, generic, inspector, style,
printing, tools and xul.
2021-01-01 10:01:05 +08:00
Moonchild
b21588597c Issue #1053 - Part 1c: Remove references to mobile/android targets and paths 2021-01-01 09:59:58 +08:00
Moonchild
659441da45 Issue #1681 - Hard-code FLAC media type association for .flac
We don't support AAC outside of OMX at the moment, so oops.
2020-12-26 06:58:05 +08:00
Moonchild
aa38ed97fa Issue #1701 - Implement Intl.PluralRules API 2020-12-24 09:36:34 +08:00
Moonchild
fc1f95edc4 Issue #1700 - Apply background color instead of inset shadow for findbar input.
This changes the toolkit theme for Linux and Windows (Mac already did this) to
style the input textbox on the findbar with -moz-appearance:none so as to give
us styling control (as opposed to using a native widget style) and apply a
neutral style to it.
Also ensures Mac remains readable in case of poorly contrasting text.
2020-12-24 09:36:32 +08:00
Moonchild
8e43c8250c Revert "Issue #1686 - Align a keybinding definition with the others"
This reverts commit 85dc118aaca8446cbe33671446ac23147daec44c.
2020-12-21 15:12:24 +08:00
adesh
942b305400 Issue #1697 - Reinstate the performance timing code removed in error.
This was a fallout from pull request #929.
2020-12-21 15:11:57 +08:00
Moonchild
9f0067af53 Issue #1695 - Restore Sleep/Wake timer that was erroneously removed.
This was fallout from PR #929 for Issue #21
2020-12-21 15:11:48 +08:00
Moonchild
ef3947ea75 [toolkit] Handle corner case confusion of downloaded files without extension.
See code comment for details.
2020-12-21 15:11:41 +08:00
Moonchild
873a58c4d5 Issue #1696 - Propagate flex sizes to the table wrapper
This avoids overlapping of table styled elements inside flexboxes as used on
some websites.

Resolves #1696
2020-12-21 15:10:41 +08:00
Moonchild
f1eb2c5cfb [network] Update port blacklist.
See BZ bugs 1674735, 1677047, 1677940 and 1676868 for details.
2020-12-21 15:10:29 +08:00
Moonchild
48f962a66f [Pale-Moon] Issue #1854 - Account for users disabling off-line and memory caching.
Resolves #1854
2020-12-21 15:07:44 +08:00
Moonchild
76fca5f990 [Basilisk] Issue #31 - Part 4: Use nsIScriptableDateFormat in cookie preferences. 2020-12-21 15:04:03 +08:00
Moonchild
443bc25ce0 [Basilisk] Issue #31 - Part 3: Use nsIScriptableDateFormat in places library window. 2020-12-21 15:03:49 +08:00
Moonchild
ad9127aad4 [Basilisk] Issue #31 - Part 2: Use nsIScriptableDateFormat in feeds. 2020-12-21 15:03:34 +08:00
Moonchild
b1d1a02c6c [Basilisk] Issue #31 - Part 1: Use nsIScriptableDateFormat in Page Info. 2020-12-21 15:03:07 +08:00
Moonchild
ec96755589 Issue #1694 - Part 2: Use scriptabledateformat for Update History display. 2020-12-21 14:57:57 +08:00
Moonchild
b6354a7a37 Issue #1694 - Part 1: Use scriptabledateformat for the Cookie Accept dialog. 2020-12-21 14:57:56 +08:00
Moonchild
de6b427be4 Revert "Issue #1391 - Disable DOM Filesystem/dirpicker APIs by default."
This reverts commit 45a976a5f1e83c3c2f7fcf85b1fa5315946f4c1a.
2020-12-10 10:31:45 +08:00
Moonchild
f04f4a996f Issue #1695 - Fix socket timeout logic. 2020-12-10 10:31:43 +08:00