(allItems []LayoutItem)
| 767 | } |
| 768 | |
| 769 | func itemsToLayout(allItems []LayoutItem) []LayoutItem { |
| 770 | filteredItems := make([]LayoutItem, 0, len(allItems)) |
| 771 | |
| 772 | for i := 0; i < cap(filteredItems); i++ { |
| 773 | item := allItems[i] |
| 774 | |
| 775 | if !shouldLayoutItem(item) { |
| 776 | continue |
| 777 | } |
| 778 | |
| 779 | var idealSize Size |
| 780 | if hfw, ok := item.(HeightForWidther); !ok || !hfw.HasHeightForWidth() { |
| 781 | if is, ok := item.(IdealSizer); ok { |
| 782 | idealSize = is.IdealSize() |
| 783 | } |
| 784 | } |
| 785 | if idealSize.Width == 0 && idealSize.Height == 0 && item.LayoutFlags() == 0 { |
| 786 | continue |
| 787 | } |
| 788 | |
| 789 | filteredItems = append(filteredItems, item) |
| 790 | } |
| 791 | |
| 792 | return filteredItems |
| 793 | } |
| 794 | |
| 795 | func anyVisibleItemInHierarchy(item LayoutItem) bool { |
| 796 | if item == nil || !item.Visible() { |
no test coverage detected
searching dependent graphs…