I'm pretty sure the keyboard shortcuts on the Posting section qualifies as a single layout engine thing.
I'm not the judge or the executioner... I'm just humble former IE beta test team member... Good old times when people could hit Ctrl-Pause/Break and see source code of Windows... lol...
Posted by: Dandello Posted on: Jul 18th, 2014 at 5:44pm
Ideally we should be looking at evaluating support by browser function support - does it need ActiveX and what version is needed for the ajax call, does it support XMLhttp natively, are there ajax functions that aren't supported or need work arounds?
Do we really need to evaluate for keyboard shortcuts and MSIE specific features when more and more users won't see them much less use them? (And are not essential to YaBB's functionality.)
In my personal opinion, we should support all common features and avoid adding explicit support for features only available on one layout engine. When I made the patch for IE, I intentionally implemented Trident check as secondary check, because that excludes automatically IE versions before IE 7 if not explicitly included on MSIE test. For XMLHttpRequest, there was exception that worked on IE6, but not IE5.x and older, because IE6 does indeed support XMLHttpRequest.
Posted by: Dandello Posted on: Jul 18th, 2014 at 5:09pm
Ideally we should be looking at evaluating support by browser function support - does it need ActiveX and what version is needed for the ajax call, does it support XMLhttp natively, are there ajax functions that aren't supported or need work arounds?
Do we really need to evaluate for keyboard shortcuts and MSIE specific features when more and more users won't see them much less use them? (And are not essential to YaBB's functionality.)
Posted by: Monni Posted on: Jul 18th, 2014 at 4:51pm
Browser detection by browser string is considered by many experts to be bad form and a lost cause - browsers change too quickly, new minor ones appear and disappear and in YaBB's case it means issuing patches and rewriting sections of embedded code to accommodate variations of a browser that doesn't always properly render standards compliant css and html anyway.
I think we need to dump the browser specific keyboard short cut keys and the iecopy function altogether. With more and more people moving to mobile devices, fewer and fewer people are going to be able to use those functions anyway and I figure the rest of us can hit the 'Post Message' button too.
It's more about supporting the current "big three" browsers (IE/Trident, Chrome/Blink, Firefox/Gecko) than trying to support all the future browsers... Many browsers share same layout engine, and for those same code should work. I agree that trying to support too many browsers is a bad thing. And don't shoot me for not mentioning Opera in big three, because it uses same layout engine as Chrome.
Posted by: Dandello Posted on: Jul 18th, 2014 at 1:22pm
Browser detection by browser string is considered by many experts to be bad form and a lost cause - browsers change too quickly, new minor ones appear and disappear and in YaBB's case it means issuing patches and rewriting sections of embedded code to accommodate variations of a browser that doesn't always properly render standards compliant css and html anyway.
I think we need to dump the browser specific keyboard short cut keys and the iecopy function altogether. With more and more people moving to mobile devices, fewer and fewer people are going to be able to use those functions anyway and I figure the rest of us can hit the 'Post Message' button too.
Posted by: Monni Posted on: Jul 18th, 2014 at 11:25am
IE 9, IE 10, and IE11 have different user agent strings because Microsoft was split as two companies, they also separate normal mode and compatibility modes... You can detect all of them if you compare the full user agent string and parse the part where it says Trident/n.n ... Some of the versions also identify itself as "IE nn.n" instead of "MSIE nn.n"
Mozilla/5.0 (Windows NT 6.1; Win64; x64; Trident/7.0; rv:11.0) like Gecko
This means running IE 11 on 64-bit Windows 7 in normal mode. If number after Trident is smaller than in the respective table row above, it means IE is running in compatibility mode.
Posted by: Dandello Posted on: Mar 6th, 2014 at 11:10pm
It breaks in such weird places.
Posted by: Westwego Man Posted on: Mar 6th, 2014 at 10:39pm
It took me many years to get away from MSIE. Now that I have been away from it, I find it hard to even use it for testing.
Posted by: Dandello Posted on: Mar 6th, 2014 at 9:12pm
Found and implemented a fix for MSIE11. in ubbc.js find
Code (Javascript)
function storeCaret(text) {
if (text.createTextRange) text.caretPos = document.selection.createRange().duplicate();
}
and replace with
Code (Javascript)
function storeCaret(text) {
if ((window.ActiveXObject) && "ActiveXObject" in window) {
if (text.createTextRange) text.caretPos = document.selection.createRange().duplicate();
}
}
MSIE11 doesn't identify itself as MSIE, doesn't support ActiveX and doesn't ignore older MSIE specific javascript tags that 11 doesn't use. The other broswers just ignore them.
Posted by: Dandello Posted on: Mar 6th, 2014 at 6:07am
AAKK! (The problem is with Preview and the character counter. To get MSIE11 to update them you currently have to click format button or close/open Preview.)