Removes the need to copy-paste stanzas from other files anymore as we'll rely on #4478 to generate the correct stanza for us instead.
This was an automated change generated by running a find-and-replace regular expression:
```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at
http://www\.apache\.org/licenses/LICENSE-2\.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
See the License for the specific language governing permissions and
limitations under the License\.
\*/
```
```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at
http://www\.apache\.org/licenses/LICENSE-2\.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
See the License for the specific language governing permissions and
limitations under the License\.
\*/
```
```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at
http://www\.apache\.org/licenses/LICENSE-2\.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
See the License for the specific language governing permissions and
limitations under the License\.
\*/
```
```
// Copyright $1-present the Material Components for iOS authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
```
Removes the need to copy-paste stanzas from other files anymore as we'll rely on https://github.com/material-components/material-components-ios/pull/4478 to generate the correct stanza for us instead.
This was an automated change generated by running a find-and-replace regular expression:
### Find
```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at
http://www\.apache\.org/licenses/LICENSE-2\.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
See the License for the specific language governing permissions and
limitations under the License\.
\*/
```
```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at
http://www\.apache\.org/licenses/LICENSE-2\.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.
See the License for the specific language governing permissions and
limitations under the License\.
\*/
```
### Replace
```
// Copyright $1-present the Material Components for iOS authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
```
This change further formalizes our pattern of annotating APIs that will be or are deprecated using class categories. Moving an API into such a category has the benefit of being picked up by the API diff toolchain and elevated into our release notes as a result.
We do not intend to actively support UIAppearance any further. This change removes any references to supporting UIAppearance from our public documentation.
Pivotal story: https://www.pivotaltracker.com/story/show/157048342
Many of our color themers are accessing optional properties without
first verifying that the color scheme responds to the selector. This
can result in crashes. Instead, each optional property should be checked
for safety before being used.
* [Ink] New bounded ink should ignore maxRippleRadius property
For the new Ink, when the view uses `.bounded` for `inkStyle`, it should
ignore the `maxRippleRadius` property. No changes should be made to legacy Ink
since we're migrating away from it and we don't want to make unnecessary
changes to existing clients.
Closes#329
* [Cards] New API Header files (#2886)
* header files
* rename to MDCCardCollectionCell
* update for review
* update to review
* update to review
* [Cards] Full Implementation (#2892)
* cards core implementation
* updates to API and fixes from doc
* small fixes
* podspec, examples, and tests
* small fixes
* small fix
* small fix
* update inkView API and some small nits
* refactor API and code
* refactor API and code
* remove private header
* rename to MDCCardCollectionCell
* updates to api review
* update based on reviews
* fix tests
* [Cards] Initial Docs
* updates to encoding
* small fix
* pr update
* pr update
* pr update
* pr update
* pr update
* pr update
* pr update
* ink api update
* ink api update
When a CALayer has a speed other than 1.0 (or other manipulations to its local
time coordinate space), animations need to convert beginTime values into this
time space. For a beginOffset of zero, the layer automatically sets the
beginTime to the current active time of the layer. For non-zero values
(delayed animations), the conversion has to be performed by the caller.
This article has a pretty good explanation:
https://coveller.com/2016/05/core_animation_timing/
Closes internal issue b/72403469
Both MDCInkLayer (and MDCLegacyInkLayer) and MDCInkView should support
NSCoding methods since their superclasses conform to an NSCoding (or
NSSecureCoding) protocol.
Closes#2772
* Enable updated ink on MDCButton, add support for shadowPaths
* Only change frame inset when legacy ink is used
* Update formatting
* Create mask layer once
* Update animation and opacity based on designer feedback
* Turn off legacy ripple
* Add delegates to respond to bounds change when animating
* Add mask layer delegate
* Remove commented animations
* Move constants
* Update animation delegate
* Enable updated ink on MDCButton, add support for shadowPaths
* Only change frame inset when legacy ink is used
* Update formatting
* Create mask layer once
* Update animation and opacity based on designer feedback
* Remove commented animations
* Move constants
* Add updated ink flag
* Add completion block delegate methods
* Rename existing ink to legacy ink
* Update example with legacy ink as second ink view
* Update comment formatting
* Update formatting
* Update ink unit tests
* Update ink unit tests
* Import UIKit for UIColor support
* Add dependency to Material Math
* Add Material Math dependency
* Use CABasicAnimations where possible
* Add support for maxRippleRadius
* Minor refactoring for timing functions
* Remove unused mark
* Add ink description to comments
* Minor formatting fix
* Nullability updates and clarification comments
* Remove email in comments.
* Add nullability
* Add nullability
* Use year when file was created
* Add float
* Update constant names
* Update formatting
* Update year for legal reasons
* Clarify comment about use of usesCustomInkCenter
* Update cancelAllAnimationsAnimated to stop all active ink ripples
* Remove use of ink layers array and access sublayers directly
* Check layer class in cancelAllAnimationsAnimated
* Use bounds rather than frame in layoutSubviews
* Setting radii in setNeedsLayout
Fix an ink view bug. When its maxRippleRadius is changed, it needs to call -setNeedsLayout so its ink layer could call -layoutSublayers that re-calculates the ripple frame.
From internal change 169289257
`_compositeRipple.frame` was being assigned InkLayer's frame before
being assigned a second rectangle based on InkLayer's bounds. This can
cause the InkLayer compute its frame within its parent layer/view and is
inefficient.
Closes#1685
* [Buttons] Reset Ink when moved to new superview
MDCButton will now reset all Ink effects after it is removed from its
superview. This prevents retaining Ripple objects indefinitely if the
button is moved between superviews while a touch is held down.
Closes#1655
Resetting the ink without animation will now call the `animationDelegate`
property to ensure that MDCInkLayer can clean-up its internal state and
remove the ripple objects from its internal arrays.
Closes#1653
When the MDCInkLayer resets ink, it will now pass the `animated` parameter to the ripple sublayers. This fixes a bug where resetting the ink without animation would cause animations to be executed.
Closes#1651
* [ColorThemes] Use umbrella header instead of MDCColorScheme
* [Application] Use umbrella header instead of class header
* [Button] use umbrella header in private header
* [Typography] use umbrella header in private header
* icons using umbrella header in individual icon class
* [Icons] added header to umbrella header
* [collection] umbrella header instead of class header in test
* [Collections] use umbrella header in private header
* [ActivityIndicator] use umbrella header in private header
* [ButtonBar] use umbrella header in private header
* [Dialog] use umbrella header in private header
* [featurehighlight] use umbrella header in private header
* [snackbar] use umbrella header in private header
* [textFields] use umbrella header in private header
* [thumbtrack] use umbrella header in private header
* [Overlay] use umbrella header in private header
also removed spurious ’s’ at end of MaterialOverlay.h file
* [slider] use umbrella header in private header
* [buttonBar] use umbrella header in private header
* [slider] use umbrella header in test
* [Overlay] fixed overlay reference to use umbrella header
* [Collections] - Initial changes
* [Ink] - Updated MDCInkLayer to allow for multiple foreground and background ripples that stay referenced as opposed to one and one.
* [Ink] - Code cleanup, indentions, removed unused properties
* [Ink] - Line character counts
* [Ink] - More code cleanup, renaming, line spacing
* [Ink] - Updated docs
* [Ink] - Renamed methods
* [Ink] - Added state of cancelled for ink to prevent completion block calling
* [Ink] - Moved some api to private, updated completion blocks to incorporate weakSelf/strongSelf
* [Ink] - Removed testing and example code
* [Ink] - Additional demo code removed
* [Ink] - Broke retain cycle in ink
* [Ink] - Prevent over removal of ink layers caused by animation delegate being called on animation end AND removal
* [Ink] - Pulled completion block setting out if not needed
* [Ink] - Updated naming convention
* [Ink] - Addressing comments (possible crash on setting inkView to nil on collection cell, naming)
* [Ink] - Added easy out on setInkView method, styling for property declarations
* [Ink] - Renamed clearAllAnimations method to get in tandem with removeAllAnimations method on super class of CALayer
* [Ink] - Removed dependence on indexing for unedited ripples and rather using array count property
* Specify `nonnull` on the MDCInkTouchController initializer.
This is a quick change since the initializer was never returning nil to begin with.
* Update Shrine to use the nonnull MDCInkTouchController initializer.