mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 07:48:38 +09:00
parent
84d3b44b86
commit
6ce9cc2a25
23 changed files with 425 additions and 287 deletions
|
|
@ -609,7 +609,7 @@ nsFind::NextNode(nsIDOMRange* aSearchRange,
|
|||
// beginning/end of the search range.
|
||||
nsCOMPtr<nsIDOMNode> startNode;
|
||||
nsCOMPtr<nsIDOMNode> endNode;
|
||||
int32_t startOffset, endOffset;
|
||||
uint32_t startOffset, endOffset;
|
||||
if (aContinueOk) {
|
||||
#ifdef DEBUG_FIND
|
||||
printf("Match in progress: continuing past endpoint\n");
|
||||
|
|
@ -645,7 +645,8 @@ nsFind::NextNode(nsIDOMRange* aSearchRange,
|
|||
}
|
||||
}
|
||||
|
||||
rv = InitIterator(startNode, startOffset, endNode, endOffset);
|
||||
rv = InitIterator(startNode, static_cast<int32_t>(startOffset),
|
||||
endNode, static_cast<int32_t>(endOffset));
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
if (!aStartPoint) {
|
||||
aStartPoint = aSearchRange;
|
||||
|
|
@ -665,14 +666,18 @@ nsFind::NextNode(nsIDOMRange* aSearchRange,
|
|||
if (mFindBackward) {
|
||||
aStartPoint->GetEndContainer(getter_AddRefs(node));
|
||||
if (mIterNode.get() == node.get()) {
|
||||
aStartPoint->GetEndOffset(&mIterOffset);
|
||||
uint32_t endOffset;
|
||||
aStartPoint->GetEndOffset(&endOffset);
|
||||
mIterOffset = static_cast<int32_t>(endOffset);
|
||||
} else {
|
||||
mIterOffset = -1; // sign to start from end
|
||||
}
|
||||
} else {
|
||||
aStartPoint->GetStartContainer(getter_AddRefs(node));
|
||||
if (mIterNode.get() == node.get()) {
|
||||
aStartPoint->GetStartOffset(&mIterOffset);
|
||||
uint32_t startOffset;
|
||||
aStartPoint->GetStartOffset(&startOffset);
|
||||
mIterOffset = static_cast<int32_t>(startOffset);
|
||||
} else {
|
||||
mIterOffset = 0;
|
||||
}
|
||||
|
|
@ -997,7 +1002,7 @@ nsFind::Find(const nsAString& aPatText, nsIDOMRange* aSearchRange,
|
|||
|
||||
// Get the end point, so we know when to end searches:
|
||||
nsCOMPtr<nsIDOMNode> endNode;
|
||||
int32_t endOffset;
|
||||
uint32_t endOffset;
|
||||
aEndPoint->GetEndContainer(getter_AddRefs(endNode));
|
||||
aEndPoint->GetEndOffset(&endOffset);
|
||||
|
||||
|
|
@ -1132,8 +1137,8 @@ nsFind::Find(const nsAString& aPatText, nsIDOMRange* aSearchRange,
|
|||
// Have we gone past the endpoint yet? If we have, and we're not in the
|
||||
// middle of a match, return.
|
||||
if (mIterNode == endNode &&
|
||||
((mFindBackward && findex < endOffset) ||
|
||||
(!mFindBackward && findex > endOffset))) {
|
||||
((mFindBackward && findex < static_cast<int32_t>(endOffset)) ||
|
||||
(!mFindBackward && findex > static_cast<int32_t>(endOffset)))) {
|
||||
ResetAll();
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue