[External Tools] Automatically open new tab for links/external tools set to 'Load in a new tab'

Previously under the title "Link to External URL"

 

When linking to an external url that Canvas will not (or cannot) embed, link should automatically open in a new tab or window.  Currently, Canvas opens another page saying you have to open it in a new tab, then you have to click that link to do that.  Why not just go directly to that page in a new tab?  Links in other locations already do this.

If Canvas is worried a user would be confused by being outside of Canvas suddenly, perhaps they could flash a redirect page saying they are leaving the course and to close this tab to return, or something along those lines.  

 

Comments from Instructure


New behavior governing external tool links was released to production in November 2019. For more information, please read through the Canvas Deploy Notes (2019-11-20)

85 Comments
eschiebel
Instructure
Instructure

Engineer here. I understand the desire to have the "open in a new window" module item open directly in a new window w/o navigating away from the current modules page. However there is also a population of users that prefer to navigate through module items using the previous and next buttons, which are only available on the intermediate page. This solution attempts to find a compromise where the "open in a new window" item does automatically open in a new window w/o requiring an additional click, while also preserving the prev/next buttons.

GideonWilliams
Community Champion

Hi Edward

It is very difficult to comment on this as I cannot yet see this in action...?

I would understand the argument made above better if all items feed off the Previous/Next buttons but they don't eg Collaborations. There are also many teachers that do not use Modules for instance or who decide to hide items in the Module for future use. 

Why not take people back to the Module if it such an issue?

In our institution, we do not use or promote the Previous/Next buttons. Canvas is used to support teaching and learning rather than being a remote learning management tool. The features are not designed to offer a linear route as learning is not a linear experience - A Principal's Reflections: Learning is Not Linear 

eschiebel
Instructure
Instructure

 @GideonWilliams ‌,

The change is specifically for module items only, so will not change the student's interaction with a course for teachers that do not use modules.

GideonWilliams
Community Champion

Apologies, I was not clear. What I meant to say is that there are many teachers who do not set up Modules in courses for students to use.

dbrace
Community Contributor

ybakos‌,

I believe I found something that  @James  made reference to at Canvas Deploy Notes (2019-11-20) in the comments.  A screenshot is below:

jamesjones comment from https___community.canvaslms.com_docs_DOC-18007

Before seeing and reading James' comment, I believe I was experiencing the same as you.

By default, my Google Chrome had the pop-up blocker enabled.  I set Google Chrome to allow pop-ups and then an external link with "Load in a new tab" enabled worked as expected.  After that, I changed my Google Chrome pop-up settings to block pop-ups but allow [*.]instructure.com and the Instructure/Canvas links worked as expected and were still allowed.

I had a similar experience with Firefox and set it to allow instructure.com; which automatically did the entire domain, http and https.

I did not try in any other web browser but I would imagine the experience(s) and solution(s) are similar.

I recommend giving that a try.

ybakos
Community Member

Thanks  @dbrace ‌ I appreciate the comments. Yes, I am aware of how they chose to "implement" this feature. Now it's worse: we need to inform students to enable popups in their browsers. I also wonder what the UX is on mobile, which many students do use.

I don't mean to harp or be rude about this issue, but the simple desire from the community is to not break existing user expectations of how "new window/tab" links work on the web. The existing browser location should not change.

The way the feature is now makes the UX worse. Users must now:

  1. Enable popups in the browser.
  2. Click a "open in new tab" link and...
    1. View the new tab content, then close the tab.
    2. Switch back to the original tab, and navigate "back."

This is the exact same user experience as before, where clicking a "open in new tab" link requires the user to do additional work to "go back" to where they were before clicking the link. All the new feature has done is attempted to save the user one click, in exchange for enabling popups.

I'm pretty weary of expressing my opinion on this feature, so if I don't follow up further, just realize that I do care but have checked out of this discussion due to time.

ybakos
Community Member

 @eschiebel ‌ Thank you, I understand that Canvas needs to support many kinds of user preferences.

Why not:

  1. Leave the functionality of "open in new window" links the same for the page that appears when navigating via previous and next buttons.
  2. Change the functionality of "open in new window" links only in the main module items list.

In other words, only changing the way that external "open in new window" links are rendered in the main module list, to use target="_blank".

Users who like to navigate via next/prev get the exact same functionality.

Users who like to click on items in the module list get the standard/traditional "open in new window" behavior as is expected on the web.

dbrace
Community Contributor

ybakos‌,

I understand the concerns that you brought up.  Some of them are difficult for Canvas/Instructure to work around because what they are doing is based on limitations that have been made by the developers of web browsers and device manufacturers.

I believe that what they have proposed is the best from a variety of viewpoints and hopefully there are adjustments that are made in the future.

James
Community Champion

ybakos, thanks for taking the time to lead this charge. I've been busy with other things. Please keep up the charge.

 @eschiebel   -- despite what Erin wrote in the deploy notes, this is the wrong behavior. Adding a note to make it say it's going to open in a new window isn't the ideal behavior, but it will make it more accessible.

Yong has it right, here. Navigating with the Next and Previous buttons should not automatically open it in a new window. Those are the students who should be forced to open it in a new window by clicking rather than forcing everyone who was using the navigation buttons to close the new tabs to return to Canvas and the location they were at.

This solution attempts to find a compromise where the "open in a new window" item does automatically open in a new window w/o requiring an additional click, while also preserving the prev/next buttons.

The problem with your statement here is that you're not preserving the functionality of the previous and next buttons. You're preserving the buttons, but changing what they do. Those buttons currently navigate module content while keeping you within the Canvas system. Now, it will automatically take you outside of Canvas in a new tab / window.

When someone clicks on an external URL on the modules page, load the content in a new tab but navigate to a Canvas page that has the next and previous buttons. That part of your statement is good. It's the automatic and unintended behavior of that happening when you navigate through the page that is my main concern.

The external URLs should not open automatically unless the student has taken a deliberate and intentional action to do so.

  1. They click on the link in the modules page
  2. They click "open in a new window" from within the page.

Clicking the Next and Previous buttons do not satisfy the conditions of deliberate and intentional. They made a deliberate action (click), but it was not necessarily to view the content on the next page. Sometimes, especially in the browser, it is harder to go back to the home screen (modules for me), find the content again, and choose the module item that was three items previous. Opening another window or two is going to make it harder still to navigate.

I do acknowledge that some, perhaps the majority even, of students use the Next button to navigate through all of the items in the module in sequence. They should still be able to open the page manually when using the navigation system.

Another option would be to automatically open it in a new window if the student has never been on that page before and load the splash page if they have. That's a nightmare and provides inconsistent behavior for the students. I'm glad you're not taking that approach.

The only unambiguous action seems to be the clicking on an item on the modules page. It's the only thing that should automatically open.

While we're on the subject, why do external URLs that are set to open in a new link get counted on the access report when the student doesn't actually open it? If it's set to open in a new link and the student doesn't click the box to do that, then they haven't actually viewed it.

I know you're going to say that the access report is them viewing the Canvas page that provides the external link, but it would be more useful to know if they actually viewed the content. The way things are set to come down, this will now mean that they have opened the content, so it will fix the issue.  The approach is still wrong.

mfuller2
Community Explorer

I have a wild idea... if it's such a problem to change the current tool so that it simply does what we've been asking for, then create another one that does. Seems like a simple solution. I'd gladly take the time to switch the links I've created over to a new tool if it eliminates the extra step.