Brion VIBBER has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/115321

Change subject: Only add event handler once; after edit we may reload multiple 
times
......................................................................

Only add event handler once; after edit we may reload multiple times

This was causing multiple calls to section request/display.

Change-Id: Ie73e0cbe991691613138955d39e0908b6048db84
---
M wikipedia/src/main/java/org/wikipedia/page/PageViewFragment.java
1 file changed, 16 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia 
refs/changes/21/115321/1

diff --git a/wikipedia/src/main/java/org/wikipedia/page/PageViewFragment.java 
b/wikipedia/src/main/java/org/wikipedia/page/PageViewFragment.java
index 8c5e16a..9329271 100644
--- a/wikipedia/src/main/java/org/wikipedia/page/PageViewFragment.java
+++ b/wikipedia/src/main/java/org/wikipedia/page/PageViewFragment.java
@@ -95,22 +95,6 @@
     }
 
     private void populateNonLeadSections(final Page page) {
-        bridge.addListener("requestSection", new 
CommunicationBridge.JSEventListener() {
-            @Override
-            public void onMessage(String messageType, JSONObject 
messagePayload) {
-                try {
-                    int index = messagePayload.optInt("index");
-                    JSONObject wrapper = new JSONObject();
-                    wrapper.put("section", 
page.getSections().get(index).toJSON());
-                    wrapper.put("index", index);
-                    wrapper.put("isLast", index == page.getSections().size() - 
1);
-                    bridge.sendMessage("displaySection", wrapper);
-                } catch (JSONException e) {
-                    // Won't happen
-                    throw new RuntimeException(e);
-                }
-            }
-        });
         editHandler = new EditHandler(this, bridge, page);
         bridge.sendMessage("startSectionsDisplay", new JSONObject());
     }
@@ -161,6 +145,22 @@
 
         bridge = new CommunicationBridge(webView, 
"file:///android_asset/index.html");
         Utils.addUtilityMethodsToBridge(getActivity(), bridge);
+        bridge.addListener("requestSection", new 
CommunicationBridge.JSEventListener() {
+            @Override
+            public void onMessage(String messageType, JSONObject 
messagePayload) {
+                try {
+                    int index = messagePayload.optInt("index");
+                    JSONObject wrapper = new JSONObject();
+                    wrapper.put("section", 
page.getSections().get(index).toJSON());
+                    wrapper.put("index", index);
+                    wrapper.put("isLast", index == page.getSections().size() - 
1);
+                    bridge.sendMessage("displaySection", wrapper);
+                } catch (JSONException e) {
+                    // Won't happen
+                    throw new RuntimeException(e);
+                }
+            }
+        });
         linkHandler = new LinkHandler(getActivity(), bridge, title.getSite());
         app = (WikipediaApp)getActivity().getApplicationContext();
         api = 
((WikipediaApp)getActivity().getApplicationContext()).getAPIForSite(title.getSite());

-- 
To view, visit https://gerrit.wikimedia.org/r/115321
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie73e0cbe991691613138955d39e0908b6048db84
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Brion VIBBER <br...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to