Commit graph

64 commits

Author SHA1 Message Date
wolfbeast
bcbdf11c25 [CSS] Only emit non-GC chrome wrapped XUL box warnings in debug builds. 2020-02-15 07:03:46 +08:00
wolfbeast
71fdf2f56b Issue #1360 - Part 2: Update tests for changed preferences. 2020-01-31 07:42:06 +08:00
Gaming4JC
a2e1955dc6 Bug 1271549 - Remove details and summary preference.
Tag UXP Issue #1344
2020-01-31 07:35:02 +08:00
wolfbeast
fc5d61608c Issue #1118 - Part 5: Change the way document.open() works
This changes the work we do for document.open() in the following ways:
- We no longer create a new Window when doing document.open().
  We use the same Window but remove all the event listeners on the
  existing DOM tree and Window before removing the document's existing
  children to provide a clean slate document to use for .write().
- We no longer create a session history entry (previously would be a
  wyciwyg URI). We now replace the current one, effectively losing the
  entry for the original document.
- We now support document.open() on windowless documents.
2019-12-28 21:20:03 +08:00
wolfbeast
75d291480c Issue #1308 - Create nsDisplayTableBackgroundColor to avoid display
list collisions when processing the background color of a table.

This is effectively #146 Part 3c to go along with the other 2 there.

This resolves #1308.
2019-12-02 15:46:00 +08:00
wolfbeast
d26e13657b Issue #146 - Part 6: Allow position: sticky on table elements. 2019-11-05 10:43:07 +08:00
wolfbeast
a96ec7b886 Issue #146 - Part 3: Create nsDisplayTableBackgroundImage to avoid
display list collisions when processing the background image of a table.
2019-11-05 10:43:00 +08:00
wolfbeast
c8aaad0428 Issue #146 - Part 3: Create nsDisplayTableFixedPosition to avoid display
list collisions when processing the background image of a table.
2019-11-05 10:42:57 +08:00
wolfbeast
04db41da36 Issue #146 - Part 2: Remove custom table painting component.
Since we're now putting table borders and backgrounds properly in the
display lists, we no longer need this custom component to do this work
for us.
2019-11-05 10:42:54 +08:00
wolfbeast
8bd3a1f1d9 Issue #146 - Part 1: Draw each table's background on their own display
list items.

This patch does the following things:
1. Creates nsDisplayTableBorderCollapse that draws all collapse border
of tables.
2. Stops the use of nsDisplayTableBorderBackground.
3. Lets column and column group frames generate display items.
4. When traversing the table, also traverses the column and column group
frames.
5. For each type of table frame (col group, col, row group, row and
cell), draws their own background.
2019-11-05 10:42:52 +08:00
Gaming4JC
e4c397f0d9 Issue #1230 - Part 1: Fix Back-computing percentages for intrinsic sizing in Layout CSS-Grid
List of relevant patches applied:

1398537 part 2 - [css-multicol] Implement percentages for 'column-gap' (Gecko part).

1434478 part 1 - [css-grid] Stop back-computing percentage grid gaps when the percentage basis is indefinite. Treat them as zero sized instead.

1434478 part 2 - Stop back-computing percentage padding/margin when the percentage basis is indefinite. Treat them as zero sized instead.

1434478 part 3 - Remove IntrinsicISizeOffsetData::hPctPadding/hPctMargin members since they are now unused.

1434478 part 4 - Factor out constants like NS_UNCONSTRAINEDSIZE so they can be used in headers without needing nsIFrame.h (idempotent patch).

1434478 part 5 - Create nsLayoutUtils::ResolveToLength for resolving CSS <length-percentage> (idempotent patch).

1434478 part 6 - Propagate a percentage basis to nsIFrame::IntrinsicISizeOffsets for resolving padding/margin.

This is needed only for CSS Grid since in other cases we're only using IntrinsicISizeOffsets in the inline-axis and the percentage basis is always indefinite for *intrinsic sizing*. When calculating the intrinsic size of grid items in the grid container's block axis however, we do have a definite size for the grid area in the inline-axis and it should be used per: https://drafts.csswg.org/css-grid/#algo-overview "2. Next, the track sizing algorithm resolves the sizes of the grid rows, using the grid column sizes calculated in the previous step." (Percentage padding/margin for grid items is always resolved against the grid area's inline-size nowadays.)
2019-10-05 07:22:11 +08:00
wolfbeast
0c8d8938e2 Issue #438: Rename coord/coords to originValue/transformOrigin.
For clarity and to prevent typoes.
2019-08-17 13:32:09 +08:00
wolfbeast
bc4594b40e Issue #438: Pixel-snap subpixel value for outer SVG and anon child.
This doesn't solve the blurriness yet, but is part of the problem.
2019-08-17 13:32:06 +08:00
wolfbeast
8a29ec9a3f Issue #438: Do not round the translation of an SVG frame.
This doesn't solve the blurriness yet, but is part of the problem.
2019-08-17 13:32:03 +08:00
win7-7
0eab1834ed Outdated comment removal (no code changes)
No code changes.
2019-08-17 13:31:05 +08:00
wolfbeast
d2baf53a14 Revert "Capture delayed events and cancel as necessary."
Tag #1052 (backout).
Backed out for creating issues like #1191 and other issue-less problems
with e.g. losing the caret from text boxes. Of note: this was also
backed out from m-c for similar reasons in Bug 1332433.
This fixes #1191.
This reverts commit 3424afccaebc71c4acd4fa9eadf519c408c5965b.
2019-07-19 10:04:49 +08:00
win7-7
5639ab5968 Fix comments for Frameproperties
https://bugzilla.mozilla.org/show_bug.cgi?id=1373884

Fixes comments for Frameproperties.

These comments went unnoticed earlier.

No code changes.
2019-07-19 10:04:10 +08:00
win7-7
3829b269ce Iterate the frame property list once to collect which child list properties we have
Look into optimizing out the hashtable lookups from nsContainerFrame
2019-07-12 16:56:00 +08:00
win7-7
22d77a3d80 Avoid multiple hashtable lookups in DisplayItemData destructor
UXP has:

MOZ_RELEASE_ASSERT(sAliveDisplayItemDatas && sAliveDisplayItemDatas >Contains(this));
  sAliveDisplayItemDatas->RemoveEntry(this);

and this gets hit during frame destruction.

Combine these checks.
2019-07-08 20:28:55 +08:00
win7-7
922e819d1c Attach FrameProperties to each frame instead of using a shared hashtable
Dispense the shared hashtable and instead attach the frame property list directly to nsIFrame.
2019-07-05 21:32:14 +08:00
wolfbeast
64acfb5ca0 Revert "Improve origin-clean algorithm"
This reverts commit e69b3f567c4b8957cc09ba4359e84939f77781c5.
2019-06-07 09:52:34 +08:00
wolfbeast
85e68b684f Improve origin-clean algorithm 2019-05-31 07:21:08 +08:00
win7-7
64b6f74f89 Lots of time spent maintaining nsDisplayLayerEventRegions (#1116)
* Simplify the dispatch-to-content region

Simplify the dispatch-to-content region in nsDisplayLayerEventRegions::AddFrame() and AddInactiveScrollPort() if it starts to get large.

* tabs to spaces
2019-05-31 07:17:10 +08:00
win7-7
ab7ff906f2 patch to Bug 1377329 2019-05-03 21:35:45 +08:00
win7-7
314e75d5db unnecessary space at the end removed 2019-05-03 21:35:37 +08:00
win7-7
aaa28cd3d5 patch to Bug 1363423 2019-05-03 21:35:32 +08:00
wolfbeast
e3827df1a0 Capture delayed events and cancel as necessary.
Tag #1052
2019-04-27 08:56:22 +08:00
wolfbeast
da2bb879f2 Grab caching capturing content with local variable. 2019-03-29 22:21:43 +08:00
JustOff
ca06378496 The result of adding any percentage factor to a size that is zero should also be zero 2019-03-29 22:21:17 +08:00
wolfbeast
21daa1d5cb Add nullcheck for frames in FindNearestCommonAncestorFrame
This resolves #978.
2019-02-21 14:55:07 +08:00
yami
b5376e63c5 issue #908 - implement missing parts of CSS mask 2019-02-16 00:27:53 +08:00
adeshkp
aea50f182f Telemetry: Remove stubs and related code 2019-02-16 00:24:04 +08:00
trav90
fb9d5b9d39 Only disallow lazy frame construction for direct children of display: contents elements 2019-02-16 00:21:07 +08:00
wolfbeast
bbb1a766e2 Make caret width normal/thick behind CJK char configurable.
Fixes #820 (regression).
2019-02-16 00:15:15 +08:00
wolfbeast
57251fc4e7 Clean up a number of unused variables.
Tag #21.
2019-02-16 00:14:50 +08:00
wolfbeast
f2dad4be1f Bug 1470260 - Part 2: Make RefreshDriverTimer ref-counted and hold a strong ref on it on the stack when nsRefreshDriver::Tick can be reached. 2019-02-16 00:13:07 +08:00
wolfbeast
6f120a942c Bug 1470260 - Part 1: Ensure that 'this' stays alive for the duration of the TickRefreshDriver call. 2019-02-16 00:13:06 +08:00
wolfbeast
ad782894c8 Remove all C++ telemetry autotimers 2019-02-16 00:12:34 +08:00
wolfbeast
8c8145e620 Remove all C++ Telemetry Accumulation calls.
This creates a number of stubs and leaves some surrounding code that may be irrelevant (eg. recorded time stamps, status variables).
Stub resolution/removal should be a follow-up to this.
2019-02-16 00:12:32 +08:00
trav90
eb09900afe Avoid using memset on a not-trivial type like nsTabSizes
nsTabSizes is non-trivial only because of the user-defined constructor.  The idea desired here is certainly to zero all the members without listing them -- but the very act of doing so with a user-defined constructor, makes the idea impossible.

Arguably this is something that is permissible in the language, and that the warning should be tailored to permit.  I don't think this falls afoul of any of the issues flagged in https://gcc.gnu.org/ml/gcc-patches/2017-06/msg01527.html for example.  In the meantime, just explicitly zeroing the three member fields is easy and fixes the warnings.
2019-02-16 00:11:30 +08:00
wolfbeast
ca5c2ba100 Add pref to control CanOptimizeToImageLayer for large downscale factors.
This resolves #626
2019-02-16 00:08:44 +08:00
janekptacijarabaci
d57aa4fc94 Fix Build Bustage - with "--enable-debug" 2019-02-16 00:08:38 +08:00
wolfbeast
1a823f5ad6 Remove SPS profiler.
- Conditionals and code blocks. (MOZ_ENABLE_PROFILER_SPS)
- Stub out several profiler-only functions.
2019-02-15 23:58:37 +08:00
janekptacijarabaci
e29bf72ab4 Bug 1379762 part 2. Use a more reliable test to figure out when we can skip firing onload in nsDocumentViewer::LoadComplete
Issue #357
2019-02-15 23:58:12 +08:00
janekptacijarabaci
eb80674e82 Bug 1379762 part 1. Don't call MediaFeaturesChanged if our override device pixel ratio is set to its current value
Issue #357
2019-02-15 23:58:10 +08:00
wolfbeast
b586913598 Remove MOZ_WIDGET_GONK [1/2]
Tag #288
2019-02-15 23:57:08 +08:00
wolfbeast
719ac1bc38 Remove MOZ_B2G leftovers and some dead B2G-only components. 2019-02-15 23:57:05 +08:00
wolfbeast
04679df9c6 Issue #325 Part 13: Remove Mozilla implementation of the bidi engine completely and use ICU. 2019-02-15 23:56:15 +08:00
janekptacijarabaci
9ab20590c6 Building with "--enable-debug" - fix some warnings
https://github.com/MoonchildProductions/moebius/pull/146
https://github.com/MoonchildProductions/Pale-Moon/pull/1400
2019-02-15 23:55:29 +08:00
janekptacijarabaci
1f262f0d2b moebius#90: CSS - implement text-justify property 2019-02-15 23:54:04 +08:00