(event)
| 104 | document.addEventListener("keydown", keyDownHandler); |
| 105 | |
| 106 | function keyDownHandler(event) { |
| 107 | if (window.location.href === "https://www.instagram.com/") return; |
| 108 | |
| 109 | const mockEventTemplate = { |
| 110 | stopPropagation: function () {}, |
| 111 | preventDefault: function () {}, |
| 112 | }; |
| 113 | |
| 114 | if (event.altKey && (event.code === "KeyK" || event.key == "k")) { |
| 115 | let buttons = document.getElementsByClassName("download-btn"); |
| 116 | if (buttons.length > 0) { |
| 117 | let mockEvent = { ...mockEventTemplate }; |
| 118 | mockEvent.currentTarget = buttons[buttons.length - 1]; |
| 119 | if (prefetchAndAttachLink || hoverToFetchAndAttachLink) |
| 120 | onMouseInHandler(mockEvent); |
| 121 | onClickHandler(mockEvent); |
| 122 | } |
| 123 | } |
| 124 | if (event.altKey && (event.code === "KeyI" || event.key == "i")) { |
| 125 | let buttons = document.getElementsByClassName("newtab-btn"); |
| 126 | if (buttons.length > 0) { |
| 127 | let mockEvent = { ...mockEventTemplate }; |
| 128 | mockEvent.currentTarget = buttons[buttons.length - 1]; |
| 129 | if (prefetchAndAttachLink || hoverToFetchAndAttachLink) |
| 130 | onMouseInHandler(mockEvent); |
| 131 | onClickHandler(mockEvent); |
| 132 | } |
| 133 | } |
| 134 | |
| 135 | if (event.altKey && (event.code === "KeyL" || event.key == "l")) { |
| 136 | // right arrow |
| 137 | let buttons = document.getElementsByClassName("_9zm2"); |
| 138 | if (buttons.length > 0) { |
| 139 | buttons[0].click(); |
| 140 | } |
| 141 | } |
| 142 | |
| 143 | if (event.altKey && (event.code === "KeyJ" || event.key == "j")) { |
| 144 | // left arrow |
| 145 | let buttons = document.getElementsByClassName("_9zm0"); |
| 146 | if (buttons.length > 0) { |
| 147 | buttons[0].click(); |
| 148 | } |
| 149 | } |
| 150 | } |
| 151 | |
| 152 | function isPostPage() { |
| 153 | return Boolean(window.location.href.match(postUrlPattern)); |
nothing calls this directly
no test coverage detected