GitHub PushEvent at 2014-08-02 14:19:42
Repository: VimFx
Actor: lydell
Payload: {"shas":[["89e1bc43d5387da6c3bac489df50d4fd848595be","bfdf7edfade8c5f44037ffe1d6f03c3967da1c81@gmail.com","Improve marker generation performance\n\n`getFirstNonCoveredPoint` used to recursively search the rect of an\nelement until it found a non-covered point. This works well most of the\ntime, but on some sites (such as prisjakt.se) it took way too much time.\n\nMoreover, this technique required some CSS to be reset in a few special\ncases, which is very costly performance-wise. It is also brittle and\nmakes the code unnecessarily complex.\n\nLastly, there was a bug in the algorithm that caused uncaught exceptions\nsometimes (such as on youtube.com).\n\nNow we use a much simpler approach instead.\n\n`getFirstNonCoveredPoint` tries 6 different points of the element:\n\n    +-------------------------------+\n    |1 left-top          right-top 4|\n    |                               |\n    |2 left-middle    right-middle 5|\n    |                               |\n    |3 left-bottom    right-bottom 6|\n    +-------------------------------+\n\nIf all of those are covered (or are reported as covered because of one\nof the CSS special cases we used to reset) then the whole element is\nsimply considered to be covered. This seems to work really well.\n\nThe above means that the markers can now be placed at any of the points\nin the above figure.\n\nThe result is much faster, simpler and more robust.","Simon Lydell",true]],"size":1,"ref":"refs/heads/better-hintmarkers","head":"89e1bc43d5387da6c3bac489df50d4fd848595be"}