Move Settings to the top of the course navigation toolbar

0 Kudos

Because "settings" appears at the bottom of the list on the course navigation toolbar and because a lot of the navigation options don't disappear even if they are hidden from student view, teachers need to scroll to get to settings. Moving it to the top of the list or allowing teachers to control where it appears in the list would increase efficiency. Sure it's only a second every time I need to get to settings, but those seconds add up.

2 Comments
James
Community Champion

Only the Canvas-native options are forced to show up regardless of whether you have them enabled or disabled in the navigation settings. If other things are showing up, it's because your local Canvas administrator has installed them in a way that causes them to show up. That may or may not be intentional, so you might want to talk to them if there are navigation links that don't belong there.

Supposedly, the settings are something that you would not change very often once a course is underway. If all of the setup is done early, hopefully before the course begins, then a quick trick that you can pull is to open the Settings in a new browser tab and then leave it open in that new tab rather than re-opening it over and over.

I've written a lot of programs to reduce unnecessary clicks in Canvas, but I've never considered moving the Settings button, so I looked into it. The navigation list comes as part of the HTML and isn't added by the browser using JavaScript. It's also inside an ul element with an id on it. Both of those greatly simplify what would need done to write a user script. A user script is code that runs inside your browser but doesn't affect anyone else's Canvas.

The following code isn't a user script, but it could be turned into one in about 10 seconds if you had Tampermonkey installed. All it takes is some headers and where you want it to run. The code itself is the body of a user script so you could create a new script from your course homepage and then paste the code in.

What it does is is move the Settings to right after the Home.

(function() {
  'use strict';
  const ul = document.getElementById('section-tabs');
  if (ul) {
    const s = ul.lastChild;
    ul.insertBefore(s, ul.childNodes[1]);
  }
})();

The childNodes is a 0-based list. Home would be in position 0. There are other ways to do this, like if you always wanted it before assignments, no matter where assignments was. But I was just showing how easy it could be to do this on your own.

As a Canvas Admin who sometimes has to go into courses to fix things for instructors, I appreciate the consistency of having settings at the bottom of the list. It keeps me from having to hunt for it. It also makes it easier for giving directions to faculty to be able to say "Go to the bottom of your course navigation menu."

Stef_retired
Instructure Alumni
Instructure Alumni
Status changed to: Open