-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Introducing DrawerKit #2
Merged
Changes from 80 commits
Commits
Show all changes
85 commits
Select commit
Hold shift + click to select a range
4be3003
Added git ignore file
wltrup b392cca
Added project workspace
wltrup 4895d95
Added tab bar template project
wltrup 632633d
Added DrawerKit empty framework
wltrup 5c186e9
Added basic view controllers and storyboards
wltrup aa0f36f
Fixed broken outlets
wltrup 1e79e2f
Added implementation of DrawerKit. A few bits to complete still.
wltrup 752abad
Hooked up the view controllers to the custom presentation.
wltrup 3c0b91c
Added clamping to the three possible resting positions of the drawer
wltrup 878ca27
Added more configuration to the presenting VC
wltrup 0255cbe
Fixed a few glitches related to allowing partial expansion or not, an…
wltrup 5ff1a8a
Removed the two timing configurations and now using only one for all …
wltrup 8c83b60
Added support for not having the gesture recognisers.
wltrup 55da51d
Fixed a potential division by zero.
wltrup dbcf49e
Adding more configuration controls to presenting VC. WIP.
wltrup 6e98524
Added debug mode.
wltrup dced881
Added some TODOs
wltrup a422b3d
Renamed a function to make it clear it's a debugging feature.
wltrup 3e736d1
Minor refactoring.
wltrup f9ec01e
Renamed some source files for better clarity of intention.
wltrup a0baa3b
Removed source headers.
wltrup 39ca74d
Changed the presented VC to make a larger drawer (easier to play with).
wltrup 69bf74f
Changed some parameters as per Sam's input.
wltrup 88def74
Improved behaviour of corner rounding at the two edges of the screen.…
wltrup c15c77f
Made the logic for the drawer behaviour easier to read, because Serge…
wltrup 4d18a70
Moved some code closer to where it's actually used.
wltrup 21c030e
Minor formatting.
wltrup 04cd82c
Added a fix to the corner-radius animation issue whereby the corner r…
wltrup 1801863
Disabled automatic code signing.
wltrup 2490d08
The heights of the bands surrounding the resting position of the draw…
wltrup b1afd54
Oopsie... committed a compiler error. Fixed now.
wltrup 79261da
Added a scrollview to the presented view controller in the demo app, …
wltrup d8d2271
Added an interaction controller, the first step in fixing the non-int…
wltrup bb5377f
Renamed TransitionAnimator to AnimationController.
wltrup e90bf24
Renamed a file to match the extension it's about.
wltrup 4ecf66c
Duh, it was supposed to be AnimationController, not AnimatorController.
wltrup ac7c5ff
Implemented interactive controller for the presentation and dismissal…
wltrup 6787d07
Added license file and CocoaPods podspec. Not passing lint just yet.
wltrup eebde02
Removed indirect access to configuration parameters.
wltrup d15f081
Removed currently unused source file TransitionGeometry.
wltrup 37c1aad
Fixed company name in the license file.
wltrup 88cf9dc
Cleared the team entry in the demo app.
wltrup 907befc
Demo app: adding controls for all the configurable parameters. WIP.
wltrup 63233cd
Added control for manipulating cubic Bezier control points, CubicBezi…
wltrup 1833625
Added all the controls to the presenter VC.
wltrup bb77e30
Fixed a TODO comment.
wltrup ab99b5e
Make sure that durationInSeconds is a positive value.
wltrup 2ec596d
Removed all references to coversStatusBar since that hasn't been impl…
wltrup 7b2a304
Make sure that flickSpeedThreshold is a non-negative value. Also, if …
wltrup 355d67a
Make sure that upperMarkGap and lowerMarkGap are non-negative values.
wltrup a3f545b
Only add debugging mark lines if at least one of upperMarkGap and low…
wltrup 7efb133
Make sure that maximumCornerRadius is a non-negative value.
wltrup 01b1974
Only animate the corner radius if maximumCornerRadius is strictly pos…
wltrup 53476c3
Make sure that numberOfTapsForOutsideDrawerDismissal is a non-negativ…
wltrup 3cabcd6
Resolved an issue with animating rounding the presented view corners.
wltrup 412a27e
Simplified the demo app to its bare essentials. No more configuration…
wltrup f52a637
Added based documentation to the library.
wltrup d6734eb
Preliminary version of README. WIP.
wltrup a1ff7d7
Removed unused assets.
wltrup 0dda897
Added some pseudo-code to the README, to explain the presentation/dis…
wltrup 882795b
Code style change.
wltrup d096649
Removed unnecessary [weak self] capture lists.
wltrup f590dc8
Changed default value of durationInSeconds from 0.8 to 0.3 seconds.
wltrup 59fb582
Fixed a botched global search/replace in DrawerConfiguration+Equatable.
wltrup 561b449
Renamed evil local gr variables to less evil names.
wltrup 557798a
Fixed guard statements as per comments.
wltrup c3b09d6
Removed a comment.
wltrup d42f7c7
Removed a protocol extension.
wltrup 60085af
Make sure that the height of the partially expanded drawer is non-neg…
wltrup e4fa1c7
Added documentation to all exposed public entities.
wltrup 6a3e3fd
Style change as per comments.
wltrup 942318c
Fixed documentation.
wltrup eb46380
Updated README file.
wltrup a2883fc
Tweaked the README file.
wltrup 56bc186
Decreased the deployment target requirement, from 10.3 to 10.0.
wltrup 9b4ba38
Removed hidden extension in the LICENSE file.
wltrup ed3decd
Fixed source_files entry in the podspec. Removed the exclude_files en…
wltrup 7fb4034
Added a .swift-version file with the appropriate version of Swift to …
wltrup d9d81f5
Fixed the homepage in the podspec.
wltrup 122463f
Fixed a bug when running under iOS 10 in which the initial presentati…
wltrup f1338bf
Style change.
wltrup 12c5940
Killed the use of IUO references.
wltrup df37082
Changed author email address in the podspec.
wltrup 21e39d4
Added support for Carthage.
wltrup b1a2f1a
[ci skip] Removed a commented out section from the README. Also, an e…
wltrup File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,190 @@ | ||
##### | ||
# OS X temporary files that should never be committed | ||
# | ||
# c.f. http://www.westwind.com/reference/os-x/invisibles.html | ||
|
||
.DS_Store | ||
|
||
# c.f. http://www.westwind.com/reference/os-x/invisibles.html | ||
|
||
.Trashes | ||
|
||
# c.f. http://www.westwind.com/reference/os-x/invisibles.html | ||
|
||
*.swp | ||
|
||
# *.lock - this is used and abused by many editors for many different things. | ||
# For the main ones I use (e.g. Eclipse), it should be excluded | ||
# from source-control, but YMMV | ||
|
||
*.lock | ||
|
||
# | ||
# profile - REMOVED temporarily (on double-checking, this seems incorrect; I can't find it in OS X docs?) | ||
#profile | ||
|
||
|
||
#### | ||
# Xcode temporary files that should never be committed | ||
# | ||
# NB: NIB/XIB files still exist even on Storyboard projects, so we want this... | ||
|
||
*~.nib | ||
|
||
|
||
#### | ||
# Xcode build files - | ||
# | ||
# NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "DerivedData" | ||
|
||
DerivedData/ | ||
|
||
# NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "build" | ||
|
||
build/ | ||
|
||
|
||
##### | ||
# Xcode private settings (window sizes, bookmarks, breakpoints, custom executables, smart groups) | ||
# | ||
# This is complicated: | ||
# | ||
# SOMETIMES you need to put this file in version control. | ||
# Apple designed it poorly - if you use "custom executables", they are | ||
# saved in this file. | ||
# 99% of projects do NOT use those, so they do NOT want to version control this file. | ||
# ..but if you're in the 1%, comment out the line "*.pbxuser" | ||
|
||
# .pbxuser: http://lists.apple.com/archives/xcode-users/2004/Jan/msg00193.html | ||
|
||
*.pbxuser | ||
|
||
# .mode1v3: http://lists.apple.com/archives/xcode-users/2007/Oct/msg00465.html | ||
|
||
*.mode1v3 | ||
|
||
# .mode2v3: http://lists.apple.com/archives/xcode-users/2007/Oct/msg00465.html | ||
|
||
*.mode2v3 | ||
|
||
# .perspectivev3: http://stackoverflow.com/questions/5223297/xcode-projects-what-is-a-perspectivev3-file | ||
|
||
*.perspectivev3 | ||
|
||
# NB: also, whitelist the default ones, some projects need to use these | ||
!default.pbxuser | ||
!default.mode1v3 | ||
!default.mode2v3 | ||
!default.perspectivev3 | ||
|
||
|
||
#### | ||
# Xcode 4 - semi-personal settings | ||
# | ||
# | ||
# OPTION 1: --------------------------------- | ||
# throw away ALL personal settings (including custom schemes! | ||
# - unless they are "shared") | ||
# | ||
# NB: this is exclusive with OPTION 2 below | ||
xcuserdata | ||
|
||
# OPTION 2: --------------------------------- | ||
# get rid of ALL personal settings, but KEEP SOME OF THEM | ||
# - NB: you must manually uncomment the bits you want to keep | ||
# | ||
# NB: this is exclusive with OPTION 1 above | ||
# | ||
#xcuserdata/**/* | ||
|
||
# (requires option 2 above): Personal Schemes | ||
# | ||
#!xcuserdata/**/xcschemes/* | ||
|
||
#### | ||
# XCode 4 workspaces - more detailed | ||
# | ||
# Workspaces are important! They are a core feature of Xcode - don't exclude them :) | ||
# | ||
# Workspace layout is quite spammy. For reference: | ||
# | ||
# /(root)/ | ||
# /(project-name).xcodeproj/ | ||
# project.pbxproj | ||
# /project.xcworkspace/ | ||
# contents.xcworkspacedata | ||
# /xcuserdata/ | ||
# /(your name)/xcuserdatad/ | ||
# UserInterfaceState.xcuserstate | ||
# /xcsshareddata/ | ||
# /xcschemes/ | ||
# (shared scheme name).xcscheme | ||
# /xcuserdata/ | ||
# /(your name)/xcuserdatad/ | ||
# (private scheme).xcscheme | ||
# xcschememanagement.plist | ||
# | ||
# | ||
|
||
#### | ||
# Xcode 4 - Deprecated classes | ||
# | ||
# Allegedly, if you manually "deprecate" your classes, they get moved here. | ||
# | ||
# We're using source-control, so this is a "feature" that we do not want! | ||
|
||
*.moved-aside | ||
|
||
#### | ||
# UNKNOWN: recommended by others, but I can't discover what these files are | ||
# | ||
# ...none. Everything is now explained. | ||
|
||
#### | ||
# | ||
# Pods and Gems | ||
# | ||
/pods | ||
.bundle/ | ||
|
||
# Builds | ||
*.ipa | ||
|
||
# ssl certificates | ||
*.crt | ||
.idea/.name | ||
.idea/babylon-partners.iml | ||
.idea/encodings.xml | ||
.idea/misc.xml | ||
.idea/modules.xml | ||
.idea/runConfigurations/Babylon.xml | ||
.idea/runConfigurations/BabylonAnalysis.xml | ||
.idea/scopes/scope_settings.xml | ||
.idea/vcs.xml | ||
.idea/workspace.xml | ||
.idea/xcode.xml | ||
|
||
Iconr\n | ||
Crashlytics.framework | ||
Crashlytics.framework/ | ||
Crashlytics.* | ||
Crashlytics | ||
Babylon/dist/ | ||
dist.zip | ||
Babylon.xcworkspace | ||
Babylon.xcworkspace/ | ||
Pods/ | ||
Pods | ||
|
||
# Orig files skipped | ||
*.orig | ||
|
||
Carthage/Checkouts/* | ||
backboneLocalizationBuilder | ||
.idea/babylon-ios.iml | ||
.idea/runConfigurations/Babylon_STAGING1.xml | ||
|
||
# Fastlane | ||
fastlane/README.md | ||
fastlane/report.xml | ||
vendor/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
4.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
Pod::Spec.new do |s| | ||
|
||
s.name = "DrawerKit" | ||
s.version = "0.0.1" | ||
s.summary = "An implementation of an interactive and animated view, similar to what you see in Apple Maps" | ||
|
||
s.description = <<-DESC | ||
DrawerKit allows you to modally present a view controller from another, in such a way that the | ||
presented view controller slides up as a "drawer", much like what happens when you tap on a location | ||
in the map when using the Apple Maps app. The library is highly configurable, with a few more options | ||
coming soon. | ||
DESC | ||
|
||
s.homepage = "https://github.com/Babylonpartners/DrawerKit" | ||
s.license = { :type => "MIT", :file => "LICENSE" } | ||
s.author = { "Wagner Truppel" => "[email protected]" } | ||
s.platform = :ios, "10.0" | ||
s.source = { :git => "github.com/Babylonpartners/DrawerKit.git", :tag => "#{s.version}" } | ||
s.source_files = "DrawerKit/**/*.{swift}" | ||
|
||
end |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❤️ For including Appcod related files