athlee / athkit Goto Github PK
View Code? Open in Web Editor NEWATHKit is a collection of customizable UI components such as ImagePickerController and more.
License: MIT License
ATHKit is a collection of customizable UI components such as ImagePickerController and more.
License: MIT License
ATHImagePickerController
seems to incorrectly handle simultaneous gestures for zooming and scrolling a cropping image. You can start zooming, then start scrolling holding the 40pt bottom area and voila, it is getting crazy.
Note, that this bug has been fixed in
ImagePickerKit
v0.2.5.
Since we're using CocoaPods
the module gets wrapped into a separate bundle which means we should use the correct one.
ATHImagePickerController
uses default icons for camera screen's buttons (switch camera and flash mode). It is important to have these icons changeable.
CameraSwitchIcon
and Flash
icons (FlashAutoIcon
, FlashOnIcon
, FlashOffIcon
)0.0.7
ATHImagePickerController
does not currently provide an option to choose whether the status bar should be hidden or not. This is very crucial for some apps, so we should introduce this feature as soon as possible.
isStatusBarHidden
and statusBarAnimation
properties0.0.7
Athlee
products actively use pre-permission screens for asking users' permission to access some kind of data. We use them to ensure at the end we'll get the permission, even if users initially denied giving it.
Permission Alerts should be looking like a custom UIAlertController
with customizable title, image, text and buttons.
ATHImagePickerController
uses UIPageViewController
for scrolling between tabs which is buggy in case of proper paging. This StackOverflow issue explains the core of the problem and gives an Objective-C partial solution. We should fix this bug or at least provide a workaround to avoid any possible issues.
0.0.8 hot-fix
Readme
file should describe how to use this library and how it works underneath.
ATHImagePickerController
does not have a default spacing between a photo editing area and collection view with photos. We should use at least 1 pt spacing to keep the border visible.
0.0.7
The problem is basically that Editing Area rejects pan gestures to avoid simultaneous panning over editing area and scrolling between tabs. Either way it does detect gestures on assets area and thus there comes an edge case which allows to scroll between tabs when editing area is being moved (at this point user's finger might be touching the assets area and thus both gestures are allowed which is totally wrong).
0.1.3
ATHImagePickerController
doesn't display some photos in the editing area.
ATHImagePickerController
does not save taken photos to the albums. This seems wrong since users want to access taken assets.
0.1.3
ATHImagePickerController
does not load user's custom config for UI when tabs are changed. This behavior seems really wrong. Configs should be loaded, so users can customize the component.
0.0.7
ATHImagePickerController
still has a few flaws. Firstly, the image order isn't the same as in the Photos app (i.e. in the Camera Roll). Secondly, some images are still empty. I've figured out this is happening because of the iCloud optimization options (there are copies actually).
Use smart albums and camera roll collections to fetch photos. Also we should specify fetching options for a certain asset.
v0.1.1
ATHImagePickerController
has a few flaws with fetching the photos. First of all, sometimes it fetches really weird stuff which cannot be displayed (CoreGraphics
error). Then it also crashes when the library is empty (obviously, beyond the bounds
fatal error). This are critical issues which must be fixed.
PHFetchOptions
with a predicate)beyond the bounds
error (just add guard
statements to cell configuring methods)0.1.0
All public and open classes
, structs
, protocols
and functions
must be documented.
ATHImagePickerController
sometimes cannot handle both pan gesture recognizers which causes situations where scrolling between tabs might occur on image editing (i.e. panning over editable scrolling area). This issue has been claimed as fixed but this edge case still occurs.
0.1.2
Athlee
actively uses images taken by users, this is why we need a handy way to pick them and edit if necessary. UIImagePickerController
works great but it is not customizable enough for us.
We should develop a UI component that would imitate Instagram's photo picking process along with taking pictures and photo editing. It is presumably called ATHImagePickerController
, which makes clear what it does.
Image
, Camera
, Both
At this moment we're having issues with releasing the 0.0.9 pod version to the thunk. I've reported the issue on CocoaPod. I have some thoughts in that, will be experimenting in 0.0.9 bug versions.
All commits will be linked down below.
Since ATHImagePickerController
accumulates velocity change through previousPoint
property an interesting edge case happens when recognizer still does accumulate velocity change though horizontal panning which happens on changing tabs. This causes instant velocity change and a kind of visual glitch.
0.1.2
ATHImagePickerController
behaves weirdly on scrolling between tabs. The main issue is that editing area should not detect panning gestures to scroll between tabs, this has to happen on assets's area only.
0.0.8
ATHImagePickerController
should provide a feature to enable/disable status bar animation. It should also provide the duration variable, so developers can adjust these options.
0.0.8
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.