A native Mac app wrapper for WhatsApp Web
A clean and lightweight progress HUD for your iOS and tvOS app.
scmp-contributor/android_sdk 0
Android SDK for Chartbeat
scmp-contributor/apollo-android 0
:pager: A strongly-typed, caching GraphQL client for Android, written in Java
scmp-contributor/FrescoImageViewer 0
Customizable Android full screen image viewer for Fresco library supporting "pinch to zoom" and "swipe to dismiss" gestures
scmp-contributor/twitter-kit-android 0
Twitter Kit for Android
wooyukit/Android-TransitionApp 0
Android Navigation Transition Animation
wooyukit/AndroidNetworkTools 0
Set of useful android network tools
Customizable Android full screen image viewer for Fresco library supporting "pinch to zoom" and "swipe to dismiss" gestures
INSPhotoGallery is a modern looking photo gallery written in Swift for iOS.
push eventfacebook/litho
commit sha b9d1cb403fcf8f9f594d3e9de2fcabfb0c99e0e8
Change how to force mount on nested RootHosts Summary: We need to force mount on nested root hosts when we are going to run animations from the parent. We used to set transient to true but that prevents visibility events. Reviewed By: adityasharat Differential Revision: D25924361 fbshipit-source-id: 4a432a3b3a2aa451068e6269c357be403b992f26
push time in 18 hours
push eventfacebook/litho
commit sha 7354055939f60303868a90de68505c013a7329f6
Fix gradle build for kotlin api Reviewed By: strulovich Differential Revision: D25910907 fbshipit-source-id: 6f64eb25a5a20fc2cea40e187fe0946be6652290
commit sha 56b26fccee03ae786baf94bc4b049ebac1a82f30
Fixup comments on D25850448 Summary: Fixes some sizes being given as dp and improves naming Reviewed By: colriot Differential Revision: D25911049 fbshipit-source-id: e23b61ac08b4fcad499f1bcb1a616b306ec0f15c
commit sha c83d6348a8d667af872a28385b49adfc1d0e0a8d
Add viewTag to Style Reviewed By: colriot Differential Revision: D25922803 fbshipit-source-id: bcaa2b911397273b1dd1a882be0c5ae1aaa61b42
push time in 19 hours
push eventfacebook/litho
commit sha 85945a4ee0dd60c2ab017496c8d4f2b242fd2565
Remove usages of use_old_styleable_format which doesn't do anything Summary: Per title. Reviewed By: jselbo, xiphirx Differential Revision: D25918495 fbshipit-source-id: becefccd2175fa15c749aa7aa34f94eeafb4e660
push time in a day
push eventfacebook/litho
commit sha 98127e1eb7389c246727e2889ee9de21db7b711a
Add wrapInView to Style Summary: Adding this even though it's going away in another diff so that I can run the tests before and after the style impl change Reviewed By: strulovich Differential Revision: D25849499 fbshipit-source-id: d116ef32f651fc42f05bedffa9f555fe2bce9853
commit sha ae5ba37a68b32002232b4d9a2de1916c0e15e362
Remove TreePropHolder testing util Summary: This is in the wrong package and this isn't a great pattern anyway so I don't want to encourage it. Reviewed By: strulovich Differential Revision: D25850357 fbshipit-source-id: c805d49ab2fb37aab97136c2cf8865be92ff2f3e
commit sha 3b7085d32933b2029bd136ca9d3435133f161822
Add test for common styles Summary: Adds tests for all currently defined styles. This puts us in a place where when we add new styles, we can expect to add a test. Reviewed By: strulovich Differential Revision: D25850448 fbshipit-source-id: c78c424a813cd57a38de5247e7cb865fd5820ce5
commit sha e46af5cc790e72c93ded21b0bafd4ac7fc471309
New immutable style impl Summary: Reworks the Style implementation in preparation for moving more properties to it. The API is staying the same except 1) You no longer need to import each style property separately 2) Everything now uses the Style.blah(...) API and not Style() directly 3) Setting position no longer automatically sets positionType We are changing the implementation to try to reduce large object allocations and having to copy over all the fields each time a property is set. The implementation is based on Style and StyleItem. - A StyleItem knows how to apply a single attribute like width - Style is an ordered, immutable collection of StyleItems While adding a new StyleItem to a Style, a new Style is created pointing to the old Style plus the new StyleItem. This is similar to adding a new head to a linked list, where the value is the StyleItem and the next pointer is the old style. Similarly, when combining two Styles a new Style is returned pointing to both. I recognize this implementation doesn't allow constant-time style attribute lookups -- we'll have to see how much that matters. There are definitely alternate implementations here with different "tradeoffs", e.g. using an immutable map and copying it each time (if we're concerned this matters, we need to measure it which we haven't put time into doing). Last thing to note about this implementation: separating Style into StyleItems allows us to decentralize the usable Style attributes which is important given the extensibility we want to offer. Of course, we aren't actually taking advantage of it in this diff, namely because Litho's core is not yet set up to allow defining custom attributes (i.e. everything still uses CommonProps). Reviewed By: strulovich Differential Revision: D25802862 fbshipit-source-id: dd969d1fbff7e01a12da3f26a2709515fac22fd5
push time in 2 days
PR closed facebook/litho
Talkback doesn't play the updated content via state update. See this sample built in Litho playground activity.
I captured a video here: https://photos.app.goo.gl/gZ3DteYKofhtLL766
pr closed time in 3 days
push eventfacebook/litho
commit sha ac6bcf5d73287876e359ba512f78051a68dd8a15
Set focusable false when using AX delegate Summary: Right now we are using a forked version of ExploreByTouchHelper for fb4a and ig4a which comments out the host.setFocusable(true) which is by default on the View. For Whatsapp we are not using the forked version and this works ok in general but when trying to add expresso tests that simulates a tab key down this will request focus on the view (even without ax enabled). This change matches what we do in the forked ExploreByTouchHelper. Reviewed By: pasqualeanatriello Differential Revision: D25831887 fbshipit-source-id: adedf60101eabd7bcc31d350b35377ebf13632e9
push time in 3 days
push eventfacebook/litho
commit sha 654a93a6f7a059b7e4b5fafe1bee6bb2e6104e99
Adds background and foreground to ComponentAssert.hasVisibleDrawable() Summary: Adds background and foreground to ComponentAssert.hasVisibleDrawable() to fix tests that would fail when background and foreground drawables are disabled. Reviewed By: astreet Differential Revision: D25848584 fbshipit-source-id: 9b8cb94b2255e4672858f3d673ce1b38bcd3c4c3
push time in 3 days
push eventfacebook/litho
generatedunixname89002005325674
commit sha c4a002017150d18b4902330e8501e6c6bf6ad843
Daily `arc lint --take GOOGLEJAVAFORMAT` Reviewed By: zertosh Differential Revision: D25896671 fbshipit-source-id: 177e695f58815cf78b8e30564238b3c64b4ae8c2
push time in 3 days
push eventfacebook/litho
commit sha 9a5fcee6c9c33464dac0861fc52f198ffdde3866
DataFetchSpec and SurfaceSpec interstage props cleanup Summary: DataFetchSpec and SurfaceSpec models are treating some non-interstage prop annotations as such, which leads to incorrect and unpredictable generated code. Verified which of these annotations are actually used for passing interstage props and marked the others as regular method param annotations. Reviewed By: boxme Differential Revision: D25497102 fbshipit-source-id: 3a4f37ce2ce6c853c6d2635f9bf04ae0a88a92fc
commit sha bc6f545cfbb4541a71c57ad13cb7ee265e2cb756
Add test for inter-stage props generated code Summary: title Reviewed By: adityasharat Differential Revision: D25783396 fbshipit-source-id: 1203987c2a1fea9104ab2b254ec2ddf272465663
push time in 4 days
push eventfacebook/litho
commit sha fd37f8e013ae7bb11c274d0e09cf64eb61430500
Remove getGlobalKey from Component Summary: Doesn't seem like using VisibleForTesting is preventing `getGlobalKey` from being accessed inside the package, so removing it completely to avoid misuse, and replaced usage with ComponentUtils.getGlobalKey (which checks the stateless flag) Reviewed By: nicous Differential Revision: D25883183 fbshipit-source-id: 4c89409daeed34823faf86f3698168c7ad3b4bae
push time in 4 days
push eventfacebook/litho
generatedunixname89002005325674
commit sha f85e549ce6be82eea0a7a95b6d9d167cba406ad0
Daily `arc lint --take GOOGLEJAVAFORMAT` Reviewed By: zertosh Differential Revision: D25881451 fbshipit-source-id: f75643c9157885189690a8ac21e5ef91b9f6ec60
push time in 4 days
pull request commentfacebook/litho
Move litho tests to run with binary resources
This pull request has been merged in facebook/litho@1297d592f6d92b53a3104696e61965d1a1ff0e37.
comment created time in 5 days
push eventfacebook/litho
commit sha 992b6bc41e74541c662134f1c6443543f582c992
Split litho-it into more targets Summary: More targets are better, right now we have one big target that contains sub directories tests too. Reviewed By: mihaelao Differential Revision: D25837549 fbshipit-source-id: 531a5c00a36e8d9bcd45071cd75b1e1566061e65
commit sha 1297d592f6d92b53a3104696e61965d1a1ff0e37
Move litho tests to run with binary resources (#755) Summary: Pull Request resolved: https://github.com/facebook/litho/pull/755 Legacy resources are deprecated, we should use binary resources which is closer to emulating what the Android resource system does. We fix LithoTestRunner to only set a manifest for the gradle build, and we set the Litho manifest in the bzl macro. Reviewed By: astreet Differential Revision: D25794343 fbshipit-source-id: 78c8b99ec3c6ceb893f755e950d2907470eacd36
push time in 5 days
PR closed facebook/litho
Summary: Legacy resources are deprecated, we should use binary resources which is closer to emulating what the Android resource system does.
We fix LithoTestRunner to only set a manifest for the gradle build, and we set the Litho manifest in the bzl macro.
Differential Revision: D25794343
pr closed time in 5 days
push eventfacebook/litho
commit sha 0fc02e93c3eb6dc8b8703316a29cbc3d711f6591
Remove state comparison from isEquivalentTo generation Summary: Since shouldUpdate now compares state there's no need to compare state in isEquivalentTo, nor is it correct, so removing it. Reviewed By: adityasharat Differential Revision: D25536801 fbshipit-source-id: 69151267b25e50685b3ef7977658e9231e58f28a
commit sha a748b0ff4533b756df3d812d9baa6aa425fa89df
Pass scoped ComponentContexts to shouldUpdate Summary: When we remove the StateContainers from the Component, we won't be able to compare state in shouldUpdate anymore without access to the StateContainers from the LayoutStateContext. We'll need this for stateless components to query the LayoutStateContext by key and get the StateContainers Reviewed By: adityasharat Differential Revision: D25197165 fbshipit-source-id: 266910b6874955b90af4b090d4500763ef9f73da
commit sha 39863802a2f954c9e04ae64687decdf275c500bf
Add ScopedComponentInfo class Summary: Introducing the ScopedComponentInfo class, which will contain all the layout-scoped stateful information that the Component currently hosts as fields. For stateless components, the goal is to move all fields of the Component to a ScopedComponentInfo which will be hosted outside of the Component (by the LayoutStateContext - see diffs above). Here, we're starting by replacing the StateContainer field of the Component with a ScopedComponentInfo field which wraps the StateContainer. In the next diffs, we'll experiment with keeping the ScopedComponentInfo on the LayoutStateContext (eventually we'll move out all the fields). This seems easier to gate and move around than doing it field by field, let me know what you think. Reviewed By: adityasharat Differential Revision: D25197155 fbshipit-source-id: 626fa7ac20a53b96a9dfd3a97ae395abf0c32ee3
commit sha c064d39d8358d08fcb26d7c2f60d37ef0de5fc3c
Get StateContainers from LayoutStateContext Summary: Keep a map of global key to ScopedComponentInfo in the LayoutStateContext and access the StateContainer from there instead of keeping it as a field on the Component. There are cases where we only have access to the scoped ComponentContext and we need the StateContainer, so we need to do a map lookup to get it when we could keep it directly on the ComponentContext - I'd like to hear you opinion on this. I would like to move towards keeping any layout-scoped stuff on the LayoutStateContext - eventually the ComponentContext becomes only a wrapper for the global key and the Android context. Reviewed By: adityasharat Differential Revision: D25197175 fbshipit-source-id: 6f60e73720f4b96b902ba496d6666b345556d54d
push time in 5 days
created tagfacebook/litho
A declarative framework for building efficient UIs on Android.
created time in 5 days
push eventfacebook/litho
commit sha dd429c2e51df1f195943712be09303c6bb02aa14
Apply clang-format update fixes Reviewed By: igorsugak Differential Revision: D25861849 fbshipit-source-id: 840dc1061e557717c7f9ffcccbc09c24b96b78e0
push time in 6 days
push eventfacebook/litho
commit sha c5428e8aa6f2df0b64c61956adfe80a18eb9d3d5
Zero dimension views never overlap Reviewed By: arpitratan Differential Revision: D25282809 fbshipit-source-id: 2feb35307ff96c3b0d9ea846f01dd23a59bd1cdf
push time in 6 days
push eventfacebook/litho
commit sha 5cc1747f120cdf34e8a18dfa6e29eb7263f43850
Add Dimen interface Summary: This diff changes a bit how we do dimensional values (dp, sp, px). We need some sort of interface to accept Px and Dp on dimen props, and they need to be able to convert to pixels. Note that I'm not distinguishing between props that take Dp/Px (dimensions) vs. Sp/Px (text) vs. any of the three (positions). We can add that later if we thinks it's valuable, imo it just complicates things. Reviewed By: strulovich Differential Revision: D25848116 fbshipit-source-id: e935cbb77a0fa391c4ea1f9433016e4c7dc90a2e
commit sha 78e4b605a3841c55ef3b317519ee0cb289a7e25e
Accept Dimen for common props instead of Dp Summary: This allows us to take px as well. Note I'm not differentiating between places that can take sp/dp/px as I don't think it's super useful but happy to hear other thoughts. Reviewed By: strulovich Differential Revision: D25848331 fbshipit-source-id: f9404f4d8f93c1bd5ff30742d9425e967c255153
push time in 8 days
push eventfacebook/litho
commit sha 61dfe24b58aeca9a2acac74e5131bbc391174cb9
Remove Clickable that takes eventhandler Summary: This isn't used, we can add back if we feel we need it Reviewed By: strulovich Differential Revision: D25782732 fbshipit-source-id: 191788256c2a8445e7f59db2ebaaa176d965bbe1
push time in 8 days
push eventfacebook/litho
commit sha e9007c5ecff1b074cfbdaccd8b98d2ddd4990c10
Flipper Editor: Handle AtomicReference NPE Reviewed By: oprisnik Differential Revision: D24994074 fbshipit-source-id: 7f87d9ea7daf0c09a3f32dc4593824e52c5182f6
push time in 8 days
pull request commentfacebook/litho
Remove unnecessary null checks from DebugComponent
@nicous merged this pull request in facebook/litho@a5ad43138dc59528dbb8f748f5bd675e19c07931.
comment created time in 8 days
push eventfacebook/litho
commit sha a5ad43138dc59528dbb8f748f5bd675e19c07931
Remove unnecessary null checks from DebugComponent (#754) Summary: Remove two unnecessary null checks from DebugComponent. In both cases, the second condition of the `if` statement (`Component.isMountViewSpec(component)`) internally performs the same null check ([here](https://github.com/facebook/litho/blob/bc7ebe1a33d9d5e518d975ddb895732f1c25922e/litho-core/src/main/java/com/facebook/litho/Component.java#L798)). ## Changelog Remove two unnecessary null checks from DebugComponent. Pull Request resolved: https://github.com/facebook/litho/pull/754 Test Plan: This quick change only removes redundancy: it does not actually change the logic or UI. Reviewed By: adityasharat Differential Revision: D25847298 Pulled By: nicous fbshipit-source-id: 5810c275870c3b32af3b2c83b398474e98b6f4c6
push time in 8 days
PR closed facebook/litho
Summary
Remove two unnecessary null checks from DebugComponent. In both cases, the second condition of the if
statement (Component.isMountViewSpec(component)
) internally performs the same null check (here).
Changelog
Remove two unnecessary null checks from DebugComponent.
Test Plan
This quick change only removes redundancy: it does not actually change the logic or UI.
pr closed time in 8 days
push eventfacebook/litho
commit sha dcfb59c716ab344c10ef464683db390eeb16f8ab
Improve error message in MatchNode testing API Summary: Updates the error printing to also augment AssertionError Reviewed By: adityasharat Differential Revision: D25847984 fbshipit-source-id: 547f4772d53715904c2b14f45a9538efbd4232c7
commit sha 2bad81b6952d7fba801b30eb3b7c20610a3aa8e6
Add check API to MatchNode testing API Summary: Some assertions are too complicated to express in the API so you can use this as an escape hatch to perform them against wherever you are in matching the view hierarchy. Reviewed By: adityasharat Differential Revision: D25848011 fbshipit-source-id: 5d444f753ade2770a388507ec623953f68d848ac
push time in 8 days
pull request commentfacebook/litho
Remove unnecessary public modifiers from ClickableSpanListener interface methods
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!
comment created time in 8 days
push eventfacebook/litho
commit sha c03dbc0428e9f02ef690379c8bd97aa9b5e6b5bd
Compare base contexts to support custom context wrappers Summary: In Lite we create a custom wrapper context and wraps the activity base context, the old comparison will fail in such a case. In order so solve it we will compare base context to base context Reviewed By: colriot Differential Revision: D25783986 fbshipit-source-id: f7dbfcec58db7cfd4a1832d371e109727927501a
push time in 8 days
pull request commentfacebook/litho
Remove unnecessary public modifiers from ClickableSpanListener interface methods
Hi @martynawieczorek!
Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file.
In order for us to review and merge your code, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA.
If you have received this in error or have any questions, please contact us at cla@fb.com. Thanks!
comment created time in 8 days
PR opened facebook/litho
Summary
The abstract methods in the ClickableSpanListener interface include 'public' modifiers - those are redundant, since all interface abstract methods are implicitly public.
Changelog
Remove the 'public' modifiers from ClickableSpanListener's onClick and onLongClick methods.
Test Plan
N/A
pr created time in 8 days
push eventfacebook/litho
commit sha b760520403348aac32e40261ef35079478afcab5
Move rendercore incremental mount tests to use binary resources Summary: Legacy resources (where Robolectric would try to emulate the Android resource system) are deprecated - instead we create an APK with our resources and use them in tests. Reviewed By: adityasharat Differential Revision: D25814355 fbshipit-source-id: 69ae1c7ec8626a0891395502b85daeaaed9e5a38
push time in 8 days