Skip to content

Commit e3364f4

Browse files
author
Eric Miller
committed
Back merging with master to get missing documentation files
2 parents e6a4154 + 1b09de7 commit e3364f4

File tree

5 files changed

+178
-3
lines changed

5 files changed

+178
-3
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ DerivedData
1717
*.perspectivev3
1818
!default.perspectivev3
1919
xcuserdata
20+
*.orig
2021

2122
## Other
2223
*.xccheckout

CODE_OF_CONDUCT.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6+
7+
## Our Standards
8+
9+
Examples of behavior that contributes to creating a positive environment include:
10+
11+
* Using welcoming and inclusive language
12+
* Being respectful of differing viewpoints and experiences
13+
* Gracefully accepting constructive criticism
14+
* Focusing on what is best for the community
15+
* Showing empathy towards other community members
16+
17+
Examples of unacceptable behavior by participants include:
18+
19+
* The use of sexualized language or imagery and unwelcome sexual attention or advances
20+
* Trolling, insulting/derogatory comments, and personal or political attacks
21+
* Public or private harassment
22+
* Publishing others' private information, such as a physical or electronic address, without explicit permission
23+
* Other conduct which could reasonably be considered inappropriate in a professional setting
24+
25+
## Our Responsibilities
26+
27+
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
28+
29+
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
30+
31+
## Scope
32+
33+
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34+
35+
## Enforcement
36+
37+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at mobile@handsome.is. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38+
39+
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
40+
41+
## Attribution
42+
43+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
44+
45+
[homepage]: http://contributor-covenant.org
46+
[version]: http://contributor-covenant.org/version/1/4/

CONTRIBUTING.md

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Contributing to InteractiveSideMenu
2+
3+
:+1: First of all, big thanks for your desire to contribute in this project :+1:
4+
5+
## How to contribute
6+
7+
The easiest way to contribute is to *report a bug* or *propose a new feature* using [GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues).
8+
Also, feel free to send your suggestions concerning any library issues, documentation and README typos, [Sample](./Sample) improvements, or any other enhancements. **We really appreciate your participation!**
9+
10+
### How to ask a question
11+
12+
Before asking a question, please look through the [README](./README.md) and [Sample application](./Sample) or take a look into [already asked GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues) (even closed). If you still haven't found an answer, feel free to [open an issue](https://github.com/handsomecode/InteractiveSideMenu/issues/new) and ask us your question and mark it with the prepared `question` label.
13+
14+
### How to report a bug
15+
16+
The standard way to report a bug is [GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues).
17+
18+
Explain the problem and include additional details to help maintainers reproduce the problem:
19+
20+
- **Use a clear and descriptive title** for the issue to identify the problem.
21+
- **Describe the exact steps to reproduce the problem** in as many details as possible.
22+
- **Provide specific examples** to demonstrate these steps. Include links to files or GitHub projects, or copy/paste snippets. If you're providing snippets in the issue, use Markdown code blocks.
23+
- **Describe the behavior you observed** after following these steps and point out what exactly is the problem with that behavior.
24+
- **Explain the behavior you expected** to see instead and why.
25+
- **Include screenshots and animated GIFs** which show you following the described steps and clearly demonstrate the problem.
26+
- **If you're reporting a library crash**, include a crash report with a stack trace.
27+
28+
Include details about your configuration and environment:
29+
30+
- **Which version of InteractiveSideMenu** are you using?
31+
- Do you test on the **Simulator** or a **Real device**?
32+
- **iOS version** that you test with.
33+
- **Xcode version** if it could be helpful in your case.
34+
35+
### How to request an enhancement
36+
37+
**Enhancements** are features that you might like to suggest to a project, but aren't necessarily bugs/problems with the existing code. There is *a label* for enhancements in [Github's Issues](https://github.com/handsomecode/InteractiveSideMenu/issues), so you can tag issues as `enhancement`, and thereby allow us to prioritize issues/bugs reported to the project.
38+
39+
40+
### How to tell us about your application
41+
42+
If you are using **InteractiveSideMenu** in your project that is successfully published to AppStore, [send the link](https://github.com/handsomecode/InteractiveSideMenu/issues/new) to us and we'll add you to the list of applications that use the library.
43+
44+
45+
### How to submit changes
46+
47+
When contributing to this repository, please, first discuss the change you wish to make via [issue](https://github.com/handsomecode/InteractiveSideMenu/issues/new).
48+
The preferred workflow for contributing to InteractiveSideMenu is to fork the [main repository](https://github.com/handsomecode/InteractiveSideMenu) on
49+
GitHub, clone, and develop on a branch.
50+
51+
**Steps:**
52+
53+
1. Fork the [project repository](https://github.com/handsomecode/InteractiveSideMenu)
54+
by clicking on the 'Fork' button near the top right of the page. This creates
55+
a copy of the code under your GitHub user account. For more details on
56+
how to fork a repository see [this guide](https://help.github.com/articles/fork-a-repo/).
57+
58+
2. Clone your fork of the *InteractiveSideMenu* repo from your GitHub account to your local disk
59+
60+
```bash
61+
$ git clone git@github.com:YourLogin/InteractiveSideMenu.git
62+
$ cd InteractiveSideMenu
63+
```
64+
65+
3. Checkout to `develop` branch, and create a ``feature`` branch to hold your development changes
66+
67+
```bash
68+
$ git checkout develop
69+
$ git checkout -b feature/my_updates
70+
```
71+
72+
Always use a ``feature`` branch. It's good practice to add updates to the main branches.
73+
74+
4. Develop the feature on your feature branch. Add changed files using ``git add`` and then ``git commit`` files
75+
76+
```bash
77+
$ git add modified_files
78+
$ git commit
79+
```
80+
81+
to record your changes in Git, then push the changes to your GitHub account with
82+
83+
```bash
84+
$ git push -u origin feature/my_updates
85+
```
86+
87+
5. Add your updates to [Sample](./Sample) as well. Also, don't forget to update [README](./README.md) and [CHANGELOG](./CHANGELOG.md) with your changes.
88+
89+
6. Follow [these instructions](https://help.github.com/articles/creating-a-pull-request-from-a-fork)
90+
to create a pull request from your fork. This will send an email to the committers.
91+
92+
(If any of the above seems like magic to you, please look up the
93+
[Git documentation](https://git-scm.com/documentation) on the web, or ask a friend or another contributor for help)
94+
95+
## Code of Conduct
96+
97+
This project is governed by the [CODE OF CONDUCT](./CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please, report unacceptable behavior to mobile@handsome.is.

InteractiveSideMenu.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "InteractiveSideMenu"
3-
s.version = "2.0"
3+
s.version = "2.1"
44
s.summary = "Interactive Side Menu in Swift"
55
s.homepage = "https://github.com/handsomecode/InteractiveSideMenu"
66
s.license = "Apache 2.0 license"

README.md

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,24 @@ Here are some of the ways Interactive Side Menu can be customized:
2929
- Animation curves
3030
- Customized animation settings for different orientations
3131

32+
## Communication
33+
34+
- If you **need help or found a bug**, please, open an issue.
35+
- If you **have a feature request**, open an issue.
36+
- If you **are ready to contribute**, submit a pull request.
37+
- If you **like Interactive Side Menu**, please, give it a star.
38+
- If you **use Interactive Side Menu in your application published to AppStore**, [send us a link](https://github.com/handsomecode/InteractiveSideMenu/issues/new) and we'll create the list with applications used our library.
39+
40+
You can find more details into [CONTRIBUTING](./CONTRIBUTING.md) file.
41+
3242
## Installation
3343

3444
### CocoaPods
3545
To install using [CocoaPods](https://cocoapods.org/), add the following line to your Podfile:
3646
```
3747
pod 'InteractiveSideMenu'
3848
```
49+
Please, don't forget to run `pod update` command to update your local specs repository during migration from one version to another.
3950

4051
### Carthage
4152
To install using [Carthage](https://github.com/Carthage/Carthage), add the following line to your Cartfile:
@@ -77,6 +88,7 @@ class HostViewController: MenuContainerViewController {
7788
}
7889
```
7990

91+
## Items content
8092
To show menu, call `showSideMenu()` from any `SideMenuItemContent` controller.
8193
```swift
8294
import InteractiveSideMenu
@@ -91,13 +103,32 @@ class KittyViewController: UIViewController, SideMenuItemContent {
91103

92104
To change the currently visible controller, pass the desired controller to your `MenuContainerViewController`:
93105
```swift
94-
let index = 2 // second menu item
106+
let index = 2 // Second menu item
95107
guard let menuContainerViewController = self.menuContainerViewController else { return }
96108
let contentController = menuContainerViewController.contentViewControllers[index]
97109
menuContainerViewController.selectContentViewController(contentController)
98-
menuContainerViewController.hideMenu()
110+
menuContainerViewController.hideSideMenu()
99111
```
112+
113+
### TabBar and Navigation controllers
114+
115+
To use menu with **TabBar** or **NavigationController**, ensure that you indicate UITabBarController or UINavigationController as item content directly, not any corresponding ViewControllers.
116+
```swift
117+
class NavigationViewController: UINavigationController, SideMenuItemContent {
118+
}
119+
120+
class InnerViewController: UIViewController {
100121

122+
@IBAction func openMenu(_ sender: Any) {
123+
if let navigationViewController = self.navigationController as? SideMenuItemContent {
124+
navigationViewController.showSideMenu()
125+
}
126+
}
127+
}
128+
```
129+
Please, find UITabBarController implementation details in [Sample](./Sample).
130+
131+
## Animation Customization
101132
To customize the open and close animations, update the `transitionOptions` property on your `MenuContainerViewColtroller` subclass. The sample project does this in `viewDidLoad()`
102133
```swift
103134
override func viewDidLoad() {

0 commit comments

Comments
 (0)