Telegram-iOS
Find a file
2019-06-10 19:49:30 +01:00
.github Delete GITHUB_RULES.md 2017-04-14 09:37:33 -07:00
AsyncDisplayKit no message 2017-03-01 18:33:48 +04:00
AsyncDisplayKit.xcworkspace Check in Xcode 9.3 "workspace checks" file (#868) 2018-04-04 13:34:05 -07:00
AsyncDisplayKit_Xcode.xcodeproj Rename project 2019-06-09 19:41:04 +01:00
buck-files Support Buck build (#2849) 2017-01-04 14:11:28 -08:00
CI BuildKite to ignore all markdown files (#517) 2017-08-17 10:02:11 -07:00
docs Update the FAQ to throw less shade. (#1379) 2019-03-06 17:09:49 -08:00
examples Context is a pretty general name that will cause conflicts with subclasses (#1399) 2019-03-12 15:32:58 -07:00
examples_extra Migrate placeholder example project from 1.0 to 2.x (#1164) 2018-10-17 08:02:47 -07:00
InstrumentsTemplates Improve System Trace Implementation #trivial (#368) 2017-06-19 10:14:39 -07:00
plans/LayoutDebugger Layout debugger proposal (#52) 2017-04-22 16:48:22 +01:00
Schemas Remove experimental features (exp_skip_a11y_wait && exp_new_default_cell_layout_mode) (#1383) 2019-03-11 13:34:35 -07:00
smoke-tests [License] Simplify the Texture license to be pure Apache 2 (removing ASDK-Licenses). (#1077) 2018-08-28 07:39:18 -07:00
Source BUCK configuration 2019-06-06 00:11:32 +01:00
SubspecWorkspaces/ASDKListKit [License] Simplify the Texture license to be pure Apache 2 (removing ASDK-Licenses). (#1077) 2018-08-28 07:39:18 -07:00
Tests Merge commit 'ae2b3af967' 2019-03-18 18:47:05 +04:00
.buckconfig Support Buck build (#2849) 2017-01-04 14:11:28 -08:00
.buckversion Buck: use snapshot_reference_images_path instead of copying images to XCTest bundle (#2915) 2017-01-19 18:17:47 -08:00
.editorconfig Add .editorconfig 2016-04-29 07:52:44 -07:00
.github_changelog_generator Cut version 2.8 #changelog (#1340) 2019-02-13 22:20:59 -08:00
.gitignore Update .gitignore 2019-06-09 20:14:30 +01:00
.slather.yml [.slather.yml] Add newline to end of file 2015-04-21 17:02:04 -04:00
.travis.yml IGListKit Support II: Electric Boogaloo (#2942) 2017-01-30 11:16:59 -08:00
BUCK Update build configuration 2019-06-10 19:49:30 +01:00
build.sh Update for 9.4.1 CI (#1392) 2019-03-11 09:09:28 -07:00
Cartfile Don't return non-animated GIFs for animation (update to latest PINRemoteImage beta) (#940) 2019-02-21 15:21:19 -08:00
CHANGELOG.md Cut version 2.8 #changelog (#1340) 2019-02-13 22:20:59 -08:00
CONTRIBUTING.md [License] Simplify the Texture license to be pure Apache 2 (removing ASDK-Licenses). (#1077) 2018-08-28 07:39:18 -07:00
Dangerfile Cleanup Dangerfile (#1212) 2018-11-04 18:22:28 -08:00
Gemfile Add danger-slack 2017-04-26 11:25:35 -07:00
LICENSE [License] Simplify the Texture license to be pure Apache 2 (removing ASDK-Licenses). (#1077) 2018-08-28 07:39:18 -07:00
Podfile Don't return non-animated GIFs for animation (update to latest PINRemoteImage beta) (#940) 2019-02-21 15:21:19 -08:00
Podfile.lock Experiment with different strategies for image downloader priority (#1349) 2019-03-08 08:11:03 -08:00
README.md Generate the changelog at release time rather than updating in each PR (#1031) 2018-11-04 11:34:21 -08:00
RELEASE.md Cut version 2.8 #changelog (#1340) 2019-02-13 22:20:59 -08:00
run_tests_update_status.sh Add danger (#18) 2017-04-19 14:27:42 -07:00
Texture.podspec Don't return non-animated GIFs for animation (update to latest PINRemoteImage beta) (#940) 2019-02-21 15:21:19 -08:00

Coming from AsyncDisplayKit? Learn more here

Texture

Apps Using Downloads

Platform Languages

Version Carthage compatible License

Installation

Texture is available via CocoaPods or Carthage. See our Installation guide for instructions.

Performance Gains

Texture's basic unit is the node. An ASDisplayNode is an abstraction over UIView, which in turn is an abstraction over CALayer. Unlike views, which can only be used on the main thread, nodes are thread-safe: you can instantiate and configure entire hierarchies of them in parallel on background threads.

To keep its user interface smooth and responsive, your app should render at 60 frames per second — the gold standard on iOS. This means the main thread has one-sixtieth of a second to push each frame. That's 16 milliseconds to execute all layout and drawing code! And because of system overhead, your code usually has less than ten milliseconds to run before it causes a frame drop.

Texture lets you move image decoding, text sizing and rendering, layout, and other expensive UI operations off the main thread, to keep the main thread available to respond to user interaction.

Advanced Developer Features

As the framework has grown, many features have been added that can save developers tons of time by eliminating common boilerplate style structures common in modern iOS apps. If you've ever dealt with cell reuse bugs, tried to performantly preload data for a page or scroll style interface or even just tried to keep your app from dropping too many frames you can benefit from integrating Texture.

Learn More

Getting Help

We use Slack for real-time debugging, community updates, and general talk about Texture. Signup yourself or email textureframework@gmail.com to get an invite.

Release process

For the release process see the [RELEASE] (https://github.com/texturegroup/texture/blob/master/RELEASE.md) file.

Contributing

We welcome any contributions. See the CONTRIBUTING file for how to get involved.

License

The Texture project is available for free use, as described by the LICENSE (Apache 2.0).