Fossil SCM

Worked around a browser-dependent scrolling quirk and fixed a logic bug in the recent PopupWidget.installHideHandlers() API change which caused the timestamp popups not to close.

stephan 2020-12-26 16:39 trunk
Commit 322627ed7e086dad94e11cb8841327babf4b91f05dc77738a15ff559b8ef6122
+1 -1
--- src/chat.js
+++ src/chat.js
@@ -138,11 +138,11 @@
138138
*/
139139
D.addClass(self.e.inputWrapper,'unsticky');
140140
}
141141
if(mip.nextSibling) mip.parentNode.insertBefore(e, mip.nextSibling);
142142
else mip.parentNode.appendChild(e);
143
- if(false && this.isUiFlipped()){
143
+ if(this.isUiFlipped()){
144144
//e.scrollIntoView();
145145
setTimeout(function(){
146146
//self.e.inputWrapper.scrollIntoView();
147147
//self.e.fileSelectWrapper.scrollIntoView();
148148
//e.scrollIntoView();
149149
--- src/chat.js
+++ src/chat.js
@@ -138,11 +138,11 @@
138 */
139 D.addClass(self.e.inputWrapper,'unsticky');
140 }
141 if(mip.nextSibling) mip.parentNode.insertBefore(e, mip.nextSibling);
142 else mip.parentNode.appendChild(e);
143 if(false && this.isUiFlipped()){
144 //e.scrollIntoView();
145 setTimeout(function(){
146 //self.e.inputWrapper.scrollIntoView();
147 //self.e.fileSelectWrapper.scrollIntoView();
148 //e.scrollIntoView();
149
--- src/chat.js
+++ src/chat.js
@@ -138,11 +138,11 @@
138 */
139 D.addClass(self.e.inputWrapper,'unsticky');
140 }
141 if(mip.nextSibling) mip.parentNode.insertBefore(e, mip.nextSibling);
142 else mip.parentNode.appendChild(e);
143 if(this.isUiFlipped()){
144 //e.scrollIntoView();
145 setTimeout(function(){
146 //self.e.inputWrapper.scrollIntoView();
147 //self.e.fileSelectWrapper.scrollIntoView();
148 //e.scrollIntoView();
149
--- src/fossil.popupwidget.js
+++ src/fossil.popupwidget.js
@@ -229,12 +229,12 @@
229229
and passing fewer arguments defaults the unpassed parameters to
230230
true.
231231
*/
232232
installHideHandlers: function f(onClickSelf, onClickOther, onEsc){
233233
if(!arguments.length) onClick = onClickOther = onEsc = true;
234
- else if(2===arguments.length) onClickOther = onEsc = true;
235
- else if(1===arguments.length) onEsc = true;
234
+ else if(1===arguments.length) onClickOther = onEsc = true;
235
+ else if(2===arguments.length) onEsc = true;
236236
if(onClickSelf) this.e.addEventListener('click', ()=>this.hide(), false);
237237
if(onClickOther) document.body.addEventListener('click', ()=>this.hide(), true);
238238
if(onEsc){
239239
const self = this;
240240
document.body.addEventListener('keydown', function(ev){
241241
--- src/fossil.popupwidget.js
+++ src/fossil.popupwidget.js
@@ -229,12 +229,12 @@
229 and passing fewer arguments defaults the unpassed parameters to
230 true.
231 */
232 installHideHandlers: function f(onClickSelf, onClickOther, onEsc){
233 if(!arguments.length) onClick = onClickOther = onEsc = true;
234 else if(2===arguments.length) onClickOther = onEsc = true;
235 else if(1===arguments.length) onEsc = true;
236 if(onClickSelf) this.e.addEventListener('click', ()=>this.hide(), false);
237 if(onClickOther) document.body.addEventListener('click', ()=>this.hide(), true);
238 if(onEsc){
239 const self = this;
240 document.body.addEventListener('keydown', function(ev){
241
--- src/fossil.popupwidget.js
+++ src/fossil.popupwidget.js
@@ -229,12 +229,12 @@
229 and passing fewer arguments defaults the unpassed parameters to
230 true.
231 */
232 installHideHandlers: function f(onClickSelf, onClickOther, onEsc){
233 if(!arguments.length) onClick = onClickOther = onEsc = true;
234 else if(1===arguments.length) onClickOther = onEsc = true;
235 else if(2===arguments.length) onEsc = true;
236 if(onClickSelf) this.e.addEventListener('click', ()=>this.hide(), false);
237 if(onClickOther) document.body.addEventListener('click', ()=>this.hide(), true);
238 if(onEsc){
239 const self = this;
240 document.body.addEventListener('keydown', function(ev){
241

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button