├── .github └── workflows │ ├── documentation.yml │ └── test.yml ├── .gitignore ├── LICENSE ├── Package.swift ├── Placement.podspec ├── Placement.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── swiftpm │ │ └── Package.resolved └── xcshareddata │ └── xcschemes │ ├── Placement.xcscheme │ ├── PlacementDemo.xcscheme │ └── PlacementTests.xcscheme ├── README.md └── Sources ├── DemoApp ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json ├── DemoViews │ ├── BottomAttachedDemo.swift │ ├── BottomAttachedLayout.swift │ ├── CenterLayoutDemo.swift │ └── PlacementThatFitsDemo.swift ├── PlacementDemoApp.swift └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── Placement ├── Animatable │ └── AnyAnimatableData.swift ├── LayoutProperties │ ├── PlacementLayoutProperties.swift │ └── PlacementLayoutValueKey.swift ├── LayoutProtocol │ ├── AnyPlacementLayout.swift │ ├── PlacementLayout+DefaultImplementations.swift │ ├── PlacementLayout.swift │ └── PlacementLayoutNative.swift ├── Layouting │ ├── Coordinator.swift │ ├── ExplicitAlignmentModifier.swift │ ├── FrameChangePlacer.swift │ ├── LayoutChildSizingView.swift │ ├── LayoutPlacement.swift │ ├── LayoutSizeModifier.swift │ ├── LayoutSizingView.swift │ ├── Layouter.swift │ ├── PlacementIntrinsicSizeReader.swift │ ├── PlacementKeyboardAvoidingModifier.swift │ ├── PlacementModifier.swift │ └── PlacementShouldAdjustToKeyboard.swift ├── Placement.docc │ └── Placement.md ├── PlacementThatFits │ ├── PlacementThatFits.swift │ ├── PlacementThatFitsChildModifier.swift │ ├── PlacementThatFitsCoordinator.swift │ ├── PlacementThatFitsLayout.swift │ └── PlacementThatFitsVariadicRoot.swift ├── Sizing │ ├── PlacementProposedViewSize.swift │ ├── PlacementViewDimensions.swift │ └── ProposedSize.swift ├── Spacing │ └── PlacementViewSpacing.swift └── Subview │ ├── PlacementLayoutSubview.swift │ └── PlacementLayoutSubviews.swift └── PlacementTests ├── Inspectable ├── LayoutSizeModifier.swift ├── Layouter.swift └── PlacementModifier.swift ├── LayoutSizingTests.swift ├── LayoutValueKey.swift ├── Layouts └── CenterLayout.swift ├── PlacementLayoutNativeTests.swift ├── PlacementLayoutTests.swift ├── PlacementTests.xctestplan └── PositioningTests.swift /.github/workflows/documentation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/.github/workflows/documentation.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/LICENSE -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Package.swift -------------------------------------------------------------------------------- /Placement.podspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.podspec -------------------------------------------------------------------------------- /Placement.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Placement.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Placement.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Placement.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /Placement.xcodeproj/xcshareddata/xcschemes/Placement.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/xcshareddata/xcschemes/Placement.xcscheme -------------------------------------------------------------------------------- /Placement.xcodeproj/xcshareddata/xcschemes/PlacementDemo.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/xcshareddata/xcschemes/PlacementDemo.xcscheme -------------------------------------------------------------------------------- /Placement.xcodeproj/xcshareddata/xcschemes/PlacementTests.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Placement.xcodeproj/xcshareddata/xcschemes/PlacementTests.xcscheme -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/README.md -------------------------------------------------------------------------------- /Sources/DemoApp/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Sources/DemoApp/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Sources/DemoApp/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Sources/DemoApp/DemoViews/BottomAttachedDemo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/DemoViews/BottomAttachedDemo.swift -------------------------------------------------------------------------------- /Sources/DemoApp/DemoViews/BottomAttachedLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/DemoViews/BottomAttachedLayout.swift -------------------------------------------------------------------------------- /Sources/DemoApp/DemoViews/CenterLayoutDemo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/DemoViews/CenterLayoutDemo.swift -------------------------------------------------------------------------------- /Sources/DemoApp/DemoViews/PlacementThatFitsDemo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/DemoViews/PlacementThatFitsDemo.swift -------------------------------------------------------------------------------- /Sources/DemoApp/PlacementDemoApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/PlacementDemoApp.swift -------------------------------------------------------------------------------- /Sources/DemoApp/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/DemoApp/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Sources/Placement/Animatable/AnyAnimatableData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Animatable/AnyAnimatableData.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProperties/PlacementLayoutProperties.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProperties/PlacementLayoutProperties.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProperties/PlacementLayoutValueKey.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProperties/PlacementLayoutValueKey.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProtocol/AnyPlacementLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProtocol/AnyPlacementLayout.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProtocol/PlacementLayout+DefaultImplementations.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProtocol/PlacementLayout+DefaultImplementations.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProtocol/PlacementLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProtocol/PlacementLayout.swift -------------------------------------------------------------------------------- /Sources/Placement/LayoutProtocol/PlacementLayoutNative.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/LayoutProtocol/PlacementLayoutNative.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/Coordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/Coordinator.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/ExplicitAlignmentModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/ExplicitAlignmentModifier.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/FrameChangePlacer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/FrameChangePlacer.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/LayoutChildSizingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/LayoutChildSizingView.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/LayoutPlacement.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/LayoutPlacement.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/LayoutSizeModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/LayoutSizeModifier.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/LayoutSizingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/LayoutSizingView.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/Layouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/Layouter.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/PlacementIntrinsicSizeReader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/PlacementIntrinsicSizeReader.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/PlacementKeyboardAvoidingModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/PlacementKeyboardAvoidingModifier.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/PlacementModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/PlacementModifier.swift -------------------------------------------------------------------------------- /Sources/Placement/Layouting/PlacementShouldAdjustToKeyboard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Layouting/PlacementShouldAdjustToKeyboard.swift -------------------------------------------------------------------------------- /Sources/Placement/Placement.docc/Placement.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Placement.docc/Placement.md -------------------------------------------------------------------------------- /Sources/Placement/PlacementThatFits/PlacementThatFits.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/PlacementThatFits/PlacementThatFits.swift -------------------------------------------------------------------------------- /Sources/Placement/PlacementThatFits/PlacementThatFitsChildModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/PlacementThatFits/PlacementThatFitsChildModifier.swift -------------------------------------------------------------------------------- /Sources/Placement/PlacementThatFits/PlacementThatFitsCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/PlacementThatFits/PlacementThatFitsCoordinator.swift -------------------------------------------------------------------------------- /Sources/Placement/PlacementThatFits/PlacementThatFitsLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/PlacementThatFits/PlacementThatFitsLayout.swift -------------------------------------------------------------------------------- /Sources/Placement/PlacementThatFits/PlacementThatFitsVariadicRoot.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/PlacementThatFits/PlacementThatFitsVariadicRoot.swift -------------------------------------------------------------------------------- /Sources/Placement/Sizing/PlacementProposedViewSize.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Sizing/PlacementProposedViewSize.swift -------------------------------------------------------------------------------- /Sources/Placement/Sizing/PlacementViewDimensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Sizing/PlacementViewDimensions.swift -------------------------------------------------------------------------------- /Sources/Placement/Sizing/ProposedSize.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Sizing/ProposedSize.swift -------------------------------------------------------------------------------- /Sources/Placement/Spacing/PlacementViewSpacing.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Spacing/PlacementViewSpacing.swift -------------------------------------------------------------------------------- /Sources/Placement/Subview/PlacementLayoutSubview.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Subview/PlacementLayoutSubview.swift -------------------------------------------------------------------------------- /Sources/Placement/Subview/PlacementLayoutSubviews.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/Placement/Subview/PlacementLayoutSubviews.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/Inspectable/LayoutSizeModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/Inspectable/LayoutSizeModifier.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/Inspectable/Layouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/Inspectable/Layouter.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/Inspectable/PlacementModifier.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/Inspectable/PlacementModifier.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/LayoutSizingTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/LayoutSizingTests.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/LayoutValueKey.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/LayoutValueKey.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/Layouts/CenterLayout.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/Layouts/CenterLayout.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/PlacementLayoutNativeTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/PlacementLayoutNativeTests.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/PlacementLayoutTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/PlacementLayoutTests.swift -------------------------------------------------------------------------------- /Sources/PlacementTests/PlacementTests.xctestplan: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/PlacementTests.xctestplan -------------------------------------------------------------------------------- /Sources/PlacementTests/PositioningTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sampettersson/Placement/HEAD/Sources/PlacementTests/PositioningTests.swift --------------------------------------------------------------------------------