Giter VIP home page Giter VIP logo

Comments (14)

PXNX avatar PXNX commented on August 29, 2024 6

Why isn't this client written in Kotlin? Makes code a bit nicer to read, gets rid of most NPEs und has somesyntactic sugar :)

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024 1

Whoever participating in the contest, make sure to not miss implementation suggestions in https://t.me/tgx_dev that will be posted with #contest hashtag.

They will not be the requirement in any kind – just suggestions that might help getting the idea and plan on completing some parts of the contest task.

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024 1

Submissions are closed and judges are now evaluating the results.

Here's the list of 11 participants: #188, #187, #180, #177, #182, #184, #179, #186, #183, #189, #185.

All APKs can be found in this channel: https://t.me/tgx_prs/148. Everyone is welcome to leave feedback and bug reports to developers inside of corresponding PR.

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024 1

Thanks everyone who participated in this contest.

PR #185 was chosen to be rolled out to users and merged in 9224e8b commit. Wanted to also note #183 who did a great job implementing 60fps reactions playback and better reaction animation curve ("fly out" and "land" animation), which can be tested in this APK: https://t.me/tgx_prs/297.

The main reasons #185 was chosen over #183 is that it implemented animations fully (such as animating all bubble width and height changes when reaction is set or unset, better buttons sorting, etc), had less frame drops and freezes on low-end devices (especially in channels with extensive amount of reactions set) and didn't override much of app's basic components only for the code style preferences (which is just an addition to the previous points, but not the key reason why it was chosen).

Follow https://t.me/contest for the final result announcement and any new upcoming contests.

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

Developers wishing to discuss the task and potential implementations are welcome to join https://t.me/tgx_dev chat.

P.S. Whoever else wishing to contribute Telegram X is welcome too.

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

Why isn't this client written in Kotlin? Makes code a bit nicer to read, gets rid of most NPEs und has somesyntactic sugar :)

Telegram X was created around 2014-2015, several years before Google announced first-class support for Kotlin. Telegram X uses Kotlin for some recent code though, e.g.: https://github.com/TGX-Android/Telegram-X/tree/main/vkryl

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

Icons required by the mockups are baseline_favorite and baseline_visibility in 20 and 24 dpi available in the Telegram X source code. If you are not sure whether it's 20 or 24 on the specific mockup, ask in the group (make sure to check if anyone else already asked about the same mockup).

To create an icon in the missing dimension just create a copy, edit android:width and android:width and file name suffix to match the desired dpi.

Circular checkbox is SimplestCheckBox β€” used in most parts of the app and you may find a lot of samples by checking out its usages.

For rectangular checkbox you would need a CheckBoxView. You most likely do not need to create it directly, but to use TYPE_CHECKBOX_OPTION item (check out its usages in the app for examples). Such item should be passed to SettingsAdapter instance (most commonly used by RecyclerViewController).

However, patching CheckBoxView (onDraw method specifically) would still be required in order to support an intermediate state needed by one of the mockups β€” state when checkbox mark angle increases from 90 to 180 degrees.

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

Some clarification on a grid reactions selector screen.

Behavior of the reactions settings from manage chat screen:

  1. When enabling some reaction by tap on the corresponding reaction, the overlay animation should play, the same one as in messages.
  2. When all reactions are selected, checkbox should be in βœ… state
  3. When some are not selected, it should be in βž– state
  4. When none, it should be empty
  5. When checkbox is at βœ… or βž– state, it should unselect all reactions
  6. Otherwise it should select all reactions

Behavior of quick reactions screen:

  1. Same as #1 in the previous section
  2. By default only πŸ‘ quick reaction is enabled
  3. The limit of available quick reactions is determined by developer.
  4. When trying to enable some quick reaction over reasonable limit (the amount at which point accessing it with gesture would become inconvenient or impossible), app should show the tooltip above it that limit reached.
  5. Enabling / disabling quick reactions should preserve the previously selected reactions, but exact behavior details are up to the developer

Below some additional animations examples for better understanding of the screens and intended animations.

TGX_AdditionalVideos.zip

Copy from https://t.me/tgx_dev/807

from telegram-x.

grishka avatar grishka commented on August 29, 2024

There will be no contest.com pages for this particular contest, right?

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

There will be no contest.com pages for this particular contest, right?

Soon they will be available there too.

from telegram-x.

PXNX avatar PXNX commented on August 29, 2024

There will be no contest.com pages for this particular contest, right?

There is: https://contest.com/android-x-r1

from telegram-x.

Sonofjoy avatar Sonofjoy commented on August 29, 2024

I think is nice so we should keep calm and carry on

from telegram-x.

vkryl avatar vkryl commented on August 29, 2024

Check out the results for the first round: πŸ† Telegram X Android Competition, Round 1 Results

Keeping this issue open until the 1st place will be determined.

from telegram-x.

seik0ixtem avatar seik0ixtem commented on August 29, 2024

can't see from discussion - can reactions be fully disabled on client on winner's PR?

it's the most annoying feature ever existed in telegram and i'm chosing alt clients where it can be disabled.

upd. inability to disable reactions client-wise - the second most annoying feature ever existed.

from telegram-x.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.