Tpt has uploaded a new change for review.
https://gerrit.wikimedia.org/r/95801
Change subject: Make code site relative
......................................................................
Make code site relative
Allows to open and brows non default site pages
Change-Id: I45e1526e9a6a34c59e1a98dc64c908aa99bb0fb2
---
M wikipedia/src/main/java/org/wikimedia/wikipedia/LinkHandler.java
M wikipedia/src/main/java/org/wikimedia/wikipedia/PageViewFragment.java
M wikipedia/src/main/java/org/wikimedia/wikipedia/WikipediaApp.java
3 files changed, 12 insertions(+), 11 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia
refs/changes/01/95801/1
diff --git a/wikipedia/src/main/java/org/wikimedia/wikipedia/LinkHandler.java
b/wikipedia/src/main/java/org/wikimedia/wikipedia/LinkHandler.java
index b71a1e1..6083ceb 100644
--- a/wikipedia/src/main/java/org/wikimedia/wikipedia/LinkHandler.java
+++ b/wikipedia/src/main/java/org/wikimedia/wikipedia/LinkHandler.java
@@ -16,13 +16,13 @@
private final Context context;
private final CommunicationBridge bridge;
private final Bus bus;
- private final WikipediaApp app;
+ private final Site currentSite;
- public LinkHandler(Context context, CommunicationBridge bridge) {
+ public LinkHandler(Context context, CommunicationBridge bridge, Site
currentSite) {
this.context = context;
this.bridge = bridge;
- this.app = ((WikipediaApp)context.getApplicationContext());
- this.bus = app.getBus();
+ this.bus = ((WikipediaApp)context.getApplicationContext()).getBus();
+ this.currentSite = currentSite;
this.bridge.addListener("linkClicked", this);
}
@@ -45,7 +45,7 @@
Log.d("Wikipedia", "Link clicked was " + href);
if (href.startsWith("/wiki/")) {
// TODO: Handle fragments
- bus.post(new
NewWikiPageNavigationEvent(app.getPrimarySite().titleForInternalLink(href)));
+ bus.post(new
NewWikiPageNavigationEvent(currentSite.titleForInternalLink(href)));
} else {
// Assume everything else is an external link... for now!
handleExternalLink(href);
diff --git
a/wikipedia/src/main/java/org/wikimedia/wikipedia/PageViewFragment.java
b/wikipedia/src/main/java/org/wikimedia/wikipedia/PageViewFragment.java
index 38d6eb5..ed20533 100644
--- a/wikipedia/src/main/java/org/wikimedia/wikipedia/PageViewFragment.java
+++ b/wikipedia/src/main/java/org/wikimedia/wikipedia/PageViewFragment.java
@@ -83,7 +83,7 @@
webView.getSettings().setDisplayZoomControls(false);
bridge = new CommunicationBridge(webView,
"file:///android_asset/index.html");
- linkHandler = new LinkHandler(getActivity(), bridge);
+ linkHandler = new LinkHandler(getActivity(), bridge, title.getSite());
if (savedInstanceState != null &&
savedInstanceState.containsKey(KEY_TITLE)) {
title = savedInstanceState.getParcelable(KEY_TITLE);
@@ -96,7 +96,7 @@
}
if (page == null) {
- Api api =
((WikipediaApp)getActivity().getApplicationContext()).getPrimarySiteAPI();
+ Api api =
((WikipediaApp)getActivity().getApplicationContext()).getAPIForSite(title.getSite());
new PageFetchTask(api, title) {
@Override
public void onFinish(Page result) {
diff --git a/wikipedia/src/main/java/org/wikimedia/wikipedia/WikipediaApp.java
b/wikipedia/src/main/java/org/wikimedia/wikipedia/WikipediaApp.java
index 621d9d9..ad071b5 100644
--- a/wikipedia/src/main/java/org/wikimedia/wikipedia/WikipediaApp.java
+++ b/wikipedia/src/main/java/org/wikimedia/wikipedia/WikipediaApp.java
@@ -27,10 +27,6 @@
return bus;
}
- public Api getPrimarySiteAPI() {
- return getAPIForSite(getPrimarySite());
- }
-
private HashMap<String, Api> apis = new HashMap<String, Api>();
public Api getAPIForSite(Site site) {
if (!apis.containsKey(site.getDomain())) {
@@ -40,6 +36,11 @@
}
private Site primarySite;
+
+ /**
+ * Default site of the application
+ * You should use PageTitle.getSite() to get the currently browsed site
+ */
public Site getPrimarySite() {
if (primarySite == null) {
// FIXME: Actually read from SharedPreferences or something
--
To view, visit https://gerrit.wikimedia.org/r/95801
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I45e1526e9a6a34c59e1a98dc64c908aa99bb0fb2
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Tpt <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits