Граф коммитов

51654 Коммитов

Автор SHA1 Сообщение Дата
Timothy Nikkel 9e89a17b91 Bug 1260324. Don't draw garbage to the screen if an image doesn't happen to be decoded. r=seth
Layout has been using imgIContainer::IsOpaque to determine if the image will draw opaquely to all pixels it covers, and doing culling based on this.

However imgIContainer::IsOpaque doesn't guarantee anything. It only describes if the image, when in a decoded state, has all opaque pixels. So if the image doesn't have fully decoded frames around (because they got discarded) it may not draw opaquely to all of its pixels.

So we create a new function that first checks if there is a fully decoded frame.
2016-08-22 21:15:38 -05:00
Xidorn Quan 0adbbea38f Bug 1297049 - Include tests with query string and hash string when specifying test path. r=dbaron
MozReview-Commit-ID: 27x0vTs1aDa

--HG--
extra : rebase_source : a426489c01260df302f790b0a28b262cbbe723fc
extra : source : 61c7ab9bea3f154aef14f425875100b0ac824674
2016-08-23 10:32:43 +10:00
Xidorn Quan b1014aeb0c Bug 1296186 part 2 - Make ServoDeclarationBlock refcounted. r=heycam
MozReview-Commit-ID: 2X0JX8HA4ej

--HG--
extra : rebase_source : e5e888be0fb98f995a7ac17bd0985177206914a2
extra : source : 53ce9619813b91b26a5bc51b7417c55e8b9cb505
2016-08-23 10:32:20 +10:00
Xidorn Quan 0fab79f248 Bug 1296186 part 1 - Make borrowed type just alias of corresponding pointer type. r=bholley
Compilers would complain about using user-defined type as return type
of extern "C" functions. A struct is considered a user-defined type if
there is any non-trivial constructor.

Having a type without non-trivial constructor for borrowed type would
be very inconvenient. Actually the currently borrowed type doesn't seem
to provide any additional safety / benefit over a plain pointer.

MozReview-Commit-ID: ncxmCEWCkv

--HG--
extra : rebase_source : 43a95bbcb05759f27837629daec6ce915a68b062
extra : source : 2a544c24bfb6a3412e59acbee89a5a393c31d5b6
2016-08-23 10:32:20 +10:00
Xidorn Quan 928683d762 Bug 1291707 part 4 - Not recalc quotes and counters in EndUpdate. r=bz
It will be called in the next flush, so no need to do it eagerly.

MozReview-Commit-ID: 1B8pzn0dqBO

--HG--
extra : rebase_source : 79a4203d13a2b9d48cd9c9d6fa5c5e08974d4765
extra : source : 162b17483adb18d3d05d866853fb8f841dee846d
2016-08-23 10:31:26 +10:00
Xidorn Quan 9d87478fb9 Bug 1291707 part 3 - Use hashtable to track nsGenConNodes related to a frame. r=bz
MozReview-Commit-ID: IgT90GN2R4Z

--HG--
extra : rebase_source : a17776e7a8723f9487100862b630857a85eded98
extra : source : 31269f41019ac267264cafb5f97dd602ba5ec212
2016-08-23 10:31:26 +10:00
Xidorn Quan a0c0bf51d9 Bug 1291707 part 1 - Change nsGenConList::Remove to Destroy and make it private. r=bz
MozReview-Commit-ID: FxXizoXjRoh

--HG--
extra : rebase_source : 2ee88b7358d9bc92d563546582485ff6e499a667
extra : source : ad53afc0ba0547d0fc992b5dce575e7b65957fea
2016-08-23 10:31:26 +10:00
Emilio Cobos Álvarez c74f7fc2ae Bug 1292618: followup: Use IsGeneratedContentContainerForBefore/After in ServoStyleSet. r=me
MozReview-Commit-ID: AU8YKQBvXX7
2016-08-22 10:42:18 -07:00
Henri Sivonen a3b8292670 Bug 1191841 - Perform label resolution in scriptable charset setters of nsIContentViewer. r=emk.
MozReview-Commit-ID: facCC1K7Dk
2016-08-22 20:18:24 +03:00
Ryan VanderMeulen 833833b8c5 Merge inbound to m-c. a=merge 2016-08-22 09:40:41 -04:00
Ting-Yu Lin 2a80705ce0 Bug 1296990 - Make AppearanceString() return nsAutoString directly. r=mtseng
MozReview-Commit-ID: IQ3KrFnCswx

--HG--
extra : rebase_source : ed646cc89797c104708c55d50a058ddd6c76b5bd
2016-08-21 21:41:32 +08:00
Sylvestre Ledru ad41a76c2c Bug 1296265 - Remove (unused) initial assignment to nsRuleNode.cpp variable "scriptLevelAdjustedParentSize". r=dholbert
MozReview-Commit-ID: 6YaYqkRGNlV

--HG--
extra : rebase_source : e120b896068574c15fb88b9238b8cb961432b146
2016-08-18 14:19:26 +02:00
Wes Kocher bb22cc4067 Merge inbound to central, a=merge 2016-08-19 18:16:20 -07:00
Xidorn Quan 6cde2b431b Bug 1296594 - Move Servo binding functions to a list file. r=bholley
MozReview-Commit-ID: GvF8E7LXM1g

--HG--
extra : rebase_source : d2fbe617368bf8d216ca0d6ac6bc394dc4a26b24
2016-08-19 21:44:43 +10:00
Jesse Ruderman 3615ba53e6 Bug 1288608 - Crashtest. 2016-08-19 19:56:20 +02:00
Mats Palmgren 1b3197af3e Bug 1288608 - Ensure the normal position is stored on a property before setting the relative position. r=jfkthame 2016-08-19 19:56:20 +02:00
Mats Palmgren e3a3b7c245 Bug 1293985 part 1 - Hold a strong ref on aDocument. r=tn 2016-08-19 19:56:20 +02:00
Ryan VanderMeulen ce55e7b71a Merge m-c to inbound. a=merge 2016-08-19 09:59:49 -04:00
Ryan VanderMeulen 01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Sebastian Hengst 775bb69951 Merge mozilla-central to autoland. r=merge a=merge 2016-08-19 12:38:47 +02:00
Sebastian Hengst fdc5082122 Backed out changeset d1d614497fbf (bug 1046166) on request of developer for crashes. r=backout a=backout
MozReview-Commit-ID: IHG3TraKy6n
2016-08-19 12:35:34 +02:00
Sebastian Hengst 1dd98c7608 Merge mozilla-central to mozilla-inbound. r=merge a=merge 2016-08-19 12:39:57 +02:00
Jonathan Kew 0cb66c8d3a Bug 1280887 - patch 3 - Get rid of the mTextRunsToDelete array now that the frame's textruns are refcounted and will know when to die by themselves. r=mats 2016-08-19 13:14:37 +01:00
Jonathan Kew 95a82f84cc Bug 1280887 - patch 2 - Make gfxTextRun refcounted, replace usage of UniquePtr<> with RefPtr<> for textruns, and make nsTextFrame hold a strong reference to its run(s). r=mats 2016-08-19 13:14:22 +01:00
Cameron McCormack d6d90e9bb0 Bug 1295852 - Part 5: Check for generated content containers more precisely in nsTransitionManager assertion. r=boris
MozReview-Commit-ID: 3GNdT8ubKDb

--HG--
extra : rebase_source : b2507e5a084a2a351e78522f64231b63b22ccdf4
2016-08-19 11:46:46 +08:00
Cameron McCormack 792c4f4eb0 Bug 1295852 - Part 4: Check for generated content containers more precisely when reflowing grid containers. r=me
I'm not convinced that we can actually get regular content
<_moz_generated_content_before> elements in here, since it's only if
CompareTreePosition returned 0 that we look at the element name,
but might be best to make this test stronger in any case.

MozReview-Commit-ID: 8CgxcU9AbDA

--HG--
extra : rebase_source : 4a47ed62895d83f720ec7ccfde253e2c1945b34f
2016-08-19 11:46:43 +08:00
cku 177446e0ae Bug 1294171 - Part 2. Create a reftest for data url mask. r=mstange
MozReview-Commit-ID: IcXmbVd9nUA

--HG--
extra : rebase_source : 9c5b71b3bc7d6a3548083747fb2d94da00604dd5
2016-08-18 12:14:19 +08:00
cku 3cd159aa2b Bug 1294171 - Part 1. Treat unresolvable mask as no mask before support image mask. r=mstange
MozReview-Commit-ID: 9f2k7NtpYuR

--HG--
extra : rebase_source : b39ef5f82382fd9d7f237d1dabd6d834b8bbefa0
2016-08-18 11:24:28 +08:00
Phil Ringnalda b4f23026ee Backed out 5 changesets (bug 1292618) for !mImageTracked assertion failures
CLOSED TREE

Backed out changeset 1d767147e160 (bug 1292618)
Backed out changeset e6034e58efe4 (bug 1292618)
Backed out changeset 928dd363efa0 (bug 1292618)
Backed out changeset 8e274c66ae7f (bug 1292618)
Backed out changeset 6c347701d343 (bug 1292618)
2016-08-19 00:23:42 -07:00
Nicholas Nethercote 67af4817e9 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
Wes Kocher 66098b3d43 Merge m-c to autoland, a=merge 2016-08-17 17:25:57 -07:00
Wes Kocher 07f8858bf6 Merge inbound to central, a=merge 2016-08-17 16:38:41 -07:00
Wes Kocher b7ea1393f2 Backed out 3 changesets (bug 1286476) for frequent windows wpt failures in phases-and-states.html CLOSED TREE
Backed out changeset 53bbfa02d45d (bug 1286476)
Backed out changeset 3947ab570883 (bug 1286476)
Backed out changeset ffd8c37eb695 (bug 1286476)
2016-08-17 10:41:46 -07:00
Nathan Froyd 1c2c21cebc Bug 1295192 - part 4 - use a non-null-checked placement new operator in layout code; r=dholbert
The standard placement new function is declared to not throw, which
means that, per spec, a null check on its result is required.  There are
a number of places throughout layout/ where we know that we are passing
non-null pointers to placement new (and receiving them as a return
value), and we are therefore doing useless work performing these null
checks.

Therefore, we should be using an operator new overload that doesn't
require the null check.  MFBT has just such an overload, so use that.
2016-08-17 15:28:45 -04:00
Nathan Froyd bd964c2136 Bug 1295192 - part 3 - remove CPP_THROW_NEW from display list code; r=dholbert
nsDisplayListBuilder::Allocate is infallible.  Therefore,
nsDisplayListItem::operator new, which calls Allocate to obtain memory,
does not need to declare itself as throwing.  And so on for functions
that call nsDisplayListBuilder::Allocate.
2016-08-17 15:28:45 -04:00
Nathan Froyd 274ff3d25a Bug 1295192 - part 2 - remove CPP_THROW_NEW from style struct type-safe operator new overloads; r=bholley
operator new overloads that declare that they don't throw exceptions
require a null check on their return value, per the C++ spec.  We know
that Servo isn't going to call these functions with null pointers, so
remove the CPP_THROW_NEW annotation and save ourselves some work.
2016-08-17 15:28:45 -04:00
Nathan Froyd d9759d258f Bug 1295192 - part 1 - remove CPP_THROW_NEW on layout struct operator new overloads that forward to nsPresShell::AllocateByObjectID; r=dholbert
Structs in our style system use an arena-style allocation system,
managed by the presshell to which they belong.  All of the relevant
overloads that forward allocation requests to the presshell declare
themselves as CPP_THROW_NEW, which indicates that they do not throw
exceptions.  The C++ specification states that operator new overloads
that declare themselves to not throw exceptions require a null check on
their return value.  However, the relevant presshell allocation method,
AllocateByObjectID, is infallible and will never return a null pointer.

The callers of all of these methods are therefore doing useless
(compiler-generated) null checks.  Let's get rid of those useless checks
by removing the CPP_THROW_NEW annotations.  This change declares these
methods will return non-null pointers and throw exceptions in case of
errors--but as we don't use exceptions, and AllocateByObjectID will
abort on OOM, everything works out OK.
2016-08-17 15:28:45 -04:00
Edwin Flores 57383e5cb5 Bug 1291528 - Don't use fast path in nsCSSRendering::PaintGradient if source rect is empty - r=mstange 2016-08-17 09:26:11 +01:00
Edwin Flores 5b5759985b Bug 1291528 - Fix gradient scaling in nsCSSRendering::PaintGradient - r=mstange 2016-08-17 09:26:11 +01:00
Edwin Flores 42449e085d Bug 1291528 - Add reftest to ensure that linear gradient drawing paths agree - r=mstange 2016-08-17 09:26:11 +01:00
Emilio Cobos Álvarez c739d26e3b Bug 1292618: Add Gecko_CopyStyleContentsFrom. r=heycam
This allows to copy the `content` property value from one nsStyleContent to
another, in order to implement content: inherit.

MozReview-Commit-ID: 75mQpGRKKba
2016-08-18 22:16:17 -07:00
Emilio Cobos Álvarez cee263a02e Bug 1292618: Specialize ServoStyleSet::ResolveStyleForText to take into account generated nodes. r=heycam
Eventually, we might want to use the same mechanism that Gecko uses directly,
and stop styling text nodes from Servo.

This would have the benefit of removing the "stash the change on the parent"
thing.

MozReview-Commit-ID: IOxNR05jkh
2016-08-18 22:16:17 -07:00
Emilio Cobos Álvarez 6614524248 Bug 1292618: Support basic pseudo-element restyling. r=heycam
:before and :after only, for now.

MozReview-Commit-ID: 9hLFvVhqIrN
2016-08-18 22:16:16 -07:00
Emilio Cobos Álvarez 242a6e6bcf Bug 1292618: Add Gecko_ClearPODTArray to clear arrays of types without destructors. r=heycam
MozReview-Commit-ID: 3RRvrXn6ZTD
2016-08-18 22:16:16 -07:00
Emilio Cobos Álvarez bcc13a32eb Bug 1292618: Tidy up nsStyleContent's API now allocations are infallible. r=heycam
MozReview-Commit-ID: BrHn4RiEWeg
2016-08-18 22:16:13 -07:00
Phil Ringnalda bf198cf202 Backed out 2 changesets (bug 1198135) for e10s reftest assertion failures
CLOSED TREE

Backed out changeset 05d5dee06384 (bug 1198135)
Backed out changeset 0d6ede0caa26 (bug 1198135)
2016-08-18 19:23:26 -07:00
Matt Woodrow b2a3b682b3 Bug 1198135 - Part 2: Compute the scrolled rect stored by ScrollFrameHelper as what will actually be scrollable. r=dbaron
--HG--
extra : rebase_source : 3b47a778798069531d804393724b14194342866a
2016-08-18 16:09:47 +12:00
Matt Woodrow 06275ce493 Bug 1198135 - Part 1: Recompute all required overflow areas when scrolling. r=dbaron
--HG--
extra : rebase_source : a9e34de77013548aa8a456f171ec77e58930af81
2016-08-18 16:08:17 +12:00
Andrew McCreight 5f12e5d1fd Bug 1292218 - Run collectors more in reftests. r=jmaher
MozReview-Commit-ID: E7TQpBMeiVB

--HG--
extra : rebase_source : cd1dffff886567ad74c621d27a9628c7ff6eccb1
2016-08-04 08:03:25 -07:00
Wes Kocher a58f8b89a0 Merge m-c to inbound, a=merge 2016-08-18 16:32:58 -07:00