From 979f08e4df057d3d6a5e9f9bc3da28625ac3e320 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Thu, 12 Mar 2015 15:50:15 -0400
Subject: [PATCH] Fix javascripts errors in IE8 - lack of Event.which, focusing a hidden element (#1490318)
---
program/js/list.js | 4 ++--
CHANGELOG | 1 +
program/js/app.js | 11 +++++++----
3 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 868ed01..7b6a112 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -36,6 +36,7 @@
- Fix backtick character handling in sql queries (#1490312)
- Fix redirct URL for attachments loaded in an iframe when behind proxy (#1490191)
- Fix menu container references to point to the actual <ul> element (#1490313)
+- Fix javascripts errors in IE8 - lack of Event.which, focusing a hidden element (#1490318)
RELEASE 1.1.0
-------------
diff --git a/program/js/app.js b/program/js/app.js
index 5f3ca5f..d6c5cd8 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3349,7 +3349,7 @@
if (!this.gui_objects.messageform)
return false;
- var i, pos, input_from = $("[name='_from']"),
+ var i, elem, pos, input_from = $("[name='_from']"),
input_to = $("[name='_to']"),
input_subject = $("input[name='_subject']"),
input_message = $("[name='_message']").get(0),
@@ -3403,11 +3403,14 @@
this.compose_restore_dialog(0, html_mode)
if (input_to.val() == '')
- input_to.focus();
+ elem = input_to;
else if (input_subject.val() == '')
- input_subject.focus();
+ elem = input_subject;
else if (input_message)
- input_message.focus();
+ elem = input_message;
+
+ // focus first empty element (need to be visible on IE8)
+ $(elem).filter(':visible').focus();
this.env.compose_focus_elem = document.activeElement;
diff --git a/program/js/list.js b/program/js/list.js
index 9a7f284..9c41a12 100644
--- a/program/js/list.js
+++ b/program/js/list.js
@@ -151,8 +151,8 @@
this.rows[uid] = {uid:uid, id:row.id, obj:row};
// set eventhandlers to table row (only left-button-clicks in mouseup)
- row.onmousedown = function(e){ return self.drag_row(e, this.uid); };
- row.onmouseup = function(e){ if (e.which == 1) return self.click_row(e, this.uid); };
+ $(row).mousedown(function(e) { return self.drag_row(e, this.uid); })
+ .mouseup(function(e) { if (e.which == 1) return self.click_row(e, this.uid); });
if (bw.touch && row.addEventListener) {
row.addEventListener('touchstart', function(e) {
--
Gitblit v1.9.1