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

69624 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 2db7de5c3d Bug 1456052 - Change overflow-clip-box of textarea to be consistent with text inputs and match other browsers. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D38794

--HG--
extra : moz-landing-system : lando
2019-07-22 21:17:18 +00:00
Boris Zbarsky 0f70d08ec8 Bug 1566595. Stop using [array] in nsIBinaryOutputStream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D38387

--HG--
extra : moz-landing-system : lando
2019-07-22 20:27:39 +00:00
Boris Zbarsky 83569071fb Bug 1566684 followup to address review comments. r=smaug, DONTBUILD 2019-07-22 15:27:28 -04:00
harry baaa880823 Bug 1567962 - Remove context-fill-opacity and context-stroke-opacity warnings. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D38893

--HG--
extra : moz-landing-system : lando
2019-07-22 18:40:42 +00:00
Emilio Cobos Álvarez 8d47bdf9ba Bug 1566684 - Make sure to unlink rule declarations before unlinking css::Rule. r=smaug,emilio
Rules and their declarations are a single object as far as the CC is concerned.  They have a single nsCycleCollectionISupports and they are represented by a single node in the CC graph.  That single object has two nsWrapperCache instances in it that point to different JS objects, and we need to make sure that the ordering of the unlink operations for those nsWrapperCache instances is handled correctly.

Differential Revision: https://phabricator.services.mozilla.com/D38326

--HG--
extra : moz-landing-system : lando
2019-07-22 18:33:29 +00:00
Ciure Andrei 98278afa46 Backed out changeset a858e4411532 (bug 1566595) for causing Windows MinGW builds bustages CLOSED TREE 2019-07-22 21:39:08 +03:00
Boris Zbarsky 9c74919340 Bug 1566595. Stop using [array] in nsIBinaryOutputStream. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D38387

--HG--
extra : moz-landing-system : lando
2019-07-22 14:52:04 +00:00
Emilio Cobos Álvarez b768462da1 Bug 1567752 - Keep mInFontFaceset and mFontFaceSet in sync. r=heycam
When we unlink, we may null out the mFontFaceSet pointer, but still keep
mInFontFaceset as true. Which can cause null dereference bugs as described in
comment 0.

This is mostly a speculative fix since I think that's a plausible cause for a
bug like that, but it may not be the only cause for the crash.

Differential Revision: https://phabricator.services.mozilla.com/D38822

--HG--
extra : moz-landing-system : lando
2019-07-22 09:56:58 +00:00
Coroiu Cristina 4436573fa3 Bug 1566215 - Fix ESlint failure on a CLOSED TREE 2019-07-22 09:27:29 +03:00
Cameron McCormack db2d38ee9a Bug 1567328 - Improve the keyboard shortcuts in the Layout Debugger. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D38582

--HG--
extra : moz-landing-system : lando
2019-07-19 18:38:47 +00:00
Cameron McCormack bc2763a680 Bug 1566215 - Part 5: Use a remote browser in the layout debugger. r=dbaron,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D38415

--HG--
extra : moz-landing-system : lando
2019-07-22 04:48:44 +00:00
Cameron McCormack 383e501763 Bug 1566215 - Part 4: Use message manager to send layout debugger commands to content. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D38414

--HG--
extra : moz-landing-system : lando
2019-07-22 04:48:37 +00:00
Cameron McCormack 3c7a36d829 Bug 1566215 - Part 3: Move debugging state management into layoutdebug.js. r=dbaron
Many of these features are non-functional these days, but I'll keep them
hooked up in case we decide to fix them.

Differential Revision: https://phabricator.services.mozilla.com/D38413

--HG--
extra : moz-landing-system : lando
2019-07-22 04:48:35 +00:00
Cameron McCormack b92599beb1 Bug 1566215 - Part 2: Merge nsILayoutDebugger functionality into nsLayoutDebuggingTools. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D38412

--HG--
extra : moz-landing-system : lando
2019-07-22 04:48:33 +00:00
Cameron McCormack 75400edc99 Bug 1566215 - Part 1: Remove some unused nsLayoutDebuggingTools code. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D38411

--HG--
extra : moz-landing-system : lando
2019-07-22 04:48:26 +00:00
Bogdan Tara f5afe11c29 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-07-22 07:50:26 +03:00
Bogdan Tara 0cd03d6d7f Backed out changeset ad5e0980c273 (bug 1555454) for central permafails on browser_devices_get_user_media.js a=backout 2019-07-22 07:45:40 +03:00
Edwin Gao 6383bcad31 Bug 1555454 - disable permafailing tests on macosx1014, migrate mochitest-browser-chrome to macosx1014 r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D38783

--HG--
extra : moz-landing-system : lando
2019-07-21 09:27:47 +00:00
Hiroyuki Ikezoe 29364f973b Bug 1567108 - Test. r=hiro,emilio
Differential Revision: https://phabricator.services.mozilla.com/D38601
2019-07-20 17:43:49 +02:00
Emilio Cobos Álvarez b2bc08cef8 Bug 1567108 - Remove a FIXME that is not relevant. r=hiro
We get hints for both frames, so we tag both.

Depends on D38599

Differential Revision: https://phabricator.services.mozilla.com/D38600

--HG--
extra : moz-landing-system : lando
2019-07-19 04:36:53 +00:00
Emilio Cobos Álvarez 3e954606c5 Bug 1567108 - Revert RestyleManager changes from bug 1527210. r=hiro
They're wrong. When a property that affects the parent frame changes, we get a
hint for both frames. This fixes this bug.

Depends on D38598

Differential Revision: https://phabricator.services.mozilla.com/D38599

--HG--
extra : moz-landing-system : lando
2019-07-19 04:39:16 +00:00
Emilio Cobos Álvarez 0999c5287b Bug 1567108 - Fix bug 1527210 in a simpler way. r=hiro
This is IMO the right RestyleManager change for what bug 1527210 tried to fix.

We need to apply the animation hints to the primary frame, not the style frame.
The other non-RestyleManager bits of that bug still apply and look fine to me.

Differential Revision: https://phabricator.services.mozilla.com/D38598

--HG--
extra : moz-landing-system : lando
2019-07-19 04:38:53 +00:00
Emilio Cobos Álvarez dcd7223f09 Bug 1566783 - Make sure to clear mLastAnchorScrolledTo after calling PresShell::ScrollToAnchor(). r=dholbert
Seems we can leave this node alive for too long if the user scrolls between
domcontentloaded (where GoToAnchor is called) and onload (where ScrollToAnchor()
is called).

Though it seems we can leave it for too long if we don't end up calling
ScrollToAnchor(), the documentation of the method claims that it's cleared
unconditionally.

Differential Revision: https://phabricator.services.mozilla.com/D38398

--HG--
extra : moz-landing-system : lando
2019-07-20 15:09:07 +00:00
Emilio Cobos Álvarez 937b1f9834 Bug 1566783 - Don't prevent PresShell::ScrollToAnchor() from working due to scroll anchoring adjustments that happen without the user scrolling. r=dholbert
We were bailing out because scroll anchoring adjustments can make this check
fail:

  * https://searchfox.org/mozilla-central/rev/22b330ecb3edba1536a54887060cbdd09db21c59/layout/base/PresShell.cpp#3194

Differential Revision: https://phabricator.services.mozilla.com/D38397

--HG--
extra : moz-landing-system : lando
2019-07-20 15:02:35 +00:00
Emilio Cobos Álvarez cf7beea50e Bug 1561794 - Do not crop display text of themed comboboxes due to padding. r=dbaron
This is a potential fix that I thought it was worth doing rather than
implementing Blink's platform-dependent silliness. This ensures that the display
frame always has enough space to display itself.

Note that it may still get clipped, if there's no room for both the display
frame and the button.

Differential Revision: https://phabricator.services.mozilla.com/D37922

--HG--
extra : moz-landing-system : lando
2019-07-20 14:54:33 +00:00
Masayuki Nakano 15fcb38af8 Bug 1548389 - part 10: Make `TextEditor::SetUnmaskRangeInternal()` expand the range if specified offset is middle of a surrogate pair r=m_kato
Unmasking is an optional style of showing password.  Therefore, if callers of
`nsIEditor::Unmask()` specify middle of surrogate pair(s), it may mean that
they want to expand the unmask range from shorter range which does not include
the high and/or low surrogate.  Therefore, one of the surrogates is in unmasked
range, we unmask the surrogate pair.  However, we handle this in a lot of
places, i..e., we have duplicated code.  This can get rid of these duplicates
with making `nsIEditor::Unmask()` expand the range automatically.

Differential Revision: https://phabricator.services.mozilla.com/D38432

--HG--
extra : moz-landing-system : lando
2019-07-22 03:56:33 +00:00
Masayuki Nakano 1e6858f9fe Bug 1548389 - part 9: Make ContentEventHandler return masked text r=m_kato
In some cases, other tools may show selected content in their UI.  E.g.,
character palette of macOS.  Therefore, we shouldn't allow them to show
masked password.

Differential Revision: https://phabricator.services.mozilla.com/D38430

--HG--
extra : moz-landing-system : lando
2019-07-22 03:56:15 +00:00
Masayuki Nakano 9dc8292d3f Bug 1548389 - part 8: Make `nsTextFrame::PeekOffsetWord()` scan masked text r=jfkthame
Double click, long tap, moving selection with keyboard and deleting text
scan word boundary.  With these changes, the text node has raw password
value even if it's masked visually.  For making safer,
`nsTextFrame::PeekOffsetWord()` should search word boundary in masked text.
Then, we can hide word boundary at masked range, but keep allowing to look
for word boundary only in unmasked range.

Differential Revision: https://phabricator.services.mozilla.com/D38013

--HG--
extra : moz-landing-system : lando
2019-07-22 03:55:53 +00:00
Masayuki Nakano 1c2108934c Bug 1548389 - part 6: Add automated tests for new API and rendering of password fields r=m_kato,Jamie
Differential Revision: https://phabricator.services.mozilla.com/D38010

--HG--
extra : moz-landing-system : lando
2019-07-22 03:55:13 +00:00
Masayuki Nakano 5febecd19b Bug 1548389 - part 5: Make `nsTextFrame` and related code treat masking password characters as text-transform r=jfkthame
Anonymous text node in password field has `NS_MAYBE_MASKED` flag and
`TextEditor` managing the node has range of unmasking.  This patch makes
`BuildTextRunsScanner::BuildTextRunForFrames()` treat text frame in
password field as `text-transform` applied.  For recording the unmask range,
this patch creates `nsTransformedCharStyle::mMaskPassword` and treats unmask
range start/end edges as different style boundary.  Therefore,
`nsCaseTransformTextRunFactory::TransformString()` can replace each character
with a password mask character with the information.

Note that we need to kill bidi algorithm in password fields with forms.css
because caret position will tell everybody whether the typing character is
an RTL or an LTR character.

Differential Revision: https://phabricator.services.mozilla.com/D38009

--HG--
extra : moz-landing-system : lando
2019-07-22 03:54:50 +00:00
Masayuki Nakano 3102de8053 Bug 1548389 - part 3: Make editor mark text node in password field as "maybe masked" r=smaug
With the previous patches, editor has stopped masking characters in password
field.  Instead, layout code needs to handle it.  However, layout code
especially around `nsTextFrame` is performance critical area.  Therefore,
layout code requires a quick way to check whether a text node in password
field or not.

This patch creates new flag for `CharacterData` node and marks all text nodes
whose characters should be masked with the flag when `EditorBase` or
`nsTextControlFrame` creates them.

Differential Revision: https://phabricator.services.mozilla.com/D38006

--HG--
extra : moz-landing-system : lando
2019-07-22 03:54:16 +00:00
Masayuki Nakano b8d245a76d Bug 1548389 - part 2: Make `TextEditRules` use the new editor API to mask/unmask characters in password editor r=m_kato
Now, `TextEditRules` should use the new editor API to mask/unmask characters
if it's for a password editor.  With this change, it does not need to manage
masked characters and unmasked characters separately since the anonymous
text node always have unmasked characters and `nsTextFrame` will mask the
characters at painting time.

Differential Revision: https://phabricator.services.mozilla.com/D38005

--HG--
extra : moz-landing-system : lando
2019-07-22 03:53:58 +00:00
Nicholas Nethercote 7974362afd Bug 1567329 - Append `_AtStartup` to `once` static pref getters. r=erahm
Currently it's completely unclear at use sites that the getters for `once`
static prefs return the pref value from startup, rather than the current pref
value. (Bugs have been caused by this.) This commit improves things by changing
the getter name to make it clear that the pref value obtained is from startup.

This required changing things within libpref so it distinguishes between the
"base id" (`foo_bar`) and the "full id" (`foo_bar` or
`foo_bar_DoNotUseDirectly` or `foo_bar_AtStartup` or
`foo_bar_AtStartup_DoNotUseDirectly`; the name used depends on the `mirror` and
`do_not_use_directly` values in the YAML definition.) The "full id" is used in
most places, while the "base id" is used for the `GetPrefName_*` and
`GetPrefDefault_*` functions.

(This is a nice demonstration of the benefits of the YAML file, BTW. Making
this change with the old code would have involved adding an entry to every
single pref in StaticPrefList.h.)

The patch also rejigs the comment at the top of StaticPrefList.yaml, to clarify
some things.

Differential Revision: https://phabricator.services.mozilla.com/D38604

--HG--
extra : moz-landing-system : lando
2019-07-22 02:10:14 +00:00
Andreea Pavel cf1fe2597b Merge mozilla-central to autoland on a CLOSED TREE 2019-07-20 13:09:03 +03:00
Andreea Pavel c07a5d8ccc Merge mozilla-inbound to mozilla-central a=merge 2019-07-20 12:51:57 +03:00
Mihai Alexandru Michis e637325c0e Merge mozilla-central to mozilla-inbound. a=merge
--HG--
extra : amend_source : f93ba2cbe8a0ea251a8c95dd565117a109e25a91
2019-07-20 01:23:23 +03:00
Jonathan Kew f37f1040f9 Bug 1567397 - Adjust fuzzy annotations for minor subpixel changes in rotated nastaliq tests. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D38646

--HG--
extra : moz-landing-system : lando
2019-07-19 22:49:16 +00:00
longsonr 15c69a978b Bug 1353164 Part 2 - Change dominant-baseline from reset to inherit r=heycam
--HG--
extra : source : 5c8a0f41b86df61e7a1ef26b64fb355b5a11ab7d
2019-07-19 12:57:54 +01:00
Bogdan Tara e34bf750c9 Backed out changeset 5c8a0f41b86d (bug 1353164) for test_css-properties-db.js failures CLOSED TREE 2019-07-19 16:50:35 +03:00
longsonr 1335355ed5 Bug 1353164 Part 2 - Change dominant-baseline from reset to inherit r=heycam 2019-07-19 12:57:54 +01:00
Charlie Marlow f66a867469 Bug 1567282: renamed text-decoration-width to text-decoration-thickness r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D38586

--HG--
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-computed.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-computed.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-initial.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-initial.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-invalid.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-invalid.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-linethrough-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-linethrough-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-overline-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-overline-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-scroll-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-scroll-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-underline-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-underline-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-valid.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-valid.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-vertical-001.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-vertical-001.html.ini
rename : testing/web-platform/meta/css/css-text-decor/text-decoration-width-vertical-002.html.ini => testing/web-platform/meta/css/css-text-decor/text-decoration-thickness-vertical-002.html.ini
rename : testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/text-decoration-width.html.ini => testing/web-platform/meta/css/css-typed-om/the-stylepropertymap/properties/text-decoration-thickness.html.ini
rename : testing/web-platform/tests/css/css-text-decor/reference/text-decoration-width-001-notref.html => testing/web-platform/tests/css/css-text-decor/reference/text-decoration-thickness-001-notref.html
rename : testing/web-platform/tests/css/css-text-decor/reference/text-decoration-width-green-rect-ref.html => testing/web-platform/tests/css/css-text-decor/reference/text-decoration-thickness-green-rect-ref.html
rename : testing/web-platform/tests/css/css-text-decor/reference/text-decoration-width-scroll-001-ref.html => testing/web-platform/tests/css/css-text-decor/reference/text-decoration-thickness-scroll-001-ref.html
rename : testing/web-platform/tests/css/css-text-decor/reference/text-decoration-width-vertical-green-rect-ref.html => testing/web-platform/tests/css/css-text-decor/reference/text-decoration-thickness-vertical-green-rect-ref.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-computed.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-computed.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-initial.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-initial.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-invalid.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-invalid.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-linethrough-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-linethrough-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-overline-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-overline-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-scroll-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-scroll-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-underline-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-underline-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-valid.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-valid.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-vertical-001.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-vertical-001.html
rename : testing/web-platform/tests/css/css-text-decor/text-decoration-width-vertical-002.html => testing/web-platform/tests/css/css-text-decor/text-decoration-thickness-vertical-002.html
rename : testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-width.html => testing/web-platform/tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-thickness.html
extra : moz-landing-system : lando
2019-07-19 16:33:08 +00:00
Gurzau Raul 9866332964 Backed out 3 changesets (bug 1559975) for linting failure at WebIDL.py on a CLOSED TREE.
Backed out changeset a7154744a5d7 (bug 1559975)
Backed out changeset 4005ac274170 (bug 1559975)
Backed out changeset 68ed1ccb5921 (bug 1559975)
2019-07-19 18:25:10 +03:00
Ting-Yu Lin af311f8f6e Bug 1566672 - Handle the {ib}-split reframing in multicol subtree properly. r=dholbert
Delete `return false` at the end of the if-statement block that handling
the multicol subtree reframing, and let it fall though the bottom of
WipeContainingBlock() where there is a complete logic for ib-split
reframing.

Differential Revision: https://phabricator.services.mozilla.com/D38548

--HG--
extra : moz-landing-system : lando
2019-07-19 19:38:05 +00:00
Nicolas Silva a58ba90d31 Bug 1567241 - Update to euclid 0.20. r=kvark, emilio.
Differential Revision: https://phabricator.services.mozilla.com/D38530

--HG--
extra : source : d65512e23a13164f540430ff0c85a1f2a147d8a0
2019-07-18 22:54:16 +02:00
Jonathan Kew 91ee22332b Bug 1513423 - Measure text by always laying out glyphs LTR. r=heycam
Depends on D38298

Differential Revision: https://phabricator.services.mozilla.com/D38299

--HG--
extra : moz-landing-system : lando
2019-07-18 04:55:05 +00:00
Jonathan Kew 07940ead4d Bug 1513423 - Additional testcases for correct bounding box of complex RTL text runs. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D38298

--HG--
rename : layout/reftests/bugs/1116480-1-fakeitalic-overflow-ref.html => layout/reftests/bugs/1513423-1-ref.html
rename : layout/reftests/bugs/1116480-1-fakeitalic-overflow.html => layout/reftests/bugs/1513423-1.html
rename : layout/reftests/bugs/1116480-1-fakeitalic-overflow-ref.html => layout/reftests/bugs/1513423-2-ref.html
rename : layout/reftests/bugs/1116480-1-fakeitalic-overflow.html => layout/reftests/bugs/1513423-2.html
extra : moz-landing-system : lando
2019-07-18 21:52:08 +00:00
Blito 13e6277f19 Bug 1541861 - Improve exception message for CSSStyleSheet.prototype.deleteRule r=emilio
CSSStyleSheet.prototype.deleteRule can throw an IndexSizeError. This change
makes it so that the exception thrown has the max valid index for that function.

Differential Revision: https://phabricator.services.mozilla.com/D38519

--HG--
extra : moz-landing-system : lando
2019-07-18 17:51:39 +00:00
Cameron McCormack 4a4a362599 Bug 1555142 - Don't assert if we don't find a -webkit-line-clamp ellipsis when searching for one to clear. r=dholbert
The line the ellipsis was on may have already been removed.

Differential Revision: https://phabricator.services.mozilla.com/D38449

--HG--
extra : moz-landing-system : lando
2019-07-18 16:49:38 +00:00
Andrea Marchesini 14d6426cdb Bug 1565942 - Allow the loading of TYPE_FONT from file: URLs, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D38561

--HG--
extra : moz-landing-system : lando
2019-07-18 20:50:59 +00:00
RuchikaGosain 6b0bf3bb0e Bug 1564555 - Enable some more ESLint rules for layout. r=Standard8,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D38007

--HG--
extra : moz-landing-system : lando
2019-07-18 21:00:21 +00:00