{"push_id":593898236,"size":6,"distinct_size":6,"ref":"refs/heads/copypaste-refactor","head":"223e651a9ef55eae321fb9f435f2fbbb6dbe2d08","before":"5bb987a3450f35651f457593b4d82258957c2975","commits":[{"sha":"43a1312c92246fe0482fef37a952407ac741b1e9","author":{"email":"6d923a73cdb9a2bd15412f278007875354e4dd86@mozilla.com","name":"Morris Tseng"},"message":"Introduce NormalNotShown state.\nThis state means carets work like normal but visually invisible. Mainly\nuse for caret would invisible on empty text content but bubble still\nvisible.","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/43a1312c92246fe0482fef37a952407ac741b1e9"},{"sha":"8405922f32cd4f2d01476da96d325ffcd0c848ad","author":{"email":"2a6ec19851ae96f2a0830c3c040b66071081b940@mozilla.com","name":"Ting-Yu Lin"},"message":"Do not hide caret under selection mode when receiving key events","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/8405922f32cd4f2d01476da96d325ffcd0c848ad"},{"sha":"579449da21c47478c571f973225531bb99c1f066","author":{"email":"2a6ec19851ae96f2a0830c3c040b66071081b940@mozilla.com","name":"Ting-Yu Lin"},"message":"Cache caret mode after update carets\n\nSome Gaia hacks change range object in selection, and we will receive\nunnecessary reflow callback events. We cache caret mode after each\nupdate in order to skip these reflow events.","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/579449da21c47478c571f973225531bb99c1f066"},{"sha":"3ba3ff2517fbcb082fec03c6e9fd3569fae2e836","author":{"email":"2a6ec19851ae96f2a0830c3c040b66071081b940@mozilla.com","name":"Ting-Yu Lin"},"message":"Filter scroll events as well as reflow events\n\nAssume caret mode will not change after a reflow event without a prior\nselection changed event. We further assume that scroll events do no\nchange selection.","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/3ba3ff2517fbcb082fec03c6e9fd3569fae2e836"},{"sha":"3409f8380185bbd59baaed80a24a80f8c959cf9b","author":{"email":"2a6ec19851ae96f2a0830c3c040b66071081b940@mozilla.com","name":"Ting-Yu Lin"},"message":"Fix caret under cursor mode disappear after keyboard pops up","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/3409f8380185bbd59baaed80a24a80f8c959cf9b"},{"sha":"223e651a9ef55eae321fb9f435f2fbbb6dbe2d08","author":{"email":"2a6ec19851ae96f2a0830c3c040b66071081b940@mozilla.com","name":"Ting-Yu Lin"},"message":"Flush layout when the frame is dirty\n\nWe need to flush layout when the frame is dirty so that AccessibleCaret\ncan get the imaginary caret rect correctly. Otherwise it will get wrong\nvisibility with respect to IsRectVisibleInScrollFrames.\n\nThis fixed `test_drag_caret_over_non_selectable_field` in\ntest_selectioncarets_multiplerange.py","distinct":true,"url":"https://api.github.com/repos/aethanyc/gecko-dev/commits/223e651a9ef55eae321fb9f435f2fbbb6dbe2d08"}]}