bd7f8cfb3a560d16732e7f8db977d34109dbae14: Bug 1286464 part.10 ContentEventHandler::OnQueryTextRectArray() should append same rects for following characters of a line breaker in nsTextFrame r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 05 Aug 2016 14:06:30 +0900 - rev 398644
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.10 ContentEventHandler::OnQueryTextRectArray() should append same rects for following characters of a line breaker in nsTextFrame r=smaug
If line breakers in a text node works as is, e.g., |white-space: pre;| is specified, we need to handle line breakers in text frames too.
This patch handles "\n" in text nodes same as line breakers caused by some elements.
MozReview-Commit-ID: JmXesusFxzR
9d9efaadeaa47c7572ac376e2db8495abe131054: Bug 1286464 part.9 ContentEventHandler::OnQueryTextRectArray() shouldn't append same rect for following character of a lien breaker when the query range starts from middle of the line breaker r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 05 Aug 2016 13:53:08 +0900 - rev 398643
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.9 ContentEventHandler::OnQueryTextRectArray() shouldn't append same rect for following character of a lien breaker when the query range starts from middle of the line breaker r=smaug
If the query range starts middle of a line breaker, i.e., "\r[\n", ContentEventHandler::OnQueryTextRectArray() does not need to (in other words, should not) append same rect anymore.
This patch checks if the range starts middle of a line breaker and in such case, skip to append same rect.
MozReview-Commit-ID: H5gdtAakGcP
714242a88bc860850d16dcbb7224ace9fcd4b467: Bug 1286464 part.8 ContentEventHandler::OnQueryTextRectArray() should handle line break before a node r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 05 Aug 2016 13:36:22 +0900 - rev 398642
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.8 ContentEventHandler::OnQueryTextRectArray() should handle line break before a node r=smaug
Some elements causes a line break before itself. In such case, OnQueryTextRectArray() should append one or two rects for such line breakers.
This patch also implements GetLineBreakerRectBefore(). It computes line breaker rect for the given frame. Even if it's a <br> frame, we cannot use its rect because <br> frame height is computed with line height but we need text's height (i.e., font height) and both height and width are 0 if it's in quirks mode and in non-empty line. Therefore, this patch computes it with frame's baseline, font's max-ascent and max-descent.
Although, this patch computes a line breaker rect caused by a open tag of a block level element with block frame's rect. However, it shouldn't be used actually as far as possible. Following patches will kill the path to the hack.
MozReview-Commit-ID: 9cym04j9NH9
434210311aaaad4354a2c91f0372ec1f4561010b: Bug 1286464 part.7 ContentEventHandler::OnQueryTextRect() should redirect the query event to OnQueryCaretRect() if its query range is empty r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Mon, 25 Jul 2016 23:19:53 +0900 - rev 398641
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.7 ContentEventHandler::OnQueryTextRect() should redirect the query event to OnQueryCaretRect() if its query range is empty r=smaug
When eQueryTextRect's query range length is 0 (this may be caused by native IME's bug), it should return caret rect. Therefore, it should redirect such query events to OnQueryCaretRect(). Such IME must want caret rect in such case.
MozReview-Commit-ID: JaUwhw1Cn5G
eff622fa15ca6deba150a582fb9a1a2f3f883a0c: Bug 1286464 part.6 ContentEventHandler::OnQueryCaretRect() should use eQueryTextRect event when it needs to guess the caret rect r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 29 Jul 2016 00:37:09 +0900 - rev 398640
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.6 ContentEventHandler::OnQueryCaretRect() should use eQueryTextRect event when it needs to guess the caret rect r=smaug
ContentEventHandler::OnQueryTextRect() is now too complicated. So, we shouldn't duplicate similar code in OnQueryCaretRect(). When it needs to guess a caret rect from a character rect, we shouldn't compute character rect by itself.
MozReview-Commit-ID: 5G4MzQJzmoV
40b608093ac5b8deb78cc86c8a5e06bb3acde0cb: Bug 1286464 part.5 Create ContentEventHandler::EnsureNonEmptyRect() for query various rect event handlers r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 05 Aug 2016 13:01:17 +0900 - rev 398639
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.5 Create ContentEventHandler::EnsureNonEmptyRect() for query various rect event handlers r=smaug
This can kill the duplicated code in a lot of places in ContentEventHandler.
MozReview-Commit-ID: BRpBkbXyeBs
42d2a7f90d5d750f8532b4feca67e317268db0bc: Bug 1286464 part.4 ContentEventHandler::SetRangeFromFlatTextOffset() should set end of the range to after a line break when the range is end between a set of native line breakers r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 28 Jul 2016 17:23:47 +0900 - rev 398638
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.4 ContentEventHandler::SetRangeFromFlatTextOffset() should set end of the range to after a line break when the range is end between a set of native line breakers r=smaug
Currently, ContentEventHandler::SetRangeFromFlatTextOffset() sets end point to before a line breaker when the end of queried range is between a set of native line breakers (i.e., "\r]\n" on Windows). This causes unexpected empty range (e.g., "[]\n") when it queries a text rect at [\r]\n.
Therefore, it should select an XP line breaker in such case (i.e., the range should be "[\n]" when it queries "[\r]\n" or "\r[\n]").
Note that we don't need to do anything at setting selection start because it's always aligned to before the line breaker.
MozReview-Commit-ID: 6ht8QNAhibY
f8d1907bc2d692809ec57088c87be1f3d92662cb: Bug 1286464 part.3 Make static methods, AdjustTextRectNode() and GetFirstFrameInRange(), members of ContentEventHandler r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 05 Aug 2016 12:43:40 +0900 - rev 398637
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.3 Make static methods, AdjustTextRectNode() and GetFirstFrameInRange(), members of ContentEventHandler r=smaug
This patch makes the static methods members of ContentEventHandler because ContentEventHandler::NodePosition is useful for them.
* nsINode* AdjustTextRectNode(nsINode*, int32_t&) -> NodePosition GetNodeHavingFlatText(nsINode* int32_t)
* nsIFrame* GetFirstFrameInRange(nsRange*, int32_t&) -> FrameAndNodeOffset GetFirstFrameHavingFlatTextInRange(nsRange*)
So, this patch avoids unclear in/out arguments of them.
MozReview-Commit-ID: 7yWeIkRdGj
5abb618df408be22e1fec8682ef3c4d727b9b4ce: Bug 1286464 part.2 GetFirstFrameInRange() should return node offset since it may return different node's frame r=m_kato
draft
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 14 Jul 2016 22:57:00 +0900 - rev 398636
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.2 GetFirstFrameInRange() should return node offset since it may return different node's frame r=m_kato
GetFirstFrameInRange() uses AdjustTextRectNode() which may return different node before retrieving the result frame. Therefore, the caller may need offset in the new node.
MozReview-Commit-ID: 2AQU5WfahT9
e7470fa53cb6b4da2d854eb9702f19783d92bd11: Bug 1286464 part.1 Cleaning up ContentEventHandler::OnQueryTextRectArray() r=m_kato
draft
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 14 Jul 2016 22:46:37 +0900 - rev 398635
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.1 Cleaning up ContentEventHandler::OnQueryTextRectArray() r=m_kato
MozReview-Commit-ID: BDLkQLrzoUI
61623acdcb904d0d5f2afa945d42312704f4a3b4: Bug 1286464 part.0 Add eQueryTextRect tests for line breakers r=smaug
draft
Masayuki Nakano <masayuki@d-toybox.com> - Sat, 30 Jul 2016 22:00:30 +0900 - rev 398634
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1286464 part.0 Add eQueryTextRect tests for line breakers r=smaug
MozReview-Commit-ID: 2SxNlyjc4KM
d1be93e7f8f34c5d26076101b895ae6778dc4e5c: Bug 1257446 part.3 nsTextFrame::GetCharacterRectsInRange() shouldn't call gfxSkipCharsIterator::AdvanceOriginal() before checking if the current offset has already been reached to the end for avoiding assertions r=jfkthame
draft
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 14 Jul 2016 22:02:15 +0900 - rev 398633
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1257446 part.3 nsTextFrame::GetCharacterRectsInRange() shouldn't call gfxSkipCharsIterator::AdvanceOriginal() before checking if the current offset has already been reached to the end for avoiding assertions r=jfkthame
New eQueryTextRectArray causes a lot of assertions in various automated tests. The cause is that nsTextFrame::GetCharacterRectsInRange() calls gfxSkipCharsIterator::AdvanceOriginal(1) at the end of the |for| loop *without* checking if the iterator has already reached to the end.
MozReview-Commit-ID: 3KFxA11uOUc
168455a608a45160e5335cf9e831141051f16d83: Bug 1257446 part.2 ContentEventHandler::OnQueryTextRectArray() shouldn't set empty rect to the result r=m_kato
draft
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 12 Jul 2016 20:28:06 +0900 - rev 398632
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1257446 part.2 ContentEventHandler::OnQueryTextRectArray() shouldn't set empty rect to the result r=m_kato
Returning empty rects for eQueryTextRectArray causes each dispatcher needing to check every rect. It doesn't make sense especially compared with eQueryTextRect.
So, it should ensure that empty rect won't be returned to dispatchers.
MozReview-Commit-ID: CpMqqihzSDf
724ff9781744fe9140668ff8cac77bc7bbe5d318: Bug 1257446 part.1 ContentCache should store previous character of selection r=m_kato
draft
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 22 Jul 2016 20:47:51 +0900 - rev 398631
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1257446 part.1 ContentCache should store previous character of selection r=m_kato
This patch makes ContentCache store previous character's rect of selection anchor and selection focus because if caret is at end of a line, IME may query the last character of the line.
MozReview-Commit-ID: 5X1K8KtrYfl
2ea938ff753b375a749bc740354ab9ced3638e86: Bug 1257446 part.0 ContentCacheInParent::HandleQueryContentEvent() should log the cause of failure when it makes the event's input offset absolute r=m_kato
draft
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 12 Jul 2016 17:44:44 +0900 - rev 398630
Push
25590 by masayuki@d-toybox.com at Tue, 09 Aug 2016 15:40:38 +0000
Bug 1257446 part.0 ContentCacheInParent::HandleQueryContentEvent() should log the cause of failure when it makes the event's input offset absolute r=m_kato
MozReview-Commit-ID: JVGHPQ5gC3G
a8293ab7a5d89b4049d043c648ef7b72e24dfeca: Bug 1290965 - Prevent command from firing when click has prevented default on the XUL element.
draft
Jonathan Kingston <jkt@mozilla.com> - Tue, 09 Aug 2016 14:51:47 +0100 - rev 398629
Push
25589 by jkingston@mozilla.com at Tue, 09 Aug 2016 15:37:00 +0000
Bug 1290965 - Prevent command from firing when click has prevented default on the XUL element.
MozReview-Commit-ID: 5lMw3hFCe3e
3dcf96664bdfd34e9f8e5e7174503de84bfe2d93: Fix broken test test_safe_browsing_initial_download.py after the recent safebrowsing list changes (bug 1292728). r?whimboo
draft
Panos Astithas <past@mozilla.com> - Tue, 09 Aug 2016 15:51:48 +0300 - rev 398628
Push
25588 by bmo:past@mozilla.com at Tue, 09 Aug 2016 15:31:49 +0000
Fix broken test test_safe_browsing_initial_download.py after the recent safebrowsing list changes (
bug 1292728). r?whimboo
MozReview-Commit-ID: 36sbv94hwCD
bc77f39da3ba07363ffad22f0dc9e3c67ec85a2f: Bug 1293347: Zero out a pointer. r?mcmanus
draft
Byron Campen [:bwc] <docfaraday@gmail.com> - Tue, 09 Aug 2016 10:18:08 -0500 - rev 398627
Push
25587 by bcampen@mozilla.com at Tue, 09 Aug 2016 15:18:32 +0000
Bug 1293347: Zero out a pointer. r?mcmanus
MozReview-Commit-ID: BGRFposcrBG
4d9747a41aa7e23c67164b4be88cb5ec887e3152: Bug 1293614 - Ensure that Wait().until() aligns as best as possible to the original interval sequence.
draft
Henrik Skupin <mail@hskupin.info> - Tue, 09 Aug 2016 16:52:39 +0200 - rev 398626
Push
25586 by bmo:hskupin@gmail.com at Tue, 09 Aug 2016 15:10:44 +0000
Bug 1293614 - Ensure that Wait().until() aligns as best as possible to the original interval sequence.
MozReview-Commit-ID: 2JEQtLEsdux
0aea3f14ca10f0bd53cde7ce494754049c118f1f: Bug 1282070 - repaint the modal highlight mask when the page resizes or changes size due to added/ removed content. r?jaws
draft
Mike de Boer <mdeboer@mozilla.com> - Tue, 09 Aug 2016 17:02:50 +0200 - rev 398625
Push
25585 by mdeboer@mozilla.com at Tue, 09 Aug 2016 15:03:18 +0000
Bug 1282070 - repaint the modal highlight mask when the page resizes or changes size due to added/ removed content. r?jaws
MozReview-Commit-ID: LSWkNNiTDsQ