[go: nahoru, domu]

Skip to content

Commit

Permalink
Squashed 'libs/editor/' changes from d99856b..69aaa8a
Browse files Browse the repository at this point in the history
69aaa8a rename Media/Image events
adc9012 Replace optional listener by a onTrackableEvent method in the main listener
cd16322 move EditorFragmentOptionalListener to a subclass
4b144de remove analytics - use an optional listener instead

git-subtree-dir: libs/editor
git-subtree-split: 69aaa8aa8ee30816d72f14acb340f7645a368d40
  • Loading branch information
maxme committed Feb 15, 2016
1 parent c0c935f commit 097b51b
Show file tree
Hide file tree
Showing 5 changed files with 54 additions and 32 deletions.
1 change: 0 additions & 1 deletion WordPressEditor/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ android {
dependencies {
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
compile 'org.wordpress:analytics:1.2.0'
compile 'org.wordpress:utils:1.7.0'

// Test libraries
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@

import org.json.JSONException;
import org.json.JSONObject;
import org.wordpress.android.analytics.AnalyticsTracker;
import org.wordpress.android.analytics.AnalyticsTracker.Stat;
import org.wordpress.android.util.AppLog;
import org.wordpress.android.util.AppLog.T;
import org.wordpress.android.util.JSONUtils;
Expand Down Expand Up @@ -389,7 +387,7 @@ protected void initJsEditor() {
public void onClick(View v) {
int id = v.getId();
if (id == R.id.format_bar_button_html) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_HTML);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.HTML_BUTTON_TAPPED);

// Don't switch to HTML mode if currently uploading media
if (!mUploadingMediaIds.isEmpty()) {
Expand Down Expand Up @@ -431,7 +429,7 @@ public void onClick(View v) {
mWebView.execJavaScriptFromString("ZSSEditor.getField('zss_field_content').focus();");
}
} else if (id == R.id.format_bar_button_media) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_IMAGE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.MEDIA_BUTTON_TAPPED);
((ToggleButton) v).setChecked(false);

if (mSourceView.getVisibility() == View.VISIBLE) {
Expand All @@ -446,10 +444,10 @@ public void onClick(View v) {
if (!((ToggleButton) v).isChecked()) {
// The link button was checked when it was pressed; remove the current link
mWebView.execJavaScriptFromString("ZSSEditor.unlink();");
AnalyticsTracker.track(Stat.EDITOR_TAPPED_UNLINK);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.UNLINK_BUTTON_TAPPED);
return;
}
AnalyticsTracker.track(Stat.EDITOR_TAPPED_LINK);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.LINK_BUTTON_TAPPED);

((ToggleButton) v).setChecked(false);

Expand Down Expand Up @@ -740,13 +738,13 @@ public void run() {
if (URLUtil.isNetworkUrl(mediaUrl)) {
String mediaId = mediaFile.getMediaId();
mWebView.execJavaScriptFromString("ZSSEditor.insertImage('" + mediaUrl + "', '" + mediaId + "');");
AnalyticsTracker.track(Stat.EDITOR_ADDED_PHOTO_VIA_WP_MEDIA_LIBRARY);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.NETWORK_IMAGE_ADDED);
} else {
String id = mediaFile.getMediaId();
mWebView.execJavaScriptFromString("ZSSEditor.insertLocalImage(" + id + ", '" + mediaUrl + "');");
mWebView.execJavaScriptFromString("ZSSEditor.setProgressOnImage(" + id + ", " + 0 + ");");
mUploadingMediaIds.add(id);
AnalyticsTracker.track(Stat.EDITOR_ADDED_PHOTO_VIA_LOCAL_LIBRARY);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.LOCAL_IMAGE_ADDED);
}
}
});
Expand Down Expand Up @@ -834,7 +832,7 @@ public void onMediaUploadFailed(final String mediaId) {
mWebView.post(new Runnable() {
@Override
public void run() {
AnalyticsTracker.track(Stat.EDITOR_UPLOAD_MEDIA_FAILED);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.UPLOAD_IMAGE_FAILED);
mWebView.execJavaScriptFromString("ZSSEditor.markImageUploadFailed(" + mediaId + ");");
mFailedMediaIds.add(mediaId);
mUploadingMediaIds.remove(mediaId);
Expand Down Expand Up @@ -993,7 +991,7 @@ public void onClick(DialogInterface dialog, int id) {
mWebView.post(new Runnable() {
@Override
public void run() {
AnalyticsTracker.track(Stat.EDITOR_UPLOAD_MEDIA_RETRIED);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.UPLOAD_IMAGE_RETRIED);
mWebView.execJavaScriptFromString("ZSSEditor.unmarkImageUploadFailed(" + mediaId + ");");
mWebView.execJavaScriptFromString("ZSSEditor.setProgressOnImage(" + mediaId + ", " + 0 + ");");
mFailedMediaIds.remove(mediaId);
Expand All @@ -1008,7 +1006,7 @@ public void run() {
if (fragmentManager.findFragmentByTag(ImageSettingsDialogFragment.IMAGE_SETTINGS_DIALOG_TAG) != null) {
return;
}
AnalyticsTracker.track(Stat.EDITOR_EDITED_IMAGE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.IMAGE_EDITED);
ImageSettingsDialogFragment imageSettingsDialogFragment = new ImageSettingsDialogFragment();
imageSettingsDialogFragment.setTargetFragment(this,
ImageSettingsDialogFragment.IMAGE_SETTINGS_DIALOG_REQUEST_CODE);
Expand Down Expand Up @@ -1175,28 +1173,28 @@ private void clearFormatBarButtons() {

private void onFormattingButtonClicked(ToggleButton toggleButton) {
String tag = toggleButton.getTag().toString();
trackFormattingButtonClicked(toggleButton);
buttonTappedListener(toggleButton);
if (mWebView.getVisibility() == View.VISIBLE) {
mWebView.execJavaScriptFromString("ZSSEditor.set" + StringUtils.capitalize(tag) + "();");
} else {
applyFormattingHtmlMode(toggleButton, tag);
}
}

private void trackFormattingButtonClicked(ToggleButton toggleButton) {
private void buttonTappedListener(ToggleButton toggleButton) {
int id = toggleButton.getId();
if (id == R.id.format_bar_button_bold) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_BOLD);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.BOLD_BUTTON_TAPPED);
} else if (id == R.id.format_bar_button_italic) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_ITALIC);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.ITALIC_BUTTON_TAPPED);
} else if (id == R.id.format_bar_button_ol) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_ORDERED_LIST);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.OL_BUTTON_TAPPED);
} else if (id == R.id.format_bar_button_ul) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_UNORDERED_LIST);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.UL_BUTTON_TAPPED);
} else if (id == R.id.format_bar_button_quote) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_BLOCKQUOTE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.BLOCKQUOTE_BUTTON_TAPPED);
} else if (id == R.id.format_bar_button_strikethrough) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_STRIKETHROUGH);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.STRIKETHROUGH_BUTTON_TAPPED);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;

import android.text.Spanned;

import com.android.volley.toolbox.ImageLoader;
Expand All @@ -12,7 +11,6 @@
import org.wordpress.android.util.helpers.MediaGallery;

import java.util.HashMap;
import java.util.Map;

public abstract class EditorFragmentAbstract extends Fragment {
public abstract void setTitle(CharSequence text);
Expand Down Expand Up @@ -131,5 +129,26 @@ public interface EditorFragmentListener {
String onAuthHeaderRequested(String url);
// TODO: remove saveMediaFile, it's currently needed for the legacy editor
void saveMediaFile(MediaFile mediaFile);
void onTrackableEvent(TrackableEvent event);
}

public enum TrackableEvent {
HTML_BUTTON_TAPPED,
UNLINK_BUTTON_TAPPED,
LINK_BUTTON_TAPPED,
MEDIA_BUTTON_TAPPED,
NETWORK_IMAGE_ADDED,
LOCAL_IMAGE_ADDED,
UPLOAD_IMAGE_FAILED,
UPLOAD_IMAGE_RETRIED,
IMAGE_EDITED,
BOLD_BUTTON_TAPPED,
ITALIC_BUTTON_TAPPED,
OL_BUTTON_TAPPED,
UL_BUTTON_TAPPED,
BLOCKQUOTE_BUTTON_TAPPED,
STRIKETHROUGH_BUTTON_TAPPED,
UNDERLINE_BUTTON_TAPPED,
MORE_BUTTON_TAPPED
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,6 @@
import com.android.volley.VolleyError;
import com.android.volley.toolbox.ImageLoader;

import org.wordpress.android.analytics.AnalyticsTracker;
import org.wordpress.android.analytics.AnalyticsTracker.Stat;
import org.wordpress.android.editor.legacy.EditLinkActivity;
import org.wordpress.android.editor.legacy.WPEditImageSpan;
import org.wordpress.android.util.AppLog;
Expand Down Expand Up @@ -415,22 +413,22 @@ private void createLinkFromSelection(String linkURL, String linkText) {
public void onClick(View v) {
int id = v.getId();
if (id == R.id.bold) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_BOLD);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.BOLD_BUTTON_TAPPED);
onFormatButtonClick(mBoldToggleButton, TAG_FORMAT_BAR_BUTTON_STRONG);
} else if (id == R.id.em) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_ITALIC);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.ITALIC_BUTTON_TAPPED);
onFormatButtonClick(mEmToggleButton, TAG_FORMAT_BAR_BUTTON_EM);
} else if (id == R.id.underline) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_UNDERLINE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.UNDERLINE_BUTTON_TAPPED);
onFormatButtonClick(mUnderlineToggleButton, TAG_FORMAT_BAR_BUTTON_UNDERLINE);
} else if (id == R.id.strike) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_STRIKETHROUGH);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.STRIKETHROUGH_BUTTON_TAPPED);
onFormatButtonClick(mStrikeToggleButton, TAG_FORMAT_BAR_BUTTON_STRIKE);
} else if (id == R.id.bquote) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_BLOCKQUOTE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.BLOCKQUOTE_BUTTON_TAPPED);
onFormatButtonClick(mBquoteToggleButton, TAG_FORMAT_BAR_BUTTON_QUOTE);
} else if (id == R.id.more) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_MORE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.MORE_BUTTON_TAPPED);
mSelectionEnd = mContentEditText.getSelectionEnd();
Editable str = mContentEditText.getText();
if (str != null) {
Expand All @@ -439,7 +437,7 @@ public void onClick(View v) {
str.insert(mSelectionEnd, "\n<!--more-->\n");
}
} else if (id == R.id.link) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_LINK);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.LINK_BUTTON_TAPPED);
mSelectionStart = mContentEditText.getSelectionStart();
mStyleStart = mSelectionStart;
mSelectionEnd = mContentEditText.getSelectionEnd();
Expand All @@ -457,7 +455,7 @@ public void onClick(View v) {
}
startActivityForResult(i, ACTIVITY_REQUEST_CODE_CREATE_LINK);
} else if (id == R.id.addPictureButton) {
AnalyticsTracker.track(Stat.EDITOR_TAPPED_IMAGE);
mEditorFragmentListener.onTrackableEvent(TrackableEvent.MEDIA_BUTTON_TAPPED);
mEditorFragmentListener.onAddMediaClicked();
if (isAdded()) {
getActivity().openContextMenu(mAddPictureButton);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,11 @@

import org.wordpress.android.editor.EditorFragmentAbstract;
import org.wordpress.android.editor.EditorFragmentAbstract.EditorFragmentListener;
import org.wordpress.android.editor.EditorFragmentAbstract.TrackableEvent;
import org.wordpress.android.editor.EditorMediaUploadListener;
import org.wordpress.android.editor.ImageSettingsDialogFragment;
import org.wordpress.android.util.AppLog;
import org.wordpress.android.util.AppLog.T;
import org.wordpress.android.util.ToastUtils;
import org.wordpress.android.util.helpers.MediaFile;

Expand Down Expand Up @@ -195,6 +198,11 @@ public void saveMediaFile(MediaFile mediaFile) {
// TODO
}

@Override
public void onTrackableEvent(TrackableEvent event) {
AppLog.d(T.EDITOR, "Trackable event: " + event);
}

private void simulateFileUpload(final String mediaId, final String mediaUrl) {
Thread thread = new Thread() {
@Override
Expand Down

0 comments on commit 097b51b

Please sign in to comment.