fix #509
This commit is contained in:
parent
04f040dd48
commit
b3037c7263
|
@ -172,6 +172,8 @@
|
||||||
:padding-top 8
|
:padding-top 8
|
||||||
:padding-bottom 8})
|
:padding-bottom 8})
|
||||||
|
|
||||||
|
(def item-height 60)
|
||||||
|
|
||||||
(def bottom-info-row
|
(def bottom-info-row
|
||||||
{:flex-direction "row"
|
{:flex-direction "row"
|
||||||
:padding-top 4
|
:padding-top 4
|
||||||
|
|
|
@ -21,11 +21,10 @@
|
||||||
|
|
||||||
(defn- container-animation-logic [{:keys [to-value val]}]
|
(defn- container-animation-logic [{:keys [to-value val]}]
|
||||||
(fn [_]
|
(fn [_]
|
||||||
(let [to-value @to-value]
|
(anim/start
|
||||||
(anim/start
|
(anim/spring val {:toValue to-value
|
||||||
(anim/spring val {:toValue to-value
|
:friction 6
|
||||||
:friction 6
|
:tension 40}))))
|
||||||
:tension 40})))))
|
|
||||||
|
|
||||||
(defn overlay [{:keys [on-click-outside]} items]
|
(defn overlay [{:keys [on-click-outside]} items]
|
||||||
[view {:style st/bottom-info-overlay}
|
[view {:style st/bottom-info-overlay}
|
||||||
|
@ -34,23 +33,18 @@
|
||||||
[view nil]]
|
[view nil]]
|
||||||
items])
|
items])
|
||||||
|
|
||||||
(defn container [& _]
|
(defn container [height & _]
|
||||||
(let [layout-height (r/atom 0)
|
(let [anim-value (anim/create-value 1)
|
||||||
anim-value (anim/create-value 1)
|
context {:to-value height
|
||||||
context {:to-value layout-height
|
|
||||||
:val anim-value}
|
:val anim-value}
|
||||||
on-update (container-animation-logic context)]
|
on-update (container-animation-logic context)]
|
||||||
(r/create-class
|
(r/create-class
|
||||||
{:component-did-update
|
{:component-did-update
|
||||||
on-update
|
on-update
|
||||||
:reagent-render
|
:reagent-render
|
||||||
(fn [& children]
|
(fn [height & children]
|
||||||
@layout-height
|
[animated-view {:style (st/bottom-info-container height)}
|
||||||
[animated-view {:style (st/bottom-info-container anim-value)}
|
(into [view] children)])})))
|
||||||
(into [view {:onLayout (fn [event]
|
|
||||||
(let [height (.. event -nativeEvent -layout -height)]
|
|
||||||
(reset! layout-height height)))}]
|
|
||||||
children)])})))
|
|
||||||
|
|
||||||
(defn message-status-row [{:keys [photo-path name]} {:keys [whisper-identity status]}]
|
(defn message-status-row [{:keys [photo-path name]} {:keys [whisper-identity status]}]
|
||||||
[view st/bottom-info-row
|
[view st/bottom-info-row
|
||||||
|
@ -82,12 +76,11 @@
|
||||||
(map (fn [{:keys [identity]}]
|
(map (fn [{:keys [identity]}]
|
||||||
[identity {:whisper-identity identity
|
[identity {:whisper-identity identity
|
||||||
:status message-status}]))
|
:status message-status}]))
|
||||||
(into {}))]
|
(into {}))
|
||||||
|
statuses (vals (merge participants user-statuses))]
|
||||||
[overlay {:on-click-outside #(dispatch [:set-chat-ui-props :show-bottom-info? false])}
|
[overlay {:on-click-outside #(dispatch [:set-chat-ui-props :show-bottom-info? false])}
|
||||||
[container
|
[container (* st/item-height (count statuses))
|
||||||
[list-view {:dataSource (-> (merge participants user-statuses)
|
[list-view {:dataSource (lw/to-datasource statuses)
|
||||||
(vals)
|
|
||||||
(lw/to-datasource))
|
|
||||||
:enableEmptySections true
|
:enableEmptySections true
|
||||||
:renderRow (render-row @contacts)
|
:renderRow (render-row @contacts)
|
||||||
:contentContainerStyle st/bottom-info-list-container}]]]))})))
|
:contentContainerStyle st/bottom-info-list-container}]]]))})))
|
||||||
|
|
Loading…
Reference in New Issue