Can't drag to reorder in studio after update to Ulmo when language is French

Hi,

After upgrading to Ulmo, we found that we can no longer drag to reorder components within a unit in Studio.

The option is there, but clicking and draging/dropping just selects text and does not move anything.

Any idea why that may be ?

I just tested on a sandbox and it seemed to be working fine. Could you check the browser console for errors? (Right-click, Inspect [element], Console tab). Though Studio has a lot of warnings in the console at the moment so it may be hard to tell what’s relevant.

Did you test to move a component within a unit ? Moving units within sections works fine.

i.e., in the demo course, moving things in this page works fine:

/authoring/course/course-v1:OpenedX+DemoX+DemoCourse

but in this page, it does not work:

authoring/course/course-v1:OpenedX+DemoX+DemoCourse/container/block-v1:OpenedX+DemoX+DemoCourse+type@vertical+block@78b75020d3894fdfa8b4994f97275294/block-v1:OpenedX+DemoX+DemoCourse+type@sequential+block@4e1de5e13fc3422997fe246b40a43aa1

It is indeed hard to tell what may be relevant in the console, but there are errors:

The above errors all seem related to the video content on that specific unit. They don’t appear on another unit (in which I still can’t drag components).

Yes, it’s funny because I did make that mistake myself at first, but I did test both and it’s definitely working within units on https://apps.sandbox.openedx.edly.io/authoring/home which I believe to be running Ulmo, as well as on my devstack running the master version.

Mmm, do you have a clue what could interfere ? Are there limitations to moving components ?

If I gave you access to our development instance, could you see something more ?

I don’t have any useful info for you, but I can confirm that reordering (sub)sections works for me on Ulmo.1. Sorry I can’t be of more help :slight_smile:

Reordering sections and subsections work for us too. It is reordering components within units that doesn’t work for us. The option even seems greyed out.

We do have some branding, but the changes are very minimal for the Studio interface.

Note that in the unit pages, the “Drag to reorder” icon does not highlight when I move my mouse over it:

Capture d’écran, le 2026-02-06 à 09.10.36

compared to in the section pages:

Capture d’écran, le 2026-02-06 à 09.11.26

Looking at the source code, it seems that the “Drag to reorder” “button” is not a button in the unit page.

Compare in the section page:

vs in the unit page, I have a button for the “Actions” triple dot, but not for the “Drag to reorder” option, I have a “span”:

Oh! This difference in code made me think to try to switch back to English….

Drag and drop works in English, but it does not if my language is French!

So the feature is somehow broken by translation.

It works in Spanish too… looks like it is only in French that it is broken :exploding_head:

Could it be because the French translation for “Drag to reorder” contains a non-ascii character ? (i.e. the “é” in “Glisser pour déplacer”)

Edit: Actually, it seems like the translation is “Glisser pour modifier l’ordre”, which contains a single quote…. could the single quote break the code ?

I could adjust the translation to not contain a single quote, but it feels like this is a bug… It should not break just because the text contains a quote.

Hmm, it’s very possible that a single quote is the problem. This unit page is one of the oldest parts of the codebase, and it may not properly encode a string somewhere. However, I don’t think that the tooltip string would affect the functionality of the dragging and dropping; it would just prevent the tooltip from appearing. So it may be that, or it may be a similar issue with one of the other strings on the page.

If it helps, the tooltip string is here: openedx-platform/cms/templates/studio_xblock_wrapper.html at 1db37f309f710fa54e2372b1a3ca6dbb9b05640f · openedx/openedx-platform · GitHub

In fact, it looks like the strings on these menus are not translated at all. I can’t find those strings in transifex, so maybe their translation is not even what I thought they are…

Can you reproduce the issue that the components can’t be dragged if you put your interface in French (fr or in fr-ca) ?