Fossil

Check-in [fc639a0a02]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Enable closing tooltips by pressing ESC.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | copybtn.js-tweaks
Files: files | file ages | folders
SHA3-256: fc639a0a0257d6c1897059256ea54f48536ae068a3dff4e7924195453646879f
User & Date: florian 2019-06-05 08:06:00.000
Context
2019-06-05
08:26
Make sure there's any graph elements, before accessing their properties (applies to timelines for tickets, wiki pages, or forum posts). ... (Closed-Leaf check-in: 6678870734 user: florian tags: copybtn.js-tweaks)
08:06
Enable closing tooltips by pressing ESC. ... (check-in: fc639a0a02 user: florian tags: copybtn.js-tweaks)
07:58
Also add a copy button for the artifact hash on the /artifact page in hex-dump mode. ... (check-in: 1d23109d8c user: florian tags: copybtn.js-tweaks)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/graph.js.
106
107
108
109
110
111
112







113

114
115
116
117
118
119
120
  ixHover: -1,        /* The id of the element with the mouse. */
  ixActive: -1,       /* The id of the element with the tooltip. */
  nodeHover: null,    /* Graph node under mouse when ixHover==-2 */
  posX: 0, posY: 0    /* The last mouse position. */
};

/* Functions used to control the tooltip popup and its timer */







function hideGraphTooltip(){

  stopCloseTimer();
  tooltipObj.style.display = "none";
  tooltipInfo.ixActive = -1;
}
document.body.onunload = hideGraphTooltip
function stopDwellTimer(){
  if (tooltipInfo.idTimer != 0) {







>
>
>
>
>
>
>

>







106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
  ixHover: -1,        /* The id of the element with the mouse. */
  ixActive: -1,       /* The id of the element with the tooltip. */
  nodeHover: null,    /* Graph node under mouse when ixHover==-2 */
  posX: 0, posY: 0    /* The last mouse position. */
};

/* Functions used to control the tooltip popup and its timer */
function onKeyDown(event){
  var key = event.which || event.keyCode;
  if( key==27 ){
    event.stopPropagation();
    hideGraphTooltip();
  }
}
function hideGraphTooltip(){
  document.removeEventListener('keydown',onKeyDown,/* useCapture == */true);
  stopCloseTimer();
  tooltipObj.style.display = "none";
  tooltipInfo.ixActive = -1;
}
document.body.onunload = hideGraphTooltip
function stopDwellTimer(){
  if (tooltipInfo.idTimer != 0) {
637
638
639
640
641
642
643

644
645
646
647
648
649
650
                   - absoluteX(tooltipObj.offsetParent)
      tooltipObj.style.left = x+"px"
      var y = tooltipInfo.posY + window.pageYOffset
                   - tooltipObj.clientHeight - 4
                   - absoluteY(tooltipObj.offsetParent)
      tooltipObj.style.top = y+"px"
      tooltipObj.style.visibility = "visible"

    }else{
      hideGraphTooltip()
    }
  }
  function dblclickOnGraph(e){
    var ix = findTxIndex(e);
    hideGraphTooltip()







>







645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
                   - absoluteX(tooltipObj.offsetParent)
      tooltipObj.style.left = x+"px"
      var y = tooltipInfo.posY + window.pageYOffset
                   - tooltipObj.clientHeight - 4
                   - absoluteY(tooltipObj.offsetParent)
      tooltipObj.style.top = y+"px"
      tooltipObj.style.visibility = "visible"
      document.addEventListener('keydown',onKeyDown,/* useCapture == */true);
    }else{
      hideGraphTooltip()
    }
  }
  function dblclickOnGraph(e){
    var ix = findTxIndex(e);
    hideGraphTooltip()