I use Google Calendar at work and I have access to lots of my coworkers' calendars which makes the view pretty messy, so I mostly keep them hidden. Is there a way (maybe with some plugin or extension) to show and hide all these calendars with one click?
I realize that you are specifically asking for one click, still I'd like to offer a (mostly) three click solution as likely helpful as well (for anyone not aware of it already at least ;)
- Within the left sidebar, under Other calendars, click Settings.
- Within the second column, under SHOW IN LIST, click all/none as appropriate.
- At the bottom left, click Back to calendar.
Obviously, depending on your calendar distribution between the upper and lower section, you might need to click all/none another time in the other section as well eventually.
In case this really doesn't serve your needs, it should indeed be possible to extend Google calendar via the Calendar APIs and Tools (the calendar class has a hidden property) and/or a Calendar Sidebar Gadget - I'm not aware of an existing solution offering the desired functionality, so you'll need to roll your own in case.
I just found a Chrome add-in that works. Calendar Selector for Google Calendar. Basically allows you to create a number of saved groups/views and turn them on as needed.
Some additional features (for all intents a single purpose solution): - clear - restore - display by name (search by 'calendar name' or 'regex')
I and many others have been searching on and off for a solution to this shortcoming in gCal for years and years and I feel lucky to have found this extension, hopefully it will help someone else.
Some additional notes if you have time:
I have had this extension installed for all of about 2 hours. I have not done extensive testing nor have I been playing with it solidly for 2 hours. Having said that I have a penchant (gift? curse?) for stepping off the designated path, and would like to share some initial observations about the extension. None have been rigorously investigated:
- Looks like the extension incrementally selects/deselects on your behalf in real time:
- In (albeit superstitious) lay-person's terms: Imagine an invisible web-helper doing the same tedious process that gCal wants you to do for each calendar whose visibility you want to change (click, click, click, click...), but doing it a lot faster, and doing it on your behalf, and remembering for next time.
- Because of this 'ghostly helper' implementation there are some side effects (on top of seeing ghosts):
- If you have a large number of calendars (I have >20) the extension takes a small-ish to more-than-small-ish amount of time to complete its operation.
- 'Time to Complete' depends on the number of new selections/deselections required to change from the existing view to the newly requested view.
- e.g. If you have only 2 (of 20) calendars visible, and you wish to switch to a saved view that has 5 (of 20) calendars visible, that will have a noticeably faster completion than starting with the same 2 calendars visible and then making all 20 of your calendars visible.
- If you close the browser tab or otherwise interrupt the operation prior to completion (such as by navigating to another web page in that same browser tab, the next time you open your gCal you will have a view that represents a partial completion of your previous operation. Nothing is 'broken' just as if you were in the process of manually changing the visibility of some calendars and were distracted by a squirrel.
- Related to the previous note, once you trigger a gCal visibly change via the extension the browser tab must stay in focus/foreground until the operation completes.
- It seems that the 'ghostly helper', while invisible, is an exhibitionist.
- i.e. If you switch to another tab before the requested visibility modifications have completed, when you return the tab to focus/foreground the operation will pick up where it left off when you switched focus.
- The operation appears to complete properly at that time. So, outside of any implications from the hand-holding, it doesn't seem to have 'breaking' implications.
- [musings] This 'issue' may not occur for everyone depending on the implementation of the extension, as well as their specific browser settings (run apps in the background toggles etc.), or it may. Again, not a lot of rigorous testing was done by me.
So... some possible issues whose relative import will be tied to a particular user's specific paradigm and general demeanor. The delays are noticable however they are entirely bearable.less so than the alternative. For me, none of it is a deal-breaker. Yet.
There is no one-click solution for this, and no keyboard shortcut that I know of, but there is a two-click solution.
Under "My Calendars", find your calendar (It's at the top of the list), click on the down arrow and select "Display only this calendar".
That's two clicks ;)
Sadly, there is no way to restore the calendars to the previous view (before you selected "Display only this calendar").
Edit: Well I re-read your question. I guess my answer is obvious, but it does answer half your question ;)
There's a Chrome extension that offers the ability to group calendars, then show/hide them. It was renamed/redone as Calendar Selector for Google Calendar.
To show all calendars, put the following into your browser's address bar and press enter:
This dispatches a mouse-down event to every unselected row in the list of calendars.
I have tested this with Firefox 45. Note it will automatically strip out any text beginning with
j and then paste in what starts with
This could easily be made into a bookmarklet.
There is a box to the left of each calendar in the list. Click on that box to show/hide that calendar. When you click on the box to show, the box will now be the color you have chosen for that calendar. If you click it again (to hide) the box will have no color at all. Actually, the boxes are a little difficult to see if there is no color; so much so that I didn't see them at first! It will be one click per each calendar you wish to show/hide. I keep the crucial ones up and then just show the others when I have a question about scheduling. It would be nice to have a custom view that you could click on or off as you wished though. Maybe someone at Google is monitoring these comments!