Diff
Modified: trunk/Source/WebCore/ChangeLog (222700 => 222701)
--- trunk/Source/WebCore/ChangeLog 2017-10-02 07:26:04 UTC (rev 222700)
+++ trunk/Source/WebCore/ChangeLog 2017-10-02 08:25:53 UTC (rev 222701)
@@ -1,5 +1,18 @@
2017-10-02 Ryosuke Niwa <[email protected]>
+ Another attempt to fix Windows build after r222697.
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::updateAppearance):
+ * platform/DragImage.cpp:
+ (WebCore::createDragImageForRange):
+ * rendering/SelectionRangeData.cpp:
+ (WebCore::SelectionRangeData::clear):
+ * rendering/SelectionRangeData.h:
+ (WebCore::SelectionRangeData::Context::Context):
+
+2017-10-02 Ryosuke Niwa <[email protected]>
+
Windows build fix attempt after r222697.
* platform/DragImage.cpp:
Modified: trunk/Source/WebCore/editing/FrameSelection.cpp (222700 => 222701)
--- trunk/Source/WebCore/editing/FrameSelection.cpp 2017-10-02 07:26:04 UTC (rev 222700)
+++ trunk/Source/WebCore/editing/FrameSelection.cpp 2017-10-02 08:25:53 UTC (rev 222701)
@@ -2114,7 +2114,7 @@
RenderObject* endRenderer = endPos.deprecatedNode()->renderer();
int endOffset = endPos.deprecatedEditingOffset();
ASSERT(startOffset >= 0 && endOffset >= 0);
- view->selection().set({ startRenderer, endRenderer, startOffset, endOffset });
+ view->selection().set(SelectionRangeData::Context(startRenderer, endRenderer, startOffset, endOffset));
}
}
Modified: trunk/Source/WebCore/platform/DragImage.cpp (222700 => 222701)
--- trunk/Source/WebCore/platform/DragImage.cpp 2017-10-02 07:26:04 UTC (rev 222700)
+++ trunk/Source/WebCore/platform/DragImage.cpp 2017-10-02 08:25:53 UTC (rev 222701)
@@ -185,7 +185,7 @@
int startOffset = start.deprecatedEditingOffset();
int endOffset = end.deprecatedEditingOffset();
ASSERT(startOffset >= 0 && endOffset >= 0);
- view->selection().set(SelectionRangeData::Context { startRenderer, endRenderer, startOffset, endOffset }, SelectionRangeData::RepaintMode::Nothing);
+ view->selection().set(SelectionRangeData::Context(startRenderer, endRenderer, startOffset, endOffset), SelectionRangeData::RepaintMode::Nothing);
// We capture using snapshotFrameRect() because we fake up the selection using
// FrameView but snapshotSelection() uses the selection from the Frame itself.
return createDragImageFromSnapshot(snapshotFrameRect(frame, view->selection().boundsClippedToVisibleContent(), options), nullptr);
Modified: trunk/Source/WebCore/rendering/SelectionRangeData.cpp (222700 => 222701)
--- trunk/Source/WebCore/rendering/SelectionRangeData.cpp 2017-10-02 07:26:04 UTC (rev 222700)
+++ trunk/Source/WebCore/rendering/SelectionRangeData.cpp 2017-10-02 08:25:53 UTC (rev 222701)
@@ -172,7 +172,7 @@
void SelectionRangeData::clear()
{
m_renderView.layer()->repaintBlockSelectionGaps();
- set({nullptr, nullptr, std::nullopt, std::nullopt}, SelectionRangeData::RepaintMode::NewMinusOld);
+ set(SelectionRangeData::Context(), SelectionRangeData::RepaintMode::NewMinusOld);
}
void SelectionRangeData::repaint() const
Modified: trunk/Source/WebCore/rendering/SelectionRangeData.h (222700 => 222701)
--- trunk/Source/WebCore/rendering/SelectionRangeData.h 2017-10-02 07:26:04 UTC (rev 222700)
+++ trunk/Source/WebCore/rendering/SelectionRangeData.h 2017-10-02 08:25:53 UTC (rev 222701)
@@ -45,6 +45,16 @@
SelectionRangeData(RenderView&);
struct Context {
+ Context()
+ { }
+
+ Context(RenderObject* startRenderer, RenderObject* endRenderer, unsigned startOffset, unsigned endOffset)
+ : start(startRenderer)
+ , end(endRenderer)
+ , startPosition(startOffset)
+ , endPosition(endOffset)
+ { }
+
RenderObject* start { nullptr };
RenderObject* end { nullptr };
std::optional<unsigned> startPosition;