Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#11744 closed defect (fixed)

Using dojo 1.5, dijit.Editor does not work with Safari 4

Reported by: joel_314 Owned by: Jared Jurkiewicz
Priority: high Milestone: 1.5.1
Component: Editor Version: 1.5
Keywords: dijit Editor safari Cc:
Blocked By: Blocking:

Description

  • Using dojo 1.5, dijit.Editor does not work with Safari 4 : it is impossible to focus and to write anything.
  • Using earlier versions of dojo, there is no problem.

Attachments (3)

11744.patch (661 bytes) - added by Jared Jurkiewicz 9 years ago.
Potential patch for issue.
11744.2.patch (692 bytes) - added by Jared Jurkiewicz 9 years ago.
Updated to only activate on Windows, since it seems windows specific
RichText_Saf4_1.6.patch (941 bytes) - added by Jared Jurkiewicz 9 years ago.
Followup patch varient for Saf 4.

Download all attachments as: .zip

Change History (21)

comment:1 Changed 9 years ago by bill

Component: GeneralEditor
Owner: anonymous deleted
Priority: highnormal

comment:2 Changed 9 years ago by Jared Jurkiewicz

I do not have access to Safari 4, so cannot verify if this is true or not. I've used Safari, though (many incarnations), with Editor without issue.

comment:3 Changed 9 years ago by Jared Jurkiewicz

Confirmed. That is ... quite peculiar. Not sure why that is happening.

comment:4 Changed 9 years ago by bill

It's working for me on mac (safari 4.0.5), in test_Editor.html... perhaps you are testing on windows?

comment:5 Changed 9 years ago by Jared Jurkiewicz

Bill, I isolated the issue (And yeah, I'm testing on windows). In 1.4 and earlier there was this:

               if(dojo.isSafari){
                       // Safari 4 seems to always append iframe with src=about:blank
                       setTimeout(function(){ifr.setAttribute('src', s);},0);
               }

after the append of the iframe to the page.

It was was removed in 1.5.

Putting it back fixes the issue (and just saying dojo.isSafari <=4 to scope it to older safari).

Also, just swapping the order of the src field set and adding the iframe to the page also seems to. Not sure what is the best fix. I think the src field needed to be set before append for other browsers, but I could be wrong.

What do you think?

Changed 9 years ago by Jared Jurkiewicz

Attachment: 11744.patch added

Potential patch for issue.

comment:6 Changed 9 years ago by Jared Jurkiewicz

Owner: set to bill

I threw a patch on that does the isSafari check, but I wanted your take before I committed anything for it. It's def a regression in 1.5.

comment:7 Changed 9 years ago by Jared Jurkiewicz

If you want me to just commit my fix into 1.5/1.6, just assign it back to me. :)

comment:8 Changed 9 years ago by bill

Owner: changed from bill to Jared Jurkiewicz

I took out that code in [22416] to fix #11400... after applying your patch that problem comes back, at least on mac. You could modify your patch to only run that code on windows (when !dojo.isMac), but I'm guessing it will cause the LinkDialog test failure. I suppose that's better than safari 4 not working at all.

comment:9 Changed 9 years ago by Jared Jurkiewicz

I'll try a few ideas today and see if any work.

-- Jared

Changed 9 years ago by Jared Jurkiewicz

Attachment: 11744.2.patch added

Updated to only activate on Windows, since it seems windows specific

comment:10 Changed 9 years ago by Jared Jurkiewicz

(In [22949]) Tweak to fix a Safari 4 regression (editor didn't work on Windows at all). \!strict refs #11744

comment:11 Changed 9 years ago by Jared Jurkiewicz

Resolution: fixed
Status: newclosed

(In [22950]) Tweak to fix a Safari 4 regression (editor didn't work on Windows at all). \!strict fixes #11744

comment:12 Changed 9 years ago by Jared Jurkiewicz

Milestone: tbd1.5.1

comment:13 Changed 9 years ago by andrew.ortwein

I am seeing this problem using Safari 4.0.5 on Mac OS X (10.5). If I apply this patch to my deployment of Dojo 1.5 and remove "!dojo.isMac" check from the IF statement, it seems to fix the editor. Can we reopen this ticket and make this change?

comment:14 Changed 9 years ago by bill

Resolution: fixed
Status: closedreopened

It's not quite so simple, as I wrote above I took out that code in [22416] to fix #11400... after removing the if(!dojo.isMac) the LinkDialog problem comes back on mac. Maybe we need to branch on the OS.

My userAgent is:

> navigator.userAgent
"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-us) AppleWebKit/533.18.1 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5"

What's yours? (You can get the console from Alt-Command-C.)

comment:15 Changed 9 years ago by bill

I reproduced this on a Mac 10.5.8 machine running safari 4 only.

I also noticed that MacOS automatically prompts the user to install system updates including Safari 5. So not sure why you are still using Safari 4.

Changed 9 years ago by Jared Jurkiewicz

Attachment: RichText_Saf4_1.6.patch added

Followup patch varient for Saf 4.

comment:16 Changed 9 years ago by Jared Jurkiewicz

(In [23105]) Followup patch for Saf 4 issues with Editor startup. Saf 4 bug. \!strict refs #11744

comment:17 Changed 9 years ago by Jared Jurkiewicz

Resolution: fixed
Status: reopenedclosed

(In [23106]) Followup patch for Saf 4 issues with Editor startup. Saf 4 bug. \!strict fixes #11744

comment:18 Changed 9 years ago by andrew.ortwein

@bill: Sorry I didn't get back to you sooner. I'm purposely running Safari 4 on a test machine because our product still supports this browser (though I assume most Mac users will have upgraded to Safari 5 by now).

@jaredj: Thanks for adding this fix.

Note: See TracTickets for help on using tickets.