Restore Button Sanity

Restore undo & redo buttons to icons, fix the damn reload button to the correct icon

目前为 2017-11-10 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name Restore Button Sanity
  3. // @namespace https://greasyfork.org/users/30701-justins83-waze
  4. // @version 0.1.03
  5. // @description Restore undo & redo buttons to icons, fix the damn reload button to the correct icon
  6. // @author JustinS83
  7. // @include https://www.waze.com/editor*
  8. // @include https://www.waze.com/*/editor*
  9. // @include https://beta.waze.com*
  10. // @exclude https://www.waze.com/user/editor*
  11. // @grant none
  12. // ==/UserScript==
  13.  
  14. (function() {
  15. 'use strict';
  16.  
  17. function bootstrap(tries) {
  18. tries = tries || 1;
  19.  
  20. if (window.W &&
  21. window.W.map &&
  22. window.W.model &&
  23. window.W.loginManager.user &&
  24. $) {
  25. init();
  26. } else if (tries < 1000) {
  27. setTimeout(function () {bootstrap(tries++);}, 200);
  28. }
  29. }
  30.  
  31. bootstrap();
  32.  
  33. function init()
  34. {
  35. $('.waze-icon-reload').removeClass('reload');
  36. $('.waze-icon-reload span').addClass('fa fa-refresh fa-lg');
  37. $('.waze-icon-reload span')[0].innerHTML = "";
  38.  
  39. $('.waze-icon-undo').removeClass('undo');
  40. $('.waze-icon-undo span').addClass('fa fa-undo fa-lg');
  41. $('.waze-icon-undo span')[0].innerHTML = "";
  42.  
  43. $('.waze-icon-redo').removeClass('redo');
  44. $('.waze-icon-redo span').addClass('fa fa-repeat fa-lg');
  45. $('.waze-icon-redo span')[0].innerHTML = "";
  46.  
  47. let extprovobserver = new MutationObserver(function(mutations) {
  48. mutations.forEach(function(mutation) {
  49. //console.log(mutation);
  50. if ($(mutation.target).hasClass('waze-icon-reload')){
  51. $('.waze-icon-reload').removeClass('reload');
  52. $('.waze-icon-reload span').addClass('fa fa-refresh fa-lg');
  53. $('.waze-icon-reload span')[0].innerHTML = "";
  54. }
  55. else if($(mutation.target).hasClass('waze-icon-undo')){
  56. $('.waze-icon-undo').removeClass('undo');
  57. $('.waze-icon-undo span').addClass('fa fa-undo fa-lg');
  58. $('.waze-icon-undo span')[0].innerHTML = "";
  59. }
  60. else if($(mutation.target).hasClass('waze-icon-redo')){
  61. $('.waze-icon-redo').removeClass('redo');
  62. $('.waze-icon-redo span').addClass('fa fa-repeat fa-lg');
  63. $('.waze-icon-redo span')[0].innerHTML = "";
  64. }
  65. });
  66. });
  67.  
  68. extprovobserver.observe(document.getElementById('edit-buttons'), { childList: true, subtree: true });
  69. }
  70. })();