-
-
Save fortserious/aee38888a9c672c27682fa43940588fa to your computer and use it in GitHub Desktop.
// ==UserScript== | |
// @name outlook quick actions hotfix | |
// @namespace www.rossdoran.com | |
// @version 1.8 | |
// @description m$.gfy | |
// @match https://outlook.office.com/mail/* | |
// @match https://outlook.live.com/* | |
// @require https://gist.githubusercontent.com/mjblay/18d34d861e981b7785e407c3b443b99b/raw/debc0e6d4d537ac228d1d71f44b1162979a5278c/waitForKeyElements.js | |
// @run-at document-start | |
// ==/UserScript== | |
// when updating this script - search for ".hDNlA.lHRXq.iZbPU.JCRRb.G1NES" | |
waitForKeyElements (".WP8_u .UWVIR", moveQuickActions); | |
waitForKeyElements(".mGATq", moveDeleteAction); // comment out this line to keep the delete quick action on the right | |
function navigateToInbox(elem) | |
{ | |
elem.onclick = ()=> { document.querySelector("button[aria-label='Close']").click(); }; | |
} | |
function detach(node) { | |
return node.parentElement.removeChild(node); | |
} | |
function moveDeleteAction(elem) | |
{ | |
let parent = elem.closest(`.hDNlA.lHRXq.iZbPU.JCRRb.G1NES, | |
.hDNlA.lHRXq.IjQyD.JCRRb.G1NES, | |
.hDNlA.lHRXq.epBmH.IMyk_, | |
.zKDWD.YbB6r.IKvQi.IjQyD.JCRRb.cSOXK.G1NES, | |
.zKDWD.YbB6r.IKvQi.IjQyD.JCRRb.G1NES, | |
.zKDWD.YbB6r.IKvQi.iZbPU.JCRRb.G1NES, | |
.zKDWD.YbB6r.IKvQi.iZbPU.wZij3.G1NES, | |
.zKDWD.YbB6r.IKvQi.IjQyD.EhiOs.wZij3.G1NES, | |
.zKDWD.YbB6r.IKvQi.epBmH.EhiOs, | |
.zKDWD.IKvQi.IjQyD.JCRRb.G1NES, | |
.zKDWD.IKvQi.iZbPU.JCRRb._KLsp.G1NES, | |
.zKDWD.IKvQi.iZbPU.JCRRb.G1NES, | |
.zKDWD.IKvQi.gPZmZ.JCRRb.G1NES, | |
.zKDWD.IKvQi.epBmH, | |
.lHRXq.hDNlA.IjQyD.JCRRb.DLvHz.G1NES, | |
.lHRXq.hDNlA.IjQyD.JCRRb.G1NES | |
`); // different for pinned, flagged, returning to inbox after deleting, etc. | |
if (parent) | |
{ | |
console.log("TRASHFIND", parent); | |
var newParent = parent.querySelector(` | |
.XG5Jd.y1E5h.zItCb, | |
.XG5Jd.hQj7T, | |
.OD8Ue.hQj7T, | |
.xc0ZS.hQj7T | |
`).firstChild; | |
if (newParent) | |
{ | |
newParent.append(detach(elem)); | |
} | |
} | |
} | |
function moveQuickActions(elem) | |
{ | |
let parent = elem.closest( | |
`.XG5Jd.hQj7T, | |
.xc0ZS.hQj7T, | |
.OD8Ue.hQj7T`); // parent element of left items | |
if (parent) | |
{ | |
var newParent = parent.firstChild; // append to first child of left item parent | |
if (newParent) | |
{ | |
newParent.append(detach(elem)); | |
} | |
} | |
} |
Thanks again for new version! Works fine 05 april 2024
@Peppins32 I'm waiting for my grill to preheat and I just zoomed in to your pic and noticed I accidentally uncapitalized the T in last character of the 2nd class. I have 1.6 up for you, and I'm feeling really good about it.
Oh god, finally this time worked!!!
There is just a little issue. If you have some pinned message, the delete button are still on the right with "<div class="QpoLy">
".
Glad to hear it! Yeah that makes sense. If you do the same inspect elements trick with the pinned message and paste the classname here I can cover that case as well.
Read above, unfortunately the div class appear only when i'm with mouse on it (i mean the > that allow you to see more lines).
Read above, unfortunately the div class appear only when i'm with mouse on it (i mean the > that allow you to see more lines).
Yes, that's true. It's a little tricky, but if you position the devtools window carefully, you can arrange it so that your mouse cursor will be on top of it when you click on Inspect, which will keep the hovered element in focus.
Updated 1.7 with the new class.
Sorry, was abroad on holiday. Updated to latest version, seems perfect once again. @Peppins32 - I had a space between pin and delete when first loading the page, which went away after waiting a little while. I think that might be unavoidable.
The delete icon shifted back for me, so I've updated 1.8 to include the new class. It's unfortunate that there's no real way to future proof this - any change they make is gonna re-obfuscate the class names, which means another update is required. I could query the selectors by title, like "button[title='Mark as unread']", but then that would break for anyone whose language isn't English. Oh well. Let me know if it doesn't work.
As a bit of cleanup, I also removed the Inbox redirect link, as they seem to have fixed that, and removed the ribbon hider too. Let me know if you need either of those back for whatever reason.
Thanks a lot, it work! ;-)
@Peppins32 I'm waiting for my grill to preheat and I just zoomed in to your pic and noticed I accidentally uncapitalized the T in last character of the 2nd class. I have 1.6 up for you, and I'm feeling really good about it.