Extensions Platform - Alpha launch

Why do we constantly keep patching corner cases for this for years and don’t address this issue properly? Blender needs global preference to choose between dismissing all the menus and popovers by clicking outside of them (as is the default in pretty much any other software) vs merely moving the cursor out of their area.

Otherwise, it’s going to be endless compromises around the lines of rearranging UI elements so that the mouse cursor path doesn’t accidentally trigger something or moving things that should be in popovers to panels just because of this “limitation”.

Instead of just patching another corner case, why not stop treating yet another chronic symptom and cure the underlying disease instead.

1 Like

I encountered the same thing, the move towards menu logic here does not work well when the button and menu is in the corner like this and the button is small. It should be possible to tweak it (ui_mouse_motion_towards_check for anyone who wants to try), but probably it should be a relatively specific fix since this logic has some subtle trade-offs.

I would consider a bigger change to the UI here though. In my opinion “Check for Updates”, “Update All” and “Install from Disk” are too hidden in this small menu. The main purpose of the extensions tab is to manage add-ons, and these are very common operations, so I would consider making them more prominent as buttons on their own row.

The repository preferences could perhaps have a have both an icon and label “:gear: Repositories”, on that same row.

That is not the problem here. It’s not about dismissing but going through multiple adjacent menus with mouse motion, which I believe is standard.

3 Likes

It’s usually standard for common menu bars under (or inside of) the window header, but not sure it makes sense for popovers. Menus usually have just one final destination, as in the user opens the menu to find specific toggle or feature.

Popovers on the other hand are dismissible configuration panels where user is usually expected to spend some substantial amount of time configuring multiple UI elements. They’re not just linear, vertical stack of “links”. It’s very common pain point of Blender to have popover you are currently interacting with just randomly disappeared because you moved the mouse a bit too far when moving the cursor over to the next UI element.

I honestly think it would help even here. If I accidentally enter another adjacent menu, if the menu doesn’t disappear on mouse cursor leave, then I have higher chance getting my cursor back over the menu I intended without accidentally dismissing it and having to initiate another menu open with another click. This is very common with top bar menu, when I sometimes mis-hover to wrong menu section, in most other apps, I can just move my mouse back to the menu button I intended. In Blender, the shortest trajectory towards the intended menu button often leaves the opened menu area, closes the menu, and I have to initiate with another click. I can’t reliably just browse the menu sections, searching for something, yet menu browsing is exactly the reason this sticky opening feature was invented.

I have no horse in the how should we solve this race, but @Harleya has some nice ideas in #118733 - Extensions Platform UI - blender - Blender Projects

1 Like

Hello

I’ve just set up my Pie Menu as an extension on the website and don’t really have any complaints. I thought the process was easy and really nice to have it part of a repository. The previous add-on process was a little daunting.

This is excellent to have an official website that can have easier inclusion than add-ons the need to ship with blender.

3 Likes

I agree.

I tried to manually download and install my extension for testing and it took a while to find the “install from disk” button which used to feature prominently.

Hiding the old workflow away in a little menu would be a quick way to annoy people who still manually download add-ons, and will likely continue to do so for a while.

The Add-ons menu from 4.0 with the filters on a second line worked and was easy to read.

1 Like

There is an ongoing discussion about how discoverable these buttons should be. That said you can also just drag the .zip into Blender to install from disk

1 Like

I just published a new documentation page to help people converting from legacy to extension add-ons.

3 Likes

I’m finding the “auto close” function when hovering/leaving the hover area of the settings UI to be quite difficult to work with. Click the GEAR, move your mouse too far, and suddenly you’re in a different panel dropdown that you didn’t intend to visit.

I realize this behavior is inherently “how it works” with the UX, but this in particular demonstrates how bad it can get. I shouldn’t have to fight the mouse pointer to stay inside a dropdown.

2 Likes

Check a few comments back, there is work going on to change this UI.

3 Likes

So, for users who use supported paid for addons, how are they now installed? I don’t see an Install button.

1 Like

Oh, I found it, it’s hidden away in a menu now. Why would the UI take such an important feature that has been there forever and hide it away?

There are literally thousands of paid add-ons that people purchase. Why would Blender be making it very difficult to install those? Perhaps someone could enlighten me?

I just want to understand the reasoning behind hiding such a feature. Thank you.

3 Likes

This feature isn’t only for extensions platform.

If you carefully read the proposal, extensions.blender.org is just a prototype of how it will be done. Every paid add-on seller, BlenderMarket, Gumroad, etc. will be able to just include necessary json files on their website and users will be able to connect to those repositories from inside Blender, grab addons from inside Blender, and receive automatic updates when you upload a new version on paid market.

You can make your own website if you wish, just include json files and users will receive same benefits of automatic updates and getting addons from Blender.

2 Likes

It’s almost as if all the existing addon developers’ work is being punished, because they didn’t code them as extensions before the extensions module was created…

It also took me more than a moment to find it, and I wondered if I was supposed to now load them from my user repository that I hadn’t created yet. Finally figured that one out.

And doesn’t help that the tiny buttons + drop downs make it a video game to try and successfully select something.

The term “Legacy Add-ons” isn’t the best… Factually, it is ALL the countless add-ons except the handful on the test server. The word implies they are old, and one could infer they aren’t compatible. There’s no need to call them “legacy”.

The UX needs another pass on design and polish.

3 Likes

From what I can find on the documentation

" The Blender Extensions Platform only supports free and open source extensions compatible with Blender’s license: GNU General Public License v3.0 or later."

Not exactly sure how that supports commercial add-ons.

Furthermore, you did not explain the question that I asked. Why is this being done? What is the purpose?

What is the use case for why the sudden change? Were there issues that people were having with the way the existing process was working? It seems simple enough to me, press the install button, select a zip file and turn it on. It’s the same way it’s been done for years. If it’s not broke why try and fix it?

1 Like

You refuse to read anything, so this is going to be my last reply.

  • Purpose of this is to have automatic updates to add-ons inside Blender, without need to remove old and install new one
  • To be able to find and install addons from inside Blender
  • Give addons that need to connect to the internet easier way to do so
  • Give users way to update ALL addons with a single click
  • and many more

There is a difference to what extensions.blender.org is and what extensions as a feature are.
extensions.blender.org is just official platform where you can put add-ons for people to find. They only accept GNU license

Extensions as a feature are what add-ons are now (plus themes, keyconfings, and asset bundles). They can be grabbed from any other place besides official platform. BlenderMarket can have as many paid non-GNU extensions as they want, sell them, profit, and users will also be able to update automatically.

User will be able to connect to as many repositories as he wants besides extensions.blender.org

Zip files are still supported and you can install them if you want to. Difference between extensions and legacy add-ons is former includes blender_manifest.toml, latter includes bl_info. Once you convert bl_info into manifest you’ll have extension.

If you want to install something that uses bl_info you use “Install Legacy Add-on”.
If you want to install updated extensions you use “Install from Disk”

Lotta writing I wouldn’t have to do if you read the documentation links provided.

6 Likes

You are welcome to get angry if that’s how you want to proceed. I am asking simple questions. I have looked and read very carefully at

Which is the only link I can find in this thread that has anything of any detail and does not include many of the things you have just said.

Other than updating free extensions, I’m still trying to understand exactly the purpose of this radical change.

From a user standpoint, why would you not still allow people to see an install button at the top right? What use case are you solving? It doesn’t make sense to me and nor will it make any sense to Blender customers.

It feels like there is a strong bias against commercial add-on developers from Blender. Is this correct?

1 Like

My friend you will be able to automatically update paid add-ons as well, if seller platform uses that feature.

I think proposal doesn’t make it clear that extensions platform and extensions as a feature are different things, so I understand the confusion.

Use case it solves is that once you can connect to website, grab add-on from inside Blender and receive automatic updates forever, is installing from zip files still important? If you can connect your Blender to blendermarket for once, search for Auto Rig Pro, click install and its installed now. And after that you can get updates for every new version without needing to install/uninstall anything, do you still need installing from zip files in such a prominent way?

Of course not every paid seller of addons will use this new feature, but I think eventually users will start favouring platforms that do (who doesn’t want automatic updates?) and most prominent selling places will quickly adapt to this.

1 Like

Thank you for your clear explanation. Things make much better sense now. I pretty much think these days only with use cases. It’s probably my 40 plus years in the business.

I will contact Jonathan at Blender Market and review with him his plans on how he expects to support this new feature .

If I understand it correctly, then people will have to provide correct credentials to log into their Blender Market account and download the add-ons they have purchased. And, users can be easily notified within Blender when updates are ready to be installed.

This will be helpful. Currently we have our own update code in place but it requires managing ack files on different servers. This should be simpler to implement.

Thanks again for your clear explanation.

I would still recommend removing the word legacy for now and possibly adding it in a few versions down the road.

1 Like

I’d favor this as well. ‘Legacy’ sounds too much like “will be removed eventually” and from what I remember one of Blender’s core beliefs always was “it will work without internet”.

Maybe rather call it something along the lines of “manual installation” or “offline installation”.

I also think that I, personally, will most likely go ahead and use internet installation at home. But I also work in a company with very, very restrictive firewall settings. If manual installation was ever going to be replaced with “internet only” downloads and updates this would be the de-facto death of Blender’s Addon system for our department. And neither do I think this is helpful, nor in Blender’s own interest for the users.

6 Likes