dialog: Check whether text changed when setting title or description
As usually with GObject setters, we should check whether the property actually changed before setting the value and notifying the property. So check whether the title or description text actually changed before setting it. This fixes a bug which makes the title flicker and change its size, because when updating the title we remove the "leightweight" css class and reapply it inside a later, which makes the title appear larger for one frame. Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2574 https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1336
This commit is contained in:
parent
481014ac9e
commit
e4bb2037ca
@ -228,6 +228,9 @@ var MessageDialogContent = GObject.registerClass({
|
|||||||
}
|
}
|
||||||
|
|
||||||
set title(title) {
|
set title(title) {
|
||||||
|
if (this._title.text === title)
|
||||||
|
return;
|
||||||
|
|
||||||
_setLabel(this._title, title);
|
_setLabel(this._title, title);
|
||||||
|
|
||||||
this._title.remove_style_class_name('leightweight');
|
this._title.remove_style_class_name('leightweight');
|
||||||
@ -237,6 +240,9 @@ var MessageDialogContent = GObject.registerClass({
|
|||||||
}
|
}
|
||||||
|
|
||||||
set description(description) {
|
set description(description) {
|
||||||
|
if (this._description.text === description)
|
||||||
|
return;
|
||||||
|
|
||||||
_setLabel(this._description, description);
|
_setLabel(this._description, description);
|
||||||
this.notify('description');
|
this.notify('description');
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user