| Index: views/controls/table/table_view.cc
|
| diff --git a/views/controls/table/table_view.cc b/views/controls/table/table_view.cc
|
| index 8b86a6ef38cf6e8d969fb91f39b48bf1e5920a4d..7ab4c9118877c9d626d7c6e893c32686a7681e0f 100644
|
| --- a/views/controls/table/table_view.cc
|
| +++ b/views/controls/table/table_view.cc
|
| @@ -64,7 +64,6 @@ TableView::TableView(TableModel* model,
|
| single_selection_(single_selection),
|
| ignore_listview_change_(false),
|
| custom_colors_enabled_(false),
|
| - sized_columns_(false),
|
| autosize_columns_(autosize_columns),
|
| resizable_columns_(resizable_columns),
|
| list_view_(NULL),
|
| @@ -133,10 +132,8 @@ void TableView::DidChangeBounds(const gfx::Rect& previous,
|
| return;
|
| SendMessage(list_view_, WM_SETREDRAW, static_cast<WPARAM>(FALSE), 0);
|
| Layout();
|
| - if ((!sized_columns_ || autosize_columns_) && width() > 0) {
|
| - sized_columns_ = true;
|
| + if (autosize_columns_ && width() > 0)
|
| ResetColumnSizes();
|
| - }
|
| UpdateContentOffset();
|
| SendMessage(list_view_, WM_SETREDRAW, static_cast<WPARAM>(TRUE), 0);
|
| }
|
| @@ -1551,6 +1548,15 @@ gfx::Font TableView::GetAltTextFont() {
|
| return ResourceBundle::GetSharedInstance().GetFont(ResourceBundle::BaseFont);
|
| }
|
|
|
| +void TableView::VisibilityChanged(View* starting_from, bool is_visible) {
|
| + // GetClientRect as used by ResetColumnSize to obtain the total width
|
| + // available to the columns only works when the native control is visible, so
|
| + // update the column sizes in case we become visible. This depends on
|
| + // VisibilityChanged() being called in post order on the view tree.
|
| + if (is_visible && autosize_columns_)
|
| + ResetColumnSizes();
|
| +}
|
| +
|
|
|
| //
|
| // TableSelectionIterator
|
|
|