Allow component instance overrides to be inherited by all states
Currently (XD 24.0.22.19), if I drop an instance of a component and then adjust part of it (text in a button, size of the instance, etc.), that override is only applied to the selected state of the instance. So, if I have a button with many states (normal, hover, disabled, active, default action, etc.) I have to manually apply that override to each state of the instance. This is extremely tedious and error prone.
Please provide the ability to have an override of an instance be inherited by all states in that component instance.
-
Matt commented
Inherit text changes is the big one for me. Creating buttons is a very laborious task.
-
Giancarlo commented
This is a must to efficiently work with component states.
For example: I have a component that represents an input. It has a label and an icon which when hovered shows a tooltip. The icon is a component with a hover state and the input component has the following states:
- Default (empty)
- Hover (the border chages color)
- Filled (a value is added)
- Error (shows error messages and changes the label and border color)
- Disabled (changes the backgorund color)The problem is that, when working with its instances I have to update the label text, icon placement, tooltip text and tooltip size for each one of the states. This behavior makes the usage of component states very painful and almost useless.
The correct behavior should be that if I update the "Default" state on the instance, the other states that has the same elements must follow the same way it is done when we update the "Default" state in a root componet (the original component). With this behavior we can change what is needed only once and the other states will follow.
I really do not understand why it is not already implemented. Not even planned to be implemented.
-
lengo commented
>>>> please fix this <<<<
-
Ji Hoo Yoon commented
Why this is still under review ?
-
Brian commented
Please Adobe, this is a must. The current component / states system is awesome, but this will save us a ton of work. At the very least, states inheriting text changes would be extremely useful.
-
Tomas As commented
Yes do it!
-
Martin commented
I wholeheartedly support this request. It's not even a feature request but feels more like a bug. For me the current behaviour is really frustrating and I often find myself using separate components for what should have been states. For example, I can't have one button with disabled, pressed at whatnot states (that only differ by colour) simply because when I place an instance on the comp I have to go and change its label throughout all states and if the label doesn't fit I have to change the instance's width on all states, etc.
For me the best way for this to work is to treat custom states somewhat like instances of the default state – if a parameter is not overriden on the custom state, propagate it's value from the default.
-
carolyn commented
Yes, I've tried to find a workaround so that my design system can include button states, but haven't been able to.
-
Anonymous commented
Please fix this asap.
-
Bertrand commented
Concrete use case where it would be needed : simple and basic contextual menu. If I resize the main component (contener), I have to resize every components cell insides...
The worst thing is it will resize the current child component state, but not the others...
In addition, not every users are designers. The way it works make things way too hard to maintain.Our design system is shared with Project Managers, Product owner, Developers... This kind a detail is a real pain point for adoption in our company.
-
Jon Crowell commented
please fix this. it's a needed improvement
-
Stephan Lenting commented
I was very unpleasantly surprised this still works horrible...
Why is voice or 3D prototyping a higher priority than a optimal basic workflow for UX design?Get this right, it's incredibly frustrating!
-
liam commented
Please fix this as massively frustrating waste of time, energy and resources to have to update component states.
An additional consideration is nested symbol auto-layout working properly together e.g:
- Parent Button component with a nested background component (to manage hover colour change)
- Background component set to auto size to match size of the button componentExpected / desired behaviour:
- When button resized then all states of the nested component resize at the same time
Current behaviour:
- Only the state of the nested component that is 'visible' when the parent button is resized resizes - the other states don't 🤦♂️
....please fix this....
-
Andrew Freire commented
I would like to 643rd this vote. If I edit a component state instance I should be able to save the changes back to the main component state. Very similar to how you can update a text style in word once you've overwritten it. Not having this is making component states extremely frustrating especially when I spend an hour tweaking a component state only to realize I was tweaking the instance and not the master
-
Brian commented
Our team loves Adobe XD and we have been a huge fan of components!! Unfortunately we keep running into scenarios where we spend lots of time updating component elements across multiple states. Please add the capability for states to inherit overrides.
*Also ... if you want to allow for state re-ordering in the UI panel while you're under the hood it would be very much appreciated.
Thanks for all the hard work you've put into this so far!
-
Anonymous commented
Please fix this issue. Makes XD unusable for interfaces that have states
-
Anonymous commented
Really??? Come on Adobe... Going back to Sketch seems like the most sensible solution.
-
Peter commented
YOU MUST BE KIDDING!!!!!!
Just coming over from Sketch (on client's behalf) and having 20 years experiecnce with Adobe Software I was thinking this shouldn't be so hard, but THIS?!!?? One year in the making and this … is … STILL … NOT … FIXED???
I will spell it out once more: IF OVERRIDES TO NOT PROPAGATE TO STATES THE WHOLE CONCEPT OF HAVING COMPONENTS IS USELESS!
I really can't wrap my head around the fact that this has not been fixed in over one year. Probably COVID's fault, too, right? -
Rob Lee commented
PLEASE have a setting to inherit default state (button size, text label, etc) it is such a nuisance to go through each state, and resize it, and modify the text label.
or have something to allow the designer to select (inherit label and size) for the substates.
-
Viktor Lanneld commented
Come on, states are such a nuisance without this feature. Having a component that I need to update every state of in my prototype almost defeats the purpose of using components all together!
States should handle overrides the same way as component instances handles overrides but using the instance as "master".