kopia lustrzana https://github.com/ryukoposting/Signal-Android
More accurate timings of conversation-open component.
rodzic
604f6709db
commit
cb906edd11
|
@ -340,6 +340,8 @@ public class ConversationFragment extends LoggingFragment implements Multiselect
|
||||||
|
|
||||||
disposables.add(conversationViewModel.getChatColors().subscribe(recyclerViewColorizer::setChatColors));
|
disposables.add(conversationViewModel.getChatColors().subscribe(recyclerViewColorizer::setChatColors));
|
||||||
disposables.add(conversationViewModel.getMessageData().subscribe(messageData -> {
|
disposables.add(conversationViewModel.getMessageData().subscribe(messageData -> {
|
||||||
|
SignalLocalMetrics.ConversationOpen.onDataPostedToMain();
|
||||||
|
|
||||||
ConversationAdapter adapter = getListAdapter();
|
ConversationAdapter adapter = getListAdapter();
|
||||||
if (adapter != null) {
|
if (adapter != null) {
|
||||||
List<ConversationMessage> messages = messageData.getMessages();
|
List<ConversationMessage> messages = messageData.getMessages();
|
||||||
|
@ -695,7 +697,6 @@ public class ConversationFragment extends LoggingFragment implements Multiselect
|
||||||
public void onItemRangeInserted(int positionStart, int itemCount) {
|
public void onItemRangeInserted(int positionStart, int itemCount) {
|
||||||
adapter.unregisterAdapterDataObserver(this);
|
adapter.unregisterAdapterDataObserver(this);
|
||||||
startupStopwatch.split("data-set");
|
startupStopwatch.split("data-set");
|
||||||
SignalLocalMetrics.ConversationOpen.onDataLoaded();
|
|
||||||
list.post(() -> {
|
list.post(() -> {
|
||||||
startupStopwatch.split("first-render");
|
startupStopwatch.split("first-render");
|
||||||
startupStopwatch.stop(TAG);
|
startupStopwatch.stop(TAG);
|
||||||
|
|
|
@ -185,7 +185,8 @@ public class ConversationViewModel extends ViewModel {
|
||||||
return pagedData.getData();
|
return pagedData.getData();
|
||||||
})
|
})
|
||||||
.observeOn(Schedulers.io())
|
.observeOn(Schedulers.io())
|
||||||
.withLatestFrom(conversationMetadata, (messages, metadata) -> new MessageData(metadata, messages));
|
.withLatestFrom(conversationMetadata, (messages, metadata) -> new MessageData(metadata, messages))
|
||||||
|
.doOnNext(a -> SignalLocalMetrics.ConversationOpen.onDataLoaded());
|
||||||
|
|
||||||
Observable<Recipient> liveRecipient = recipientId.distinctUntilChanged().switchMap(id -> Recipient.live(id).asObservable());
|
Observable<Recipient> liveRecipient = recipientId.distinctUntilChanged().switchMap(id -> Recipient.live(id).asObservable());
|
||||||
|
|
||||||
|
|
|
@ -75,6 +75,7 @@ public final class SignalLocalMetrics {
|
||||||
private static final String SPLIT_VIEWMODEL_INIT = "viewmodel-init";
|
private static final String SPLIT_VIEWMODEL_INIT = "viewmodel-init";
|
||||||
private static final String SPLIT_METADATA_LOADED = "metadata-loaded";
|
private static final String SPLIT_METADATA_LOADED = "metadata-loaded";
|
||||||
private static final String SPLIT_DATA_LOADED = "data-loaded";
|
private static final String SPLIT_DATA_LOADED = "data-loaded";
|
||||||
|
private static final String SPLIT_DATA_POSTED = "data-posted";
|
||||||
private static final String SPLIT_RENDER = "render";
|
private static final String SPLIT_RENDER = "render";
|
||||||
|
|
||||||
private static String id;
|
private static String id;
|
||||||
|
@ -96,6 +97,10 @@ public final class SignalLocalMetrics {
|
||||||
LocalMetrics.getInstance().split(id, SPLIT_DATA_LOADED);
|
LocalMetrics.getInstance().split(id, SPLIT_DATA_LOADED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void onDataPostedToMain() {
|
||||||
|
LocalMetrics.getInstance().split(id, SPLIT_DATA_POSTED);
|
||||||
|
}
|
||||||
|
|
||||||
public static void onRenderFinished() {
|
public static void onRenderFinished() {
|
||||||
LocalMetrics.getInstance().split(id, SPLIT_RENDER);
|
LocalMetrics.getInstance().split(id, SPLIT_RENDER);
|
||||||
LocalMetrics.getInstance().end(id);
|
LocalMetrics.getInstance().end(id);
|
||||||
|
|
Ładowanie…
Reference in New Issue