120 Commits

Author SHA1 Message Date
ianegordon
49de50edae Consolidate installation requirements in the main README (#2809) 2018-01-05 13:50:38 -05:00
Yarden Eitan
6df22d2cd6
Update MaterialComponents podspec to separate extensions from component. Breaking change, please see description when sending out a new release (#2748)
* [Catalog] Update catalog readme to reflect podspec filename change

* upate podspec

* update spec to extension

* more specific dependency

* added documentation
2018-01-02 16:51:58 -05:00
Yarden Eitan
29d760c7d6
Added isPresentable to catalog files, ported over ZShadow to dragons. (#2726) 2017-12-15 12:20:35 -05:00
Robert Moore
d65707ad23
[PageControl] Add BUILD file (#2652) 2017-12-07 16:20:35 -05:00
Randall Li
b1ec22207f
Fixed float conversion build errors (#2602)
* Fixed float conversion build errors
Implicit conversion loses floating-point precision: 'double' to 'CGFloat' (aka 'float')

Found by turning on warnings via: https://github.com/material-components/material-components-ios/pull/2480

* More Fixed float conversion build errors
Implicit conversion loses floating-point precision: 'double' to 'CGFloat' (aka 'float')

Found by turning on warnings via: https://github.com/material-components/material-components-ios/pull/2480
2017-12-06 15:57:04 -05:00
Junius Gunaratne
7dc9470943 [Themers] Add nullability to themers (#2551)
* Add nullability to themers

* Wrap optional
2017-12-01 17:31:41 -05:00
Randall Li
2f29f00d86 Fixed some compiler warnings (#2426)
* Added warnings to examples.

* fixed some warnings

* using button sender parameter.

* use button sender in example

* use button sender in example

* removed sender from methods that don’t use it.

* removed sender from methods that don’t use it.

* use button sender in example

* use button sender in example

* use button sender in example

* use button sender in example

* Fixed init of header configurator to use passed in parameter

* removed unused API

* use button sender in example

* Revert "Added warnings to examples."

This reverts commit 91f0480f86cb609c47b00f1346f82de67c31c4e9.

* fixed example: Using the view controllers navigationItem rather than creating a new one.

* removed finished checks from animation blocks in examples.

* reverted id sender checks

* revert id sender check for Flexible header UINavigationBar

* revert clug

* revert clug

* addressing nits

* removed sender check for FeatureHighlightTypicalUseView

* more nits
2017-11-22 10:51:55 -05:00
Yurii Samsoniuk
2a96682230 Replace unnecessary imports with forward declarations (#2429)
* [Themes] Remove unnecessary imports.

* [TextFields] Remove unnecessary imports.

* [Typography] Do not use an umbrella header inside of a component.

* [Snackbar] Do not use self umbrella header.

* [ActivityIndicator] Do not use self umbrella header.

* [AppBar] Use umbrella headers.

* [AppBar] Remove self import header.

* [ButtonBar] Removed self umbrella header imports.

* [Buttons] Removed self umbrella header imports.

* [Collections] Update imports.

* [Dialogs] Moved import into an m file.

* [Collections] Fixed imports.

* [FeatureHighlight] Removed self umbrealla imports.

* [HeaderStackView] Reordered imports.

* [Ink] Replaced imports with forward declarations.

* [Slider] Replaced self umbrella import use.

* [Snackbar] Removed self umbrella header import.

* [Tabs] Changed math import. Replaced self umbrella header import.

* [Icons] Removed unnecessary imports.

* [Overlay] Replaced umbrella header import.

* [ShapeLibrary] Replace Shapes imports with an umbrella header.

* [Shapes] Replaced imports with forward declarations.

* [AppBar] Replace import with a forward declaration.

* [Examples] Updated imports.

* Fixed conflicting imports

* Added space between different import categories
2017-11-16 18:25:06 -05:00
Will Larche
d9e0811a81 [Themer] Updating the protocol generic syntax. (#2440) 2017-11-16 07:59:18 -05:00
Randall Li
e63e9ad595 [PageControl] Corrected comment that references file name of the strings file. (#2394) 2017-11-10 23:06:50 +01:00
Yurii Samsoniuk
342b19a67b [PageControl] Removed unused ColorFromRGB function (#2365) 2017-11-08 07:49:17 -05:00
Martin Petrov
f98a9d42ed @objc annoaing catalog by convention (#2305) 2017-10-30 10:24:17 -04:00
ianegordon
2ed1139d69 [PageControl] safeArea fixes (#2301)
* PageControl safeArea fixes

* Indentation Pass
2017-10-29 15:41:32 -04:00
Martin Petrov
3762aecee3 use modern selectors (#2207) 2017-10-17 10:29:14 -04:00
Moshe Kolodny
ab6aae7158 [PageControl] Fix bug with OOB array lookup when calling scrollViewDidScroll. (#2197)
* [PageControl] Fix bug with out of bounds array lookup when calling scrollViewDidScroll with zero numberOfPages.

* Address PR comments.
2017-10-17 00:19:42 -04:00
Julien Poumailloux
f7bcc9a7ac [PageControl] Fixed crasher when resetting -numberOfPages to 0 (#2132)
* Fixed MDCPageControl crasher when resetting -numberOfPages to 0. This is supported by UIPageControl.

Crasher details:
Test Case '-[PageControlExampleTests testResetNumberOfPagesToZero]' started.
~/material-components-ios/components/PageControl/tests/unit/PageControlExampleTests.m:139: error: -[PageControlExampleTests testResetNumberOfPagesToZero] : failed: caught "NSRangeException", "*** -[__NSArrayM objectAtIndexedSubscript:]: index 0 beyond bounds for empty array"
(
	0   CoreFoundation                      0x000000010e3ed03b __exceptionPreprocess + 171
	1   libobjc.A.dylib                     0x000000010da81f41 objc_exception_throw + 48
	2   CoreFoundation                      0x000000010e42ce2c _CFThrowFormattedException + 194
	3   CoreFoundation                      0x000000010e41e714 -[__NSArrayM objectAtIndexedSubscript:] + 148
	4   MaterialComponents                  0x0000000128271441 -[MDCPageControl resetControl] + 2193
	5   MaterialComponents                  0x000000012826e489 -[MDCPageControl setNumberOfPages:] + 281

* Also fixed crasher when the client sets a value for -currentPage (e.g. zero) when -numberOfPages is zero.

* Improved the unit test to hit the 2nd crasher prior to the fix

* Cleaner unit test for the crashers per review feedback
2017-10-09 17:04:12 -04:00
Moshe Kolodny
c5988c9e0b [PageControl] Fix bad indicator state when changing numberOfPages. (#1997)
* [PageControl] Fix changing numberOfPages.

* [PageControl] address PR comments.
2017-09-19 14:15:07 -04:00
Moshe Kolodny
9b0a1dbc3c [PageControl] Switch NSMutableArray to Swift Array. (#1998)
Switch NSMutableArray to Swift Array.
2017-09-19 23:08:13 +09:00
Cody Weaver
397a993ca2 [PageControl] Update swift example (#1979)
* Fix colors to be consistent and make page numbers more Swift.

* Update to use MDCPalette
2017-09-18 10:39:19 -04:00
Cody Weaver
f2e89e73b8 Updated sizeForNumberOfPages to class method (#1960) 2017-09-11 10:28:32 -04:00
Robert Moore
7f4c4e18c5 [Bundles] Use explicit class in bundleForClass (#1942)
Using `[self class]` when loading a bundle can result in missed resources when
a method is called from a subclass.  To prevent these errors, components should
be explicit about which class is being used to load bundles.

References #1941 (Components)
2017-09-05 14:17:54 -04:00
Robert Moore
8940d77d6d [Catalog] Verify all examples provide CatalogByConvention methods (#1911)
All examples now have at least the required `+catalogBreadcrumbs` and `+catalogIsPrimaryDemo`.  All examples in the same breadcrumbs path have only one primary demo.  There should be only one `-catalogDescription` attached to the primary demo.

Closes #1897
2017-08-31 08:46:10 -04:00
Robert Moore
5498005f65 [Catalog] Enabling all "unused" warnings (#1875)
Re-enabling warnings for unused parameters. Turning on every other
unused warning I could find.

Closes #1874
2017-08-29 17:57:41 -04:00
Adrian Secord
5bc8758de5 Porting warning fixes from internal change 166066139. 2017-08-22 17:29:23 -04:00
Adrian Secord
18906c0e1e Remove internal references. (#1648)
* Removed old refs to API docs.

* Revert "Removed old refs to API docs."

This reverts commit bac441984e9c3b7e559a3e13fe1ad1675bf16c29.

* Remove internal references.

* Update MaterialPageControlStrings_table.h
2017-07-14 10:47:50 -04:00
Robert Moore
fa10d655d7 Remove uses of typeof and the ?: operator (#1601)
Make the code base more portable by replacing some GNU extension code
with C99-compatible versions.

* Replace shortcut ?: operator with explicit middle (true) terms
* Remove pointer inequality checks in conditionals
* (Cleanup) Change to #include for <tgmath.h> based on style guide

Closes #846
2017-07-11 17:39:45 -04:00
Martin Petrov
1e14d41091 Explicitly annotating some known ObjC methods. (#1617)
This improves Swift4 compatibility, see:
https://help.apple.com/xcode/mac/current/#/deve838b19a1
2017-07-10 19:46:22 -04:00
Adrian Secord
4dba0dfff8 Add -Wstrict-prototypes and fix errors. (#1532) 2017-06-19 17:33:37 -04:00
Randall Li
266a716f60 Fix imports to use umbrella imports (#1529)
* [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
2017-06-19 15:57:48 -04:00
Junius Gunaratne
71d441a065 Component themers and usage example for catalog (#1443)
Adding color scheme component themers.
2017-05-30 17:28:03 -04:00
Scott Hyndman
eed028eacb [Docs] Adds API documentation roots and tidies up here and there. (#1425)
* [Docs] Marks component files as API documentation roots.

Used by the site generator to determine where to build API docs. I
marked everything built by the previous version.

* [Docs] Adds a prefix to all Material guidelines links.

* [Docs] Adds API doc links to some components.
2017-05-12 16:03:56 -04:00
Scott Hyndman
1571a1b9ee [Docs] Nests components in the navigation as spec'd. (#1404)
Also took the opportunity to remove an unneeded liquid style
application.
2017-05-09 11:49:44 -04:00
Scott Hyndman
1bec0a903a [Docs] Misc. cleanup (#1403)
* [Docs] Changes an icon list class name.

* [Docs] Adds annotations to all installation code snippets.

* [Docs] Fixes screenshot sizes in PageControl README.

* [Docs] Fixes a broken link on the homepage.

* [Docs] Adds a stable repository branch field to the site metadata.

Used to link to the GitHub source tree.

* [Docs] Specify platform in docs root title.
2017-05-08 18:05:05 -04:00
Randall Li
d7cf7999ed [Buttons, Page Control, Typography] Removed video demos (#1387)
* removed link to videos

* deleted videos
2017-05-05 16:58:17 -04:00
Randall Li
d48a3dae3e [Buttons, Page Control, Typography] Fixed screenshots (#1380)
* Fixed screenshots

* fixed readme.md files for 375 width images instead of 320
2017-05-05 16:37:19 -04:00
Alastair Tse
4a46c8c19e Monochromatic sweep of all catalog components (#1370)
* Replace MDC all icons

* Update border

* Replace MDCActionExtension icon with new logo

* Update all headers to be white on black

* Make Catalog greyscale to match Material’s style.

* Fix collection tile

* Update all headers to be white on black

* Make Catalog greyscale to match Material’s style.

* Fix collection tile

* WIP: Updating TabBar example to use black/green theme.

* WIP: Monochoroming all examples.

* Switch MDC Catalog to a black and white theme (#1355)

* Replace MDC all icons

* Update border

* Replace MDCActionExtension icon with new logo

* Update all headers to be white on black

* Make Catalog greyscale to match Material’s style.

* Fix collection tile

* Update all headers to be white on black

* Make Catalog greyscale to match Material’s style.

* Fix collection tile

* Fix floats

* Make Catalog greyscale to match Material’s style.

* More black and whiting

* WIP: Snackbar and global style

* Simplify snack bar examples.

* Page control
2017-05-05 16:16:47 -04:00
Scott Hyndman
4a011e75a5 [Docs] Docstravaganza (#1330)
* [Docs] Adds platform configuration for the doc site.

* [Docs] Adds path metadata for documentation site.

This field is used to determine where the file will appear in the
doc site.

* [Docs] Updates Material guideline links to latest URL.

material.google.com -> material.io/guidelines

* [Docs] Introduces a separate component index for the docsite.

* [Docs] Changes the directory used for site generation.

* [Docs] Moves documentation-site-only Markdown into its own directory.

* [Docs] Changes material.io links to use https.

* [Docs] Renames the howto and contributing docsite sections to docs.

* [Docs] Adds a navTitle field to the collection editing/styling pages.

* [Docs] Changes the FAQ heading to be one size bigger.

* [Docs] Changes the tutorial title.

* [Docs] Adds icons to three more components.

* [Docs] Introduces a root component directory called /catalog/.

* [Docs] Adds an icon to the AnimationTiming component.

* [Docs] Adds an icon for the typography component.

* [Docs] Reformats the docsite index.
2017-05-01 17:27:38 -04:00
Will Larche
3f99ed2dd9 [All] replacing ~~~ with ```. (#1324) 2017-04-17 17:06:37 -04:00
Scott Hyndman
69533578ca [docs] Associated icons with components (#1315)
* Adds icon IDs to most component READMEs.

The ones without icon IDs will default to a generic icon.

* Removes a space from front matter.
2017-04-12 18:22:08 -04:00
Scott Hyndman
9ed1d4349d Gigantic documentation update. (#1305)
There are more changes to come, but it's time we merged back.

Changes:
* Re-introduces the doc site scripts and files that had been deleted previously.
* Updates contributing docs to reflect doc structure changes.
* Applies common header structure across all component documentation.
* Fixes a bunch of liquid syntax bugs.
* Inlines Front Matter metadata in README.md files as HTML comments. Any file prefixed with

  <!--docs:
  ...yaml
  -->

  Will be converted into Front Matter when generating the site.
* .jekyll_prefix files, which previously stored the data, have been removed.
2017-04-05 10:53:34 -04:00
Adrian Secord
8bcb19781c More SwiftLint fixes for unit tests and example apps. (#1154)
* ClangFormat changes.

* Added swiftlint to scripts/format_all.`

* Fix scripts/lint_all to work from any directory.

* Fixed swiftlint invocation.

* Remove the checks for force casting (! operator).

* Some fixes.

* More Swift fixes.
2017-01-11 13:27:57 -05:00
Sam Symons
bb561ac257 [Scripts] SwiftLint integration (#1129)
* Integrate SwiftLint in the Catalog.

* Update the disabled SwiftLint rules.

* Reference a local swiftlint.yml symlink.

This prevents us from getting warnings about code style violations from the other demos.

* Fix SwiftLint violations in the Catalog and Components.

* Ignore the `third_party` directory when running the linter.

We should not have to deal with warnings in code we may not be able to fix easily.

* Integrate SwiftLint into Shrine.

Additionally, fix a number of warnings introduced.

* Run SwiftLint on Travis.

* Enable many of the previously disabled rules and correct them.

* Fix control statement violations from SwiftLint.
2017-01-06 16:37:23 -05:00
Justin Shephard
7a19483569 [ReadMes] - First image of each component is too big (#1110)
* MDC_#917 - Activity Indicator Readme Update

* MDC_#917 - Updated remaining readme image links

* MDC_#917 - Fixed typo
2016-12-27 14:16:55 -05:00
Adrian Secord
e8c45d5394 Removed old refs to API docs. (#1084)
* Removed old refs to API docs.

* Removed outdated refs to API docs.
2016-12-15 15:35:13 -05:00
Will Larche
3c4e905598 [Readmes] Snippets in Swift 3 (#1039)
* [ActivityIndicator] Snippets in Swift 3

* [AnimationTiming] Snippets in Swift 3.

* [AppBar] Snippets in Swift 3 and corrections to snippets.

* [ButtonBar] Snippets in Swift 3 and corrections to snippets.

* [ButtonBar] Removing TODO.

* [Buttons] Snippets in Swift 3.

* [Collections] Snippets in Swift 3 and snippet corrections.

* [CollectionLayoutAttributes] Snippets in Swift 3.

* [Dialogs] Snippets in Swift 3 and snippets corrections.

* [FeatureHighlight] Snippets in Swift 3 and snippets corrections.

* [FeatureHighlight] Missing import specification.

* [FlexibleHeader] Snippets in Swift 3 and snippet corrections.

* [Dialogs] Corrections to snippets.

* [HeaderStackView] Adding import specifier.

* [Ink] Snippets in Swift 3 and snippets corrections.

* [NavigationBar] Snippets in Swift 3.

* [NavigationBar] Removing TODO.

* [OverlayWindow] Snippets in Swift 3 and snippets corrections.

* [PageControl] Snippets in Swift 3 and snippet corrections.

* [OverlayWindow] Snippets in Swift 3 and snippet corrections.

* [Palettes] Snippets in Swift 3 and snippet corrections..

* [ProgressView] Snippets in Swift 3 and snippet corrections.

* [Readmes] Snippet alignment corrections.
2016-12-13 17:17:57 -05:00
Adrian Secord
e93a16ca02 Capitalize "Material" in documentation (#1014)
* s/material design/Material Design/g

* s/material components/Material Components/g

* s/material\([ \t\n]\)/Material\1/g

* s/aterial design/aterial Design/g
2016-12-13 08:06:55 -05:00
Adrian Secord
4842a362f5 Convert component examples to Swift 3 (#1002)
* WIP

* WIP

* Simplified build script and fixed it to build all schemes.

* WIP

* Renamed script to build_all and added better output.

* Add scripts/list_xcode_workspaces.

* Filtered out the CocoaPods schemes.

* Use Xcode to update Swift to v3.

* Updated tracked touches map from NSNumber to Int.

* Fixed button sorting that was not actually sorting.

* targetContentOffset no longer allowed to be nil.

* "Fixed" failing test by reducing random number range?

* Swift 3 syntax change.

* Swift 3 syntax change.

* Removed invalid center-aligning tests.

Fixed default nav bar alignment test.
2016-12-12 09:55:36 -05:00
Will Larche
1080e89422 [Documentation] Putting Swift snippets before Objc (#960)
* [ActivityIndicator] Swift first in README

* [AnimationTiming] Swift first in readme.

* [AppBar] Swift first in readme.

* [ButtonBar] Swift first in readme.

* [Buttons] Swift first in readme.

* [CollectionLayoutAttributes] Swift first in readme

* [Collections] Swift first in readme.

* [Dialogs] Swift first in readme.

* [FeatureHighlight] Swift first in readme.

* [FlexibleHeader] Swift first in readme.

* [FontDiskLoader] Swift first in readme.

* [HeaderStackView] Swift first in readme.

* [Ink] Swift first in readme.

* [NavigationBar] Swift first in readme.

* [OverlayWindow] Adding missing site comments. Swift first in readme.

* [PageControl] Swift first in readme.

* [Palettes] Swift first in readme.

* [ProgressView] Swift first in readme.

* [RobotoFontLoader] Swift first in readme.

* [ShadowElevations] Swift first in readme.

* [ShadowLayer] Swift first in readme.

* [Slider] Swift first in readme.

* [Snackbar] Swift first in readme.

* [SpritedAnimationView] Swift first in readme.

* [Switch] Swift first in readme.

* [Typography] Swift first in readme.

* [ShadowLayer] Reducing font size in readme.

* [Switch] Reducing font size in readme.
2016-12-07 10:31:34 -05:00
Randall Li
ce0fc0ac60 [PageControl] Fixed NS_DESIGNATED_INITIALIZER usage in private classes. (#932) 2016-12-02 14:24:59 -05:00
Randall Li
ed311e7859 [PageControl] Fixed swift import to be more specific (#921) 2016-12-02 08:12:20 -05:00