diff --git a/app/src/main/assets/style.css b/app/src/main/assets/style.css index c9b52477..7cbafd46 100644 --- a/app/src/main/assets/style.css +++ b/app/src/main/assets/style.css @@ -505,9 +505,15 @@ img height:auto !important; } -.embedded-video-play{ - display: block; - width: 5%; - opacity: 0.7; - z-index: 2; -} \ No newline at end of file +.yt { + position: relative; +} + +.embedded-video-play { + position: absolute; + top: 22%; + left: 10%; + width: 20%; + opacity: 0.7; + z-index: 2; +} diff --git a/app/src/main/java/gr/thmmy/mthmmy/activities/profile/ProfileParser.java b/app/src/main/java/gr/thmmy/mthmmy/activities/profile/ProfileParser.java index fab4e120..82b78d2b 100644 --- a/app/src/main/java/gr/thmmy/mthmmy/activities/profile/ProfileParser.java +++ b/app/src/main/java/gr/thmmy/mthmmy/activities/profile/ProfileParser.java @@ -115,13 +115,15 @@ class ProfileParser { break; pHtml = pHtml.replace( pHtml.substring(pHtml.indexOf("") + 9) - , "
" + , ""); } } diff --git a/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java b/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java index a2573910..c3784812 100644 --- a/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java +++ b/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java @@ -2,7 +2,6 @@ package gr.thmmy.mthmmy.activities.topic; import android.content.DialogInterface; import android.content.Intent; -import android.content.SharedPreferences; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; @@ -36,8 +35,6 @@ import mthmmy.utils.Report; import okhttp3.Request; import okhttp3.Response; -import static gr.thmmy.mthmmy.session.SessionManager.LOGGED_IN; - /** * Activity for topics. When creating an Intent of this activity you need to bundle a String * containing this topics's url using the key {@link #EXTRAS_TOPIC_URL} and a String containing @@ -200,7 +197,7 @@ public class TopicActivity extends BaseActivity { topicTask.cancel(true); } -//--------------------------------------BOTTOM NAV BAR METHODS-------------------------------------- + //--------------------------------------BOTTOM NAV BAR METHODS-------------------------------------- private void initIncrementButton(ImageButton increment, final int step) { // Increment once for a click increment.setOnClickListener(new View.OnClickListener() { @@ -333,7 +330,7 @@ public class TopicActivity extends BaseActivity { base_url = strings[0].substring(0, strings[0].lastIndexOf(".")); //This topic's base url String newPageUrl = strings[0]; - //Finds message focus if present + //Finds the index of message focus if present { postFocus = NO_POST_FOCUS; if (newPageUrl.contains("msg")) { @@ -345,33 +342,43 @@ public class TopicActivity extends BaseActivity { } } - if (!loadedPageUrl.contains(base_url)) { - loadedPageUrl = newPageUrl; - Request request = new Request.Builder() - .url(newPageUrl) - .build(); - try { - Response response = client.newCall(request).execute(); - document = Jsoup.parse(response.body().string()); - parse(document); - for (int i = 0; i < postsList.size(); ++i) { - if (postsList.get(i).getPostIndex() == postFocus) { - postFocusPosition = i; - break; - } - } - return SUCCESS; - } catch (IOException e) { - Report.i(TAG, "IO Exception", e); - return NETWORK_ERROR; - } catch (Exception e) { - Report.e(TAG, "Exception", e); - return OTHER_ERROR; - } - } else return SAME_PAGE; + //Checks if the page to be loaded is the one already shown + if (!Objects.equals(loadedPageUrl, "") && !loadedPageUrl.contains(base_url)) { + if (newPageUrl.contains("topicseen#new")) + if (Integer.parseInt(loadedPageUrl.substring(base_url.length())) == numberOfPages) + return SAME_PAGE; + if (Objects.equals(loadedPageUrl.substring(base_url.length()) + , newPageUrl.substring(base_url.length()))) + return SAME_PAGE; + } + + loadedPageUrl = newPageUrl; + Request request = new Request.Builder() + .url(newPageUrl) + .build(); + try { + Response response = client.newCall(request).execute(); + document = Jsoup.parse(response.body().string()); + parse(document); + return SUCCESS; + } catch (IOException e) { + Report.i(TAG, "IO Exception", e); + return NETWORK_ERROR; + } catch (Exception e) { + Report.e(TAG, "Exception", e); + return OTHER_ERROR; + } } protected void onPostExecute(Integer parseResult) { + //Finds the position of the focused message if present + for (int i = 0; i < postsList.size(); ++i) { + if (postsList.get(i).getPostIndex() == postFocus) { + postFocusPosition = i; + break; + } + } + switch (parseResult) { case SUCCESS: progressBar.setVisibility(ProgressBar.INVISIBLE); @@ -397,6 +404,7 @@ public class TopicActivity extends BaseActivity { Toast.makeText(getBaseContext(), "Network Error", Toast.LENGTH_SHORT).show(); break; case SAME_PAGE: + //TODO change focus break; default: //Parse failed - should never happen diff --git a/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicParser.java b/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicParser.java index 095a02b1..08a535b9 100644 --- a/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicParser.java +++ b/app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicParser.java @@ -211,13 +211,15 @@ class TopicParser { break; p_post = p_post.replace( p_post.substring(p_post.indexOf("") + 9) - , "
" + , ""); } } @@ -284,7 +286,7 @@ class TopicParser { try { attachedUrl = new URL(tmpAttachedFileUrlAndName.attr("href")); } catch (MalformedURLException e) { - Report.e(TAG,"Attached file malformed url", e); + Report.e(TAG, "Attached file malformed url", e); break; } String attachedFileName = tmpAttachedFileUrlAndName.text().substring(1); @@ -296,7 +298,7 @@ class TopicParser { String attachedFileInfo = postAttachmentsTextSbstr.substring(attachedFileName .length(), postAttachmentsTextSbstr.indexOf("φορές.")) + "φορές.)"; - p_attachedFiles.add(new ThmmyFile(attachedUrl,attachedFileName,attachedFileInfo)); + p_attachedFiles.add(new ThmmyFile(attachedUrl, attachedFileName, attachedFileInfo)); } } } else { @@ -344,7 +346,7 @@ class TopicParser { try { attachedUrl = new URL(tmpAttachedFileUrlAndName.attr("href")); } catch (MalformedURLException e) { - Report.e(TAG,"Attached file malformed url", e); + Report.e(TAG, "Attached file malformed url", e); break; } String attachedFileName = tmpAttachedFileUrlAndName.text().substring(1); @@ -356,7 +358,7 @@ class TopicParser { String attachedFileInfo = postAttachmentsTextSbstr.substring(attachedFileName .length(), postAttachmentsTextSbstr.indexOf("times.")) + "times.)"; - p_attachedFiles.add(new ThmmyFile(attachedUrl,attachedFileName,attachedFileInfo)); + p_attachedFiles.add(new ThmmyFile(attachedUrl, attachedFileName, attachedFileInfo)); } } } @@ -453,6 +455,7 @@ class TopicParser { * Returns one of the supported forum languages. *

Forum supports:

  • {@link #LANGUAGE_ENGLISH}
  • *
  • {@link #LANGUAGE_GREEK}

+ * * @param topic {@link Document} object containing this topic's source code * @return String containing the language of a topic * @see org.jsoup.Jsoup Jsoup @@ -467,6 +470,7 @@ class TopicParser { /** * Returns the color of a user according to user's rank on forum. + * * @param starsUrl String containing the URL of a user's stars * @return an int corresponding to the right color */