Since iPadOS 13, Notion should show in desktop mode on iPadOS Safari, which is more fully-featured and pretty much fine for touch/pointer input.
In case you're from Notion and reading this, the things I generally don't like about that interface are:
- Animations are oddly laggy
- Full-screen popover modal menus instead of popping over contextually
- Less hover states
- Larger UI elements (I don't personally need these since I use a trackpad)
- Small missing features or different UI (in particular around the settings panel)
As far as I can tell, the reason Notion do this is to avoid triggering Apple, because if you can do things like add users or change the payment plan, they should be giving 30% to Apple. But that only applies to the mobile app, not the desktop experience.
To determine if you're on an iPad, Notion test for:
!a() && (/iPad/i.test(t.userAgent) || "MacIntel" === t.platform && "ontouchend" in document)
i.e., you're an iPad user if you're not on Android, and if your user agent shows as an iPad (non-desktop mode), or if your platform shows as MacIntel
and you have a touch screen. The cheapest way to block this is to change navigator.platform
to something else.
To modify & reload the script, we need to use a custom userscript. On iPadOS 15, we can download a Safari extension that will run a custom script for us. I'm using Userscripts, but other userscript extensions will work too.
- Select a userscripts folder (I selected one in iCloud Drive and synced over from my computer)
- Download
notion-desktop.js
below and put it in that folder - Enable the Userscripts extension on
notion.so
Now you should see the full desktop view!
Thank you for providing a great script! I tried this code and also changed navigator.userAgent, but in most cases it didn't seem to work😭Sometimes it works, but does it depend on the load order of Script? If you know something, I would be happy if you could tell me!