This repository has been archived by the owner on Jun 24, 2022. It is now read-only.
/
ChangeLog
16750 lines (13074 loc) · 776 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2020-05-16 Zalan Bujtas <zalan@apple.com>
[LFC][TFC] Take vertical spacing into account when setting the height of a cell with rowspan
https://bugs.webkit.org/show_bug.cgi?id=211976
Reviewed by Antti Koivisto.
When a cell spans over multiple rows, the height of the cell includes the vertical spacing between those spanned rows as well.
Test: fast/layoutformattingcontext/table-simple-rowspan-with-spacing.html
* layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::setUsedGeometryForCells):
2020-05-15 Antti Koivisto <antti@apple.com>
Nullptr crash in MediaQueryMatcher::evaluateAll
https://bugs.webkit.org/show_bug.cgi?id=211963
<rdar://problem/62850977>
Reviewed by Brent Fulgham.
Test: fast/media/media-query-list-mutation.html
* css/MediaQueryMatcher.cpp:
(WebCore::MediaQueryMatcher::evaluateAll):
Copy the vector before iterating.
2020-05-15 Jack Lee <shihchieh_lee@apple.com>
Nullptr crash in WebCore::Node::treeScope() when processing nested list insertion commands.
https://bugs.webkit.org/show_bug.cgi?id=211964
<rdar://problem/63224871>
Reviewed by Geoffrey Garen.
Load event may fire in fixOrphanedListChild() and change the node tree. In doApplyForSingleParagraph check for
disconnected node returned by fixOrphanedListChild() and bail out.
Test: editing/inserting/nested-list-insertion-crash.html
* editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApplyForSingleParagraph):
2020-05-15 Alex Christensen <achristensen@webkit.org>
Use enum serialization instead of casting to/from uint32_t
https://bugs.webkit.org/show_bug.cgi?id=211885
<rdar://problem/60106629> and <rdar://problem/60107663>
Reviewed by Geoffrey Garen.
This doesn't change anything except make stricter checks at IPC boundaries.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::visiblePositionRangeForLine const):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityModifySelection:increase:]):
* editing/EditingBehavior.h:
* editing/Editor.cpp:
(WebCore::Editor::shouldSmartDelete):
(WebCore::Editor::deleteWithDirection):
(WebCore::Editor::misspelledWordAtCaretOrRange const):
(WebCore::Editor::guessesForMisspelledOrUngrammatical):
(WebCore::Editor::markMisspellingsAfterTypingToWord):
(WebCore::Editor::markAndReplaceFor):
(WebCore::Editor::handleAcceptedCandidate):
* editing/EditorCommand.cpp:
(WebCore::executeDeleteBackward):
(WebCore::executeDeleteBackwardByDecomposingPreviousCharacter):
(WebCore::executeDeleteForward):
(WebCore::executeDeleteToBeginningOfLine):
(WebCore::executeDeleteToBeginningOfParagraph):
(WebCore::executeDeleteToEndOfLine):
(WebCore::executeDeleteToEndOfParagraph):
(WebCore::executeDeleteWordBackward):
(WebCore::executeDeleteWordForward):
(WebCore::executeForwardDelete):
(WebCore::executeMoveBackward):
(WebCore::executeMoveBackwardAndModifySelection):
(WebCore::executeMoveDown):
(WebCore::executeMoveDownAndModifySelection):
(WebCore::executeMoveForward):
(WebCore::executeMoveForwardAndModifySelection):
(WebCore::executeMoveLeft):
(WebCore::executeMoveLeftAndModifySelection):
(WebCore::executeMoveRight):
(WebCore::executeMoveRightAndModifySelection):
(WebCore::executeMoveToBeginningOfDocument):
(WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
(WebCore::executeMoveToBeginningOfLine):
(WebCore::executeMoveToBeginningOfLineAndModifySelection):
(WebCore::executeMoveToBeginningOfParagraph):
(WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
(WebCore::executeMoveToBeginningOfSentence):
(WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
(WebCore::executeMoveToEndOfDocument):
(WebCore::executeMoveToEndOfDocumentAndModifySelection):
(WebCore::executeMoveToEndOfSentence):
(WebCore::executeMoveToEndOfSentenceAndModifySelection):
(WebCore::executeMoveToEndOfLine):
(WebCore::executeMoveToEndOfLineAndModifySelection):
(WebCore::executeMoveToEndOfParagraph):
(WebCore::executeMoveToEndOfParagraphAndModifySelection):
(WebCore::executeMoveParagraphBackwardAndModifySelection):
(WebCore::executeMoveParagraphForwardAndModifySelection):
(WebCore::executeMoveUp):
(WebCore::executeMoveUpAndModifySelection):
(WebCore::executeMoveWordBackward):
(WebCore::executeMoveWordBackwardAndModifySelection):
(WebCore::executeMoveWordForward):
(WebCore::executeMoveWordForwardAndModifySelection):
(WebCore::executeMoveWordLeft):
(WebCore::executeMoveWordLeftAndModifySelection):
(WebCore::executeMoveWordRight):
(WebCore::executeMoveWordRightAndModifySelection):
(WebCore::executeMoveToLeftEndOfLine):
(WebCore::executeMoveToLeftEndOfLineAndModifySelection):
(WebCore::executeMoveToRightEndOfLine):
(WebCore::executeMoveToRightEndOfLineAndModifySelection):
(WebCore::executeSelectLine):
(WebCore::executeSelectParagraph):
(WebCore::executeSelectSentence):
(WebCore::executeSelectWord):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::FrameSelection):
(WebCore::FrameSelection::willBeModified):
(WebCore::FrameSelection::modifyExtendingRight):
(WebCore::FrameSelection::modifyExtendingForward):
(WebCore::FrameSelection::modifyMovingRight):
(WebCore::FrameSelection::modifyMovingForward):
(WebCore::FrameSelection::modifyExtendingLeft):
(WebCore::FrameSelection::modifyExtendingBackward):
(WebCore::FrameSelection::modifyMovingLeft):
(WebCore::FrameSelection::modifyMovingBackward):
(WebCore::isBoundary):
(WebCore::FrameSelection::textSelectionIntent):
(WebCore::textSelectionWithDirectionAndGranularity):
(WebCore::FrameSelection::modify):
(WebCore::FrameSelection::clear):
(WebCore::FrameSelection::willBeRemovedFromFrame):
(WebCore::FrameSelection::updateAppearance):
(WebCore::FrameSelection::wordSelectionContainingCaretSelection):
(WebCore::FrameSelection::rangeByAlteringCurrentSelection const):
* editing/FrameSelection.h:
* editing/TextGranularity.h:
(): Deleted.
* editing/TypingCommand.cpp:
(WebCore::editActionForTypingCommand):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):
(WebCore::TypingCommand::insertTextRunWithoutNewlines):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
(WebCore::TypingCommand::deleteSelection):
* editing/TypingCommand.h:
* editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
* editing/VisibleSelection.h:
* editing/VisibleUnits.cpp:
(WebCore::directionIsDownstream):
(WebCore::atBoundaryOfGranularity):
(WebCore::withinTextUnitOfGranularity):
(WebCore::nextWordBoundaryInDirection):
(WebCore::nextSentenceBoundaryInDirection):
(WebCore::nextParagraphBoundaryInDirection):
(WebCore::positionOfNextBoundaryOfGranularity):
(WebCore::enclosingTextUnitOfGranularity):
(WebCore::charactersAroundPosition):
(WebCore::wordRangeFromPosition):
(WebCore::closestWordBoundaryForPosition):
(WebCore::rangeExpandedByCharactersInDirectionAtWordBoundary):
(WebCore::wordBoundaryForPositionWithoutCrossingLine):
* editing/cocoa/DataDetection.mm:
(WebCore::DataDetection::detectItemAroundHitTestResult):
* editing/cocoa/DictionaryLookup.mm:
* editing/mac/DictionaryLookupLegacy.mm:
* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::create):
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::webGLPolicyForURL const):
(WebCore::FrameLoaderClient::resolveWebGLPolicyForURL const):
(): Deleted.
* loader/FrameLoaderTypes.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected):
* page/DOMSelection.cpp:
(WebCore::DOMSelection::modify):
* page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
(WebCore::EventHandler::selectClosestWordFromHitTestResult):
(WebCore::EventHandler::selectClosestContextualWordFromMouseEvent):
(WebCore::EventHandler::selectClosestContextualWordOrLinkFromMouseEvent):
(WebCore::EventHandler::handleMousePressEventTripleClick):
(WebCore::EventHandler::handleMousePressEventSingleClick):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::setInitialKeyboardSelection):
(WebCore::handleKeyboardSelectionMovement):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::isOverTextInsideFormControlElement const):
2020-05-15 Simon Fraser <simon.fraser@apple.com>
Rename the mapLocalToContainer() container argument, since it's not just used for repaint
https://bugs.webkit.org/show_bug.cgi?id=211974
Reviewed by Zalan Bujtas.
mapLocalToContainer() is a generic geometry mapping function, and not just used for repaint,
so rename the "repaintContainer" argument to "ancestorContainer".
Also fix some weirdly named variables in RenderMultiColumnFlow.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::mapLocalToContainer const):
* rendering/RenderBox.h:
* rendering/RenderFragmentedFlow.cpp:
(WebCore::RenderFragmentedFlow::mapLocalToContainer const):
* rendering/RenderFragmentedFlow.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::mapLocalToContainer const):
(WebCore::RenderInline::pushMappingToContainer const):
* rendering/RenderMultiColumnFlow.cpp:
(WebCore::RenderMultiColumnFlow::addFragmentToThread):
(WebCore::RenderMultiColumnFlow::mapFromFlowToFragment const):
(WebCore::RenderMultiColumnFlow::physicalTranslationOffsetFromFlowToFragment const):
(WebCore::RenderMultiColumnFlow::physicalTranslationFromFlowToFragment const):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::mapLocalToContainer const):
(WebCore::RenderObject::localToContainerQuad const):
(WebCore::RenderObject::localToContainerPoint const):
* rendering/RenderObject.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::mapLocalToContainer const):
* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::mapLocalToContainer const):
* rendering/svg/RenderSVGForeignObject.h:
* rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::mapLocalToContainer const):
* rendering/svg/RenderSVGInline.h:
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::mapLocalToContainer const):
* rendering/svg/RenderSVGModelObject.h:
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::mapLocalToContainer const):
* rendering/svg/RenderSVGRoot.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::mapLocalToContainer const):
* rendering/svg/RenderSVGText.h:
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::mapLocalToContainer):
* rendering/svg/SVGRenderSupport.h:
2020-05-15 Simon Fraser <simon.fraser@apple.com>
REGRESSION (r249091): Can't click on a video in the second column of a paginated web view
https://bugs.webkit.org/show_bug.cgi?id=211973
<rdar://problem/61418775>
Reviewed by Zalan Bujtas.
In r249091 I made clip layer computation use offsetFromAncestor() by default, but this turns
out to give different behavior from mapping via renderers in columns.
The bug was that accumulateOffsetTowardsAncestor() would map through the
RenderMultiColumnFlow columns if the ancestorLayer was the one that was using columns,
but mapping via renderers only maps through columns if converting to some ancestor of
the columnated renderer.
I did not investigate why this only affects video.
Test: fast/multicol/clipped-video-in-second-column.html
* rendering/RenderLayer.cpp:
(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::calculateClipRects const):
2020-05-15 Kenneth Russell <kbr@chromium.org>
OES_texture_float internal format conversion must depend on WEBGL_color_buffer_float
https://bugs.webkit.org/show_bug.cgi?id=211971
Reviewed by Dean Jackson.
Only adjust the internal formats of textures created for the WebGL
1.0 OES_texture_float extension if the WEBGL_color_buffer_float
extension has been enabled.
Covered by the WebGL 1.0 OES_texture_float conformance tests when
run on iOS with another forthcoming fix to ANGLE which will enable
the OES_texture_float extension on that platform.
* platform/graphics/angle/ExtensionsGLANGLE.cpp:
(WebCore::ExtensionsGLANGLE::ensureEnabled):
(WebCore::ExtensionsGLANGLE::adjustWebGL1TextureInternalFormat):
* platform/graphics/angle/ExtensionsGLANGLE.h:
* platform/graphics/angle/GraphicsContextGLANGLE.cpp:
(WebCore::GraphicsContextGLOpenGL::texImage2DDirect):
2020-05-15 Oriol Brufau <obrufau@igalia.com>
[css-grid] Treat percentages as auto for the minimum contribution
https://bugs.webkit.org/show_bug.cgi?id=195967
Reviewed by Manuel Rego Casasnovas.
The minimum contribution of a grid item is the outer size resulting from
the minimum size if the computed preferred size behaves as auto, or the
min-content contribution otherwise.
If the preferred size is a percentage, it should be resolved with
respect to the grid area, which depends on the minimum contribution
of the item. Thus the percentage is cyclic and behaves as auto.
Before this change, WebKit only checked whether the preferred size is
auto, not whether it behaves as auto. In fact this was according to
an older version of the spec, but it was changed in
https://github.com/w3c/csswg-drafts/issues/2367
Test: imported/w3c/web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html
Some cases in the test still fail due to bug 209461.
* rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
2020-05-15 Antoine Quint <graouts@apple.com>
[Web Animations] Animation with a single keyframe is not accelerated
https://bugs.webkit.org/show_bug.cgi?id=188730
<rdar://problem/43481113>
Reviewed by Dean Jackson.
Test: webanimations/accelerated-animation-single-keyframe.html
Prior to attempting to run an accelerated effect, ensure that the KeyframeList passed to
RenderLayerModelObject::startAnimation() does not have implicit keyframes since eventually
GraphicsLayerCA::animationCanBeAccelerated() would be called and would reject a single-keyframe
animation. To do this, we use the same code used in Style::Resolver::keyframeStylesForAnimation()
which we refactor in the new KeyframeList::fillImplicitKeyframes() method.
* animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::copyPropertiesFromSource):
(WebCore::KeyframeEffect::applyPendingAcceleratedActions):
* rendering/style/KeyframeList.cpp:
(WebCore::KeyframeList::hasImplicitKeyframes const):
(WebCore::KeyframeList::copyKeyframes):
(WebCore::zeroPercentKeyframe):
(WebCore::hundredPercentKeyframe):
(WebCore::KeyframeList::fillImplicitKeyframes):
* rendering/style/KeyframeList.h:
* style/StyleResolver.cpp:
(WebCore::Style::Resolver::keyframeStylesForAnimation):
2020-05-15 Said Abou-Hallawa <sabouhallawa@apple.com>
The initial value of "transform-box" should be "view-box"
https://bugs.webkit.org/show_bug.cgi?id=211927
Reviewed by Simon Fraser.
Specs: https://drafts.csswg.org/css-transforms/#transform-box.
Test: svg/transforms/svg-transform-box-initial.html
* css/CSSProperties.json:
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::initialTransformBox):
2020-05-15 Andres Gonzalez <andresg_22@apple.com>
Fix for crash in accessibility/mac/replace-text-with-range-on-webarea-element.html in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=211954
Reviewed by Chris Fleizach.
Fixes crash in isolated tree mode in accessibility/mac/replace-text-with-range-on-webarea-element.html.
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::postTextStateChangeNotification): Check for null object before dereferencing.
(WebCore::AXObjectCache::rootWebArea): Reverted to returning an AXObject since it is not needed to return AXCoreObject.
* accessibility/AXObjectCache.h:
2020-05-15 Zalan Bujtas <zalan@apple.com>
[LFC][TFC] Move column and row balancing logic to a dedicated class
https://bugs.webkit.org/show_bug.cgi?id=211937
Reviewed by Antti Koivisto.
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableFormattingContext::setUsedGeometryForRows):
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraSpace):
(WebCore::Layout::ColumnSpan::hasSpan): Deleted.
(WebCore::Layout::ColumnSpan::isSpanned): Deleted.
(WebCore::Layout::ColumnSpan::spanCount): Deleted.
(WebCore::Layout::ColumnSpan::startSpan): Deleted.
(WebCore::Layout::ColumnSpan::endSpan): Deleted.
(WebCore::Layout::ColumnSpan::index): Deleted.
(WebCore::Layout::ColumnSpan::size): Deleted.
(WebCore::Layout::ColumnSpan::spacing): Deleted.
(WebCore::Layout::RowSpan::hasSpan): Deleted.
(WebCore::Layout::RowSpan::isSpanned): Deleted.
(WebCore::Layout::RowSpan::spanCount): Deleted.
(WebCore::Layout::RowSpan::startSpan): Deleted.
(WebCore::Layout::RowSpan::endSpan): Deleted.
(WebCore::Layout::RowSpan::index): Deleted.
(WebCore::Layout::RowSpan::size): Deleted.
(WebCore::Layout::RowSpan::spacing): Deleted.
(WebCore::Layout::GridSpace::isEmpty const): Deleted.
(): Deleted.
(WebCore::Layout::max): Deleted.
(WebCore::Layout::operator-): Deleted.
(WebCore::Layout::operator+=): Deleted.
(WebCore::Layout::operator-=): Deleted.
(WebCore::Layout::operator/): Deleted.
(WebCore::Layout::distributeAvailableSpace): Deleted.
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraHorizontalSpace): Deleted.
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraVerticalSpace): Deleted.
* layout/tableformatting/TableFormattingContext.h:
* layout/tableformatting/TableFormattingState.h:
(WebCore::Layout::TableFormattingState::tableGrid const):
* layout/tableformatting/TableGrid.h:
(WebCore::Layout::TableGrid::widthConstraints const):
(WebCore::Layout::TableGrid::Rows::list const):
(WebCore::Layout::TableGrid::widthConstraints): Deleted.
(WebCore::Layout::TableGrid::Rows::rowList const): Deleted.
2020-05-15 Alicia Boya García <aboya@igalia.com>
[GStreamer][MediaStream] Fix missing video size
https://bugs.webkit.org/show_bug.cgi?id=211938
Reviewed by Philippe Normand.
r261683 redefined m_currentVideoStreamId. Under the new design, tracks
have several states:
- "wanted": a track has been selected from JavaScript, or chosen by
default.
- "requested": a track that is expected to be chosen by the next
STREAMS_SELECTED message.
- "current": a track that has been selected after the STREAMS_SELECTED
message has been handled.
naturalSize() used to check m_currentVideoStreamId to look for the
video size, but this is called relatively early before the track
becomes "current" under the new design.
Since the size tags can't be queried at any time, it makes sense to
use m_wantedVideoStreamId instead.
This fixes the following tests which were previously regressed:
fast/mediastream/get-user-media-constraints.html
fast/mediastream/getUserMedia-video-rescaling.html
fast/mediastream/mediastreamtrack-video-clone.html
imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-firstframe.https.html
fast/mediastream/media-stream-renders-first-frame.html
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::naturalSize const):
2020-05-15 Antti Koivisto <antti@apple.com>
[Wheel event region] Invalidation when changing listeners on elements
https://bugs.webkit.org/show_bug.cgi?id=211895
Reviewed by Simon Fraser.
Doesn't handle root (window/document) invalidation yet.
Test: fast/scrolling/mac/wheel-event-listener-region-element-invalidation.html
* dom/EventTarget.cpp:
(WebCore::EventTarget::addEventListener):
(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::removeAllEventListeners):
Invalidate element style on wheel event changes.
* rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::invalidateEventRegion):
Build on non-iOS platforms.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::maintainsEventRegion const):
Factor into function so it can be shared with RenderLayer::invalidateEventRegion.
(WebCore::RenderLayerBacking::updateEventRegion):
* rendering/RenderLayerBacking.h:
2020-05-15 Antoine Quint <graouts@apple.com>
Cursor should not update on a 20ms timer
https://bugs.webkit.org/show_bug.cgi?id=211884
<rdar://problem/63220368>
Reviewed by Simon Fraser.
Test: fast/events/mouse-cursor-udpate-during-raf.html
Update cursors after rAF callbacks have been serviced and layout has been updated.
* page/Page.cpp:
(WebCore::Page::updateRendering):
(WebCore::Page::doAfterUpdateRendering):
2020-05-15 Andres Gonzalez <andresg_22@apple.com>
Update the isolated tree only if isolated tree mode is enabled.
https://bugs.webkit.org/show_bug.cgi?id=211936
Reviewed by Chris Fleizach.
Check for isIsolatedTreeEnabled before updating the isolated tree.
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::updateIsolatedTree):
2020-05-15 Adrian Perez de Castro <aperez@igalia.com>
[GTK3] Bring back usage of GtkMenu for context menus
https://bugs.webkit.org/show_bug.cgi?id=211557
Reviewed by Carlos Garcia Campos.
No new tests needed.
* platform/gtk/GtkVersioning.h: Remove GtkPopover functions used only for context menus.
2020-05-14 Said Abou-Hallawa <sabouhallawa@apple.com>
Unreviewed. Fix build warning after r261113
Remove unused variable.
* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::preferredScriptedAnimationInterval const):
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
Expose isColumnHeaderCell and isRowHeaderCell through AXCoreObject.
https://bugs.webkit.org/show_bug.cgi?id=211919
Reviewed by Chris Fleizach.
Multiple tests including accessibility/crash-table-recursive-layout.html.
- Expose isColumn/RowHeaderCell through AXCoreObject in order to make the
return value of AccessibilityTable::cellForColumnAndRow an AXCoreObject.
- Implemented these methods for AXIsolatedObject.
- isolatedCopy the accessibilityDescription property.
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityObjectInterface.h:
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::cellForColumnAndRow): Removed incorrect
assert since children are AXCoreObjects and not necessarily AccessibilityTableCells.
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::isTableCellInSameRowGroup):
(WebCore::AccessibilityTableCell::isTableCellInSameColGroup):
(WebCore::AccessibilityTableCell::columnHeaders):
(WebCore::AccessibilityTableCell::rowHeaders):
* accessibility/AccessibilityTableCell.h:
* accessibility/AccessibilityTableColumn.cpp:
(WebCore::AccessibilityTableColumn::addChildren):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityElementForRow:andColumn:]):
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
* accessibility/isolatedtree/AXIsolatedObject.h:
2020-05-14 Timothy Hatcher <timothy@apple.com>
Add baseURL version of _WKUserStyleSheet forWKWebView.
https://bugs.webkit.org/show_bug.cgi?id=211926
rdar://problem/62074675
Reviewed by Devin Rousso.
Consolidate the paths taken for adding a UserStyleSheet. The m_injectedStyleSheetToSource
was missing for page specific style sheets since it was another loop.
* dom/ExtensionStyleSheets.cpp:
(WebCore::ExtensionStyleSheets::updateInjectedStyleSheetCache const):
(WebCore::ExtensionStyleSheets::injectPageSpecificUserStyleSheet):
(WebCore::ExtensionStyleSheets::removePageSpecificUserStyleSheet):
(WebCore::ExtensionStyleSheets::detachFromDocument):
* dom/ExtensionStyleSheets.h:
2020-05-14 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthn] Relaxing signature length requirements for U2fRegister
https://bugs.webkit.org/show_bug.cgi?id=209645
<rdar://problem/63204591>
Reviewed by Brent Fulgham.
It turns out the length range specified from the spec, i.e., [71, 73] is wrong.
https://fidoalliance.org/specs/fido-u2f-v1.2-ps-20170411/fido-u2f-raw-message-formats-v1.2-ps-20170411.html#registration-response-message-success
It should actually be [70, 72]. However, as a middleware to relay the messages, user agents
are not necessary to check the length. Therefore, the check is relaxed to make the code more robust.
Covered by existing tests.
* Modules/webauthn/fido/U2fResponseConverter.cpp:
(fido::WebCore::createFidoAttestationStatementFromU2fRegisterResponse):
2020-05-14 Timothy Hatcher <timothy@apple.com>
Add sourceURL to _evaluateJavaScript: so the scripts appear in Web Inspector.
https://bugs.webkit.org/show_bug.cgi?id=211904
rdar://problem/62074376
Reviewed by Devin Rousso.
Added sourceURL to RunJavaScriptParameters. Use it instead of the frame's document URL.
* bindings/js/RunJavaScriptParameters.h:
(WebCore::RunJavaScriptParameters::RunJavaScriptParameters):
(WebCore::RunJavaScriptParameters::encode const):
(WebCore::RunJavaScriptParameters::decode):
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::executeScriptInWorldIgnoringException):
(WebCore::ScriptController::executeScriptInWorld):
(WebCore::ScriptController::callInWorld):
(WebCore::ScriptController::executeUserAgentScriptInWorld):
2020-05-14 Eric Carlson <eric.carlson@apple.com>
[Cocoa] Don't clear NowPlaying state unless it was set
https://bugs.webkit.org/show_bug.cgi?id=211899
<rdar://problem/62249870>
Reviewed by Jer Noble.
Test: media/now-playing-status-without-media.html
* platform/audio/PlatformMediaSessionManager.h:
(WebCore::PlatformMediaSessionManager::haveEverRegisteredAsNowPlayingApplication const): Method
added for testing.
* platform/audio/cocoa/MediaSessionManagerCocoa.h:
* platform/audio/cocoa/MediaSessionManagerCocoa.mm:
(WebCore::MediaSessionManagerCocoa::updateNowPlayingInfo): Don't clear NowPlaying state unless
it was setup in the first place.
* testing/Internals.cpp:
(WebCore::Internals::nowPlayingState const): Add new property.
* testing/Internals.h:
* testing/Internals.idl:
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
AXCoreObject font comparison methods should take another AXCoreObject instead of a RenderObject.
https://bugs.webkit.org/show_bug.cgi?id=211909
Reviewed by Chris Fleizach.
Covered by existing tests.
- In order for font comparison methods to be implementted for both
AXObjects and AXIsolatedObjects, they should take another AXCoreObject
to compare against, instead of a RenderObject.
- The AXIsolatedObject implementation of these methods is forwarded to
the associated AXObject and dispatched to the main thread.
- Implemented AXIsolatedObject::accessibilityDescription, hasUnderline and isUnvisited.
* accessibility/AccessibilityObject.cpp:
(WebCore::Accessibility::isAccessibilityObjectSearchMatchAtIndex):
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityObjectInterface.h:
(WebCore::AXCoreObject::isNativeListBox const):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::hasSameFont const):
(WebCore::AccessibilityRenderObject::hasSameFontColor const):
(WebCore::AccessibilityRenderObject::hasSameStyle const):
* accessibility/AccessibilityRenderObject.h:
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::hasSameFont const):
(WebCore::AXIsolatedObject::hasSameFontColor const):
(WebCore::AXIsolatedObject::hasSameStyle const):
(WebCore::AXIsolatedObject::isNativeListBox const): Deleted, implemented in base class.
(WebCore::AXIsolatedObject::isUnvisited const): Deleted, inlined in header.
(WebCore::AXIsolatedObject::hasUnderline const): Deleted, inlined in header.
(WebCore::AXIsolatedObject::accessibilityDescription const): Deleted, inlined in header.
* accessibility/isolatedtree/AXIsolatedObject.h:
2020-05-14 Nikita Vasilyev <nvasilyev@apple.com>
Web Inspector: front-end shouldn't change the order of User Style Sheet rules
https://bugs.webkit.org/show_bug.cgi?id=210893
<rdar://problem/61937118>
Reviewed by Devin Rousso.
Previously, some style sheets were falsly detected as Inspector::Protocol::CSS::StyleSheetOrigin::User
causing incorrect order of style rules in Web Inspector.
Test: inspector/css/getMatchedStylesForNode.html
* inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::detectOrigin):
2020-05-14 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] Update the placeholder icon image for attachment elements with progress="0"
https://bugs.webkit.org/show_bug.cgi?id=211898
<rdar://problem/63203900>
Reviewed by Timothy Hatcher.
Refactor logic for creating an attachment placeholder image into a separate helper method, with a
WebKitAdditions implementation when HAVE(SYSTEM_ATTACHMENT_PLACEHOLDER_ICON) is defined.
* rendering/RenderThemeMac.mm:
(WebCore::createAttachmentPlaceholderImage):
(WebCore::paintAttachmentIconPlaceholder):
2020-05-14 Chris Dumez <cdumez@apple.com>
Regression(r254856) Family Health iOS app is broken due to lack for WebSQL support
https://bugs.webkit.org/show_bug.cgi?id=211896
<rdar://problem/63025045>
Reviewed by Maciej Stachowiak.
Add RuntimeApplicationChecks function to identify Family Health app on iOS.
* platform/RuntimeApplicationChecks.h:
* platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::IOSApplication::isFamilyHealthApp):
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
AXIsolatedTree::updateChildren needs to apply pending changes before updating the given node.
https://bugs.webkit.org/show_bug.cgi?id=211790
Reviewed by Chris Fleizach.
Covered by multiple tests.
AXIsolatedTree::updateChildren may be fired for an isolated object that
is still in the pending changes list, and thus nodeForID would fail,
causing the isolated tree to not be updated. This patch calls
applyPendingChanges before updating the given node's children.
Additional logging was added including the logging of the AXObjectCache
object hierarchy.
* accessibility/AXLogger.cpp:
(WebCore::AXLogger::log):
(WebCore::operator<<):
* accessibility/AXLogger.h:
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::remove):
(WebCore::AXObjectCache::postNotification):
(WebCore::AXObjectCache::performDeferredCacheUpdate):
(WebCore::AXObjectCache::updateIsolatedTree):
* accessibility/AXObjectCache.h:
* accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNode):
(WebCore::AXIsolatedTree::updateSubtree):
(WebCore::AXIsolatedTree::updateChildren):
(WebCore::AXIsolatedTree::focusedNode):
(WebCore::AXIsolatedTree::removeNode):
(WebCore::AXIsolatedTree::removeSubtree):
(WebCore::AXIsolatedTree::applyPendingChanges):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
Fix for crash in LayoutTest in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=211894
Reviewed by Chris Fleizach.
Several LayoutTests.
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): Check backing object for nullity before dereferencing.
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
AXIsolatedObject::isOnScreen needs to be dispatched to the main thread.
https://bugs.webkit.org/show_bug.cgi?id=211893
Reviewed by Chris Fleizach.
Covered by existing tests.
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::children): Split assert into two lines for readability.
(WebCore::AXIsolatedObject::isOnScreen const): Forward to associated AXObject and dispatch to the main thread.
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
Implementation of AXIsolatedObject::hasPlainText.
https://bugs.webkit.org/show_bug.cgi?id=211892
Reviewed by Chris Fleizach.
Covered by existing tests.
Adding hasPlainText to the cached properties map.
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::hasPlainText const): Deleted, inlined in header.
* accessibility/isolatedtree/AXIsolatedObject.h:
2020-05-14 Sergio Villar Senin <svillar@igalia.com>
Unreviewed build fix.
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::createContextWebGL): downcast m_context to
WebGLRenderingContextBase before calling isXRCompatible(). It's created
as a WebGLRenderingContextBase but stored in a CanvasRenderingContext.
2020-05-14 Andres Gonzalez <andresg_22@apple.com>
Replacing and inserting text need to be dispatched to the main thread.
https://bugs.webkit.org/show_bug.cgi?id=211863
Reviewed by Chris Fleizach.
Covered by existing tests.
In isolated tree mode WebAccessibilityObjectWrapper accessibilityReplaceRange
and InsertText may be called on the secondary thread. Thus the AXIsolatedObject
implementation of this functionality needs to forward these calls to the
associated AXObject on the main thread.
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::replaceTextInRange):
(WebCore::AXIsolatedObject::insertText):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityReplaceRange:withText:]):
(-[WebAccessibilityObjectWrapper accessibilityInsertText:]):
2020-05-14 Antoine Quint <graouts@apple.com>
Cursor should not update on a 20ms timer
https://bugs.webkit.org/show_bug.cgi?id=211884
<rdar://problem/63220368>
Reviewed by Antti Koivisto.
Update the cursor during page rendering rather than using a 20ms timer.
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::updateCursorIfNeeded):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::scheduleCursorUpdate):
(WebCore::EventHandler::cursorUpdateTimerFired): Deleted.
* page/EventHandler.h:
* page/Page.cpp:
(WebCore::Page::updateRendering):
2020-05-14 Philippe Normand <pnormand@igalia.com>
[GStreamer] webrtc/disable-encryption.html is a crashing flaky
https://bugs.webkit.org/show_bug.cgi?id=211166
Reviewed by Xabier Rodriguez-Calvar.
Make sure the audio and video mediastream source elements are correctly removed and disposed
from their parent bin when resetting the track sources. Before this change there was a
possibility of disposing the elements while they were still in PLAYING state.
* platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(WebCore::_WebKitMediaStreamSrc::SourceData::reset):
(WebCore::webkitMediaStreamSrcDispose):
(WebCore::webkitMediaStreamSrcRemoveTrackByType):
2020-05-14 Adrian Perez de Castro <aperez@igalia.com>
Non-unified build fixed, mid May 2020 edition
https://bugs.webkit.org/show_bug.cgi?id=211859
Unreviewed build.
No new tests needed.
* Modules/indexeddb/server/UniqueIDBDatabase.cpp: Add missing IDBBindingUtilities.h and
IDBSerializationContext.h includes.
* accessibility/AccessibilityRenderObject.cpp: Add missing EventHandler.h include.
* css/parser/CSSParserToken.cpp: Add missing RuntimeEnabledFeatures.h include.
* editing/gtk/WebContentReaderGtk.cpp: Add missing Blob.h include.
* html/canvas/OESTextureHalfFloat.cpp: Add missing ExtensionsGL.h include.
* page/ShareDataReader.h: Add missing ExceptionOr.h include.
* rendering/ContentfulPaintChecker.cpp: Add missing RenderView.h include.
* rendering/style/StyleRareInheritedData.h: Add missing RenderStyleConstants.h and
wtf/OptionSet.h includes.
* rendering/style/StyleRareNonInheritedData.h: Add missing TouchAction.h and wtf/OptionSet.h
includes.
* style/StyleAdjuster.h: Add missing RenderStyleConstants.h include and forward declaration
for WebCore::EventTarget.
2020-05-14 Alicia Boya García <aboya@igalia.com>
[GStreamer] Playbin3 track switch rework
https://bugs.webkit.org/show_bug.cgi?id=211623
Reviewed by Philippe Normand.
This patch reworks how track selection and reporting of selected
tracks is done in the player.
The following found limitations and assumptions in current GStreamer
have informed this patch:
a) Although the API for playbin3 is designed to be able to accept any
number of tracks of any kind, this is not supported in practice.
b) The first track of each type is always selected. Even in playbin3
mode, looking for GST_STREAM_FLAG_SELECT is not a reliable method, as
in most cases the demuxer does not set it at all. [qtdemux never sets
it at all, and matroskademux only sets it in certain cases.]
c) Sending GST_EVENT_SELECT_STREAMS is only safe at certain moments.
It's not safe before pre-roll, after EOS or during the handling of
another SELECT_STREAMS.
d) Selecting text tracks with playbin APIs is not relevant. All text
tracks are already being picked by WebKitTextCombiner, unaffected by
playbin track selection.
e) Tracks requested in a GST_EVENT_SELECT_STREAMS are eventually
selected. On the other hand, looking at
GST_MESSAGE_STREAMS_SELECTED's content is not reliable, as this has
been seen to miss tracks depending on thread luck.
This patch takes the points above into account to rework how track
selection is handled in MediaPlayerPrivateGStreamer and fix the
following issues:
1) In playbin3 mode, no track was marked as selected initially,
because of reliance on GST_STREAM_FLAG_SELECT.
2) In playbin2 mode, sometimes tracks would not be initially marked as
selected. This occurred because of reliance on the "selected" property
in inputselector sinkpads, whose initialization is racy -- it can
occur after the track has been added and picked up by WebKit.
3) In playbin3 mode, the limitations explained before has been honored
to make track selection stable, delaying SELECT_STREAMS events until
they are safe to send.
This patch doesn't introduce significative behavior changes, rather
aiming for improving the stabilitity of the player. Existing tests
should provide enough coverage.
* platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:
(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):
(WebCore::AudioTrackPrivateGStreamer::setEnabled):
* platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
(WebCore::MediaPlayerPrivateGStreamer::updateEnabledVideoTrack):
(WebCore::MediaPlayerPrivateGStreamer::updateEnabledAudioTrack):
(WebCore::MediaPlayerPrivateGStreamer::playbin3SendSelectStreamsIfAppropriate):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):
(WebCore::MediaPlayerPrivateGStreamer::handleSyncMessage):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
(WebCore::MediaPlayerPrivateGStreamer::didEnd):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
* platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:
(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):
(WebCore::VideoTrackPrivateGStreamer::setSelected):
* platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
2020-05-14 Philippe Normand <pnormand@igalia.com>
[GStreamer] Can't replay blob videos in web.whatsapp.com