| Index: ui/views/view.cc
|
| diff --git a/ui/views/view.cc b/ui/views/view.cc
|
| index f4f6f0d577dffded361184822bb4f012f532f88e..2918ee1aa908ae9dc847777214cfe680b8c38149 100644
|
| --- a/ui/views/view.cc
|
| +++ b/ui/views/view.cc
|
| @@ -217,8 +217,9 @@ void View::AddChildViewAt(View* view, int index) {
|
|
|
| // If |view| has a parent, remove it from its parent.
|
| View* parent = view->parent_;
|
| - const ui::NativeTheme* old_theme = view->GetNativeTheme();
|
| + ui::NativeTheme* old_theme = NULL;
|
| if (parent) {
|
| + old_theme = view->GetNativeTheme();
|
| if (parent == this) {
|
| ReorderChildView(view, index);
|
| return;
|
| @@ -233,6 +234,13 @@ void View::AddChildViewAt(View* view, int index) {
|
| view->parent_ = this;
|
| children_.insert(children_.begin() + index, view);
|
|
|
| + views::Widget* widget = GetWidget();
|
| + if (widget) {
|
| + const ui::NativeTheme* new_theme = view->GetNativeTheme();
|
| + if (new_theme != old_theme)
|
| + view->PropagateNativeThemeChanged(new_theme);
|
| + }
|
| +
|
| ViewHierarchyChangedDetails details(true, this, view, parent);
|
|
|
| for (View* v = this; v; v = v->parent_)
|
| @@ -240,12 +248,8 @@ void View::AddChildViewAt(View* view, int index) {
|
|
|
| view->PropagateAddNotifications(details);
|
| UpdateTooltip();
|
| - views::Widget* widget = GetWidget();
|
| if (widget) {
|
| RegisterChildrenForVisibleBoundsNotification(view);
|
| - const ui::NativeTheme* new_theme = widget->GetNativeTheme();
|
| - if (new_theme != old_theme)
|
| - view->PropagateNativeThemeChanged(new_theme);
|
| if (view->visible())
|
| view->SchedulePaint();
|
| }
|
|
|