Commit Graph

18880 Commits

Author SHA1 Message Date
23rd 527e742a89 Fixed ability to process of credits payment with good credits balance.
Regression was introduced: ae851b8733.
2026-02-01 08:50:58 +03:00
Ilya Fedin 54683b2d21 Decompose countInitialGeomety from MainWindow 2026-01-31 20:21:48 +04:00
Ilya Fedin d33293ba6b Add name argument to PositionWithScreen 2026-01-31 20:21:48 +04:00
Iaroslav 64c5796d1a fix: fixed touchpad-scrolling emoji packs while setting emoji status in main menu 2026-01-31 18:37:56 +04:00
John Preston f9699e19af Beta version 6.4.4.
- Fix crash in topic group opening.
- Show correct profile colors preview when edit.
- Strip quote entities in media viewer.
2026-01-31 18:36:44 +04:00
John Preston c215b9fd5f Fix crash in topic group opening. 2026-01-29 18:20:40 +04:00
John Preston 46cb49865a Show correct profile colors preview when edit. 2026-01-29 18:20:40 +04:00
John Preston e4c7d62012 Activate window with shown nft. 2026-01-29 18:20:40 +04:00
John Preston 85167d34e9 Strip quote entities in media viewer.
They may be collapsed with no way to expand them.
2026-01-29 18:20:40 +04:00
John Preston 0e7a20fe9f Close mediaview when opening nft links. 2026-01-29 18:20:40 +04:00
John Preston f9f3778a4a Beta version 6.4.3.
- Search in Settings.
2026-01-29 18:20:40 +04:00
John Preston 49be0d2679 Fix build with GCC. 2026-01-29 18:20:40 +04:00
John Preston f7f3539f48 Fix build with Xcode. 2026-01-29 18:20:40 +04:00
John Preston e537279692 Fix build with Xcode. 2026-01-28 14:22:17 +04:00
John Preston a111727302 Fix build with Qt 5. 2026-01-28 13:03:15 +04:00
Ilya Fedin 0729bd7f83 Initial screen from geometry 2026-01-28 11:59:01 +04:00
John Preston 27e1867346 Delete old faq entries. 2026-01-28 11:55:22 +04:00
John Preston ecae9c7794 Add separate lang key for FAQ search result subtitles.
Use shorter 'FAQ' prefix for search results instead of full
'Telegram FAQ' that's used for the main FAQ button label.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 594dc126e7 Index FAQ entries together with settings entries.
Now FAQ entries appear in filtered search results when the query
matches, not just when query is empty. Uses same button cache and
first-letter index for both settings and FAQ entries.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston fafe2f96c1 Restore settings search query on return. 2026-01-28 11:55:21 +04:00
John Preston 4c2e73a3ae Show FAQ entries as default search results. 2026-01-28 11:55:21 +04:00
John Preston eff86fc84d Cache and reuse search result buttons in settings.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 55624b3410 Fix Ctrl+F in settings. 2026-01-28 11:55:21 +04:00
John Preston e022c6e0f9 Optimize settings search with first-letter index.
Build search index once when the section is created instead
of recomputing on every query. Use first-letter lookup for
O(1) candidate filtering, following the pattern from theme
editor's searchByQuery implementation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 16442e2013 Preserve search query on navigation in settings.
Use the stepDataReference mechanism to save and restore the
search query when navigating from results to a section and back.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 38832396bc Implement smart sorting for settings search results.
Sort results by match count (descending), then by parent chain
depth (ascending), and finally alphabetically by title.
2026-01-28 11:55:21 +04:00
John Preston b60f6b0705 Implement word-based matching in settings search.
Use TextUtilities::PrepareSearchWords() to normalize query and
entry text: split into words, remove accents, and lowercase.
Match by word prefix: each query word must match at least one
entry word by startsWith().

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston f822d23509 Support Ctrl+F shortcut in settings to open search. 2026-01-28 11:55:21 +04:00
John Preston 55d43e7cad Fix search highlighting across settings sections. 2026-01-28 11:55:21 +04:00
John Preston af28ef7c94 Don't index section buttons in settings search. 2026-01-28 11:55:21 +04:00
John Preston 81b095e73d Improve subtitles for settings section entries. 2026-01-28 11:55:21 +04:00
John Preston 49253a9586 Fix deeplink settings search entries. 2026-01-28 11:55:21 +04:00
John Preston 374b877323 Add Profile Photo search entry.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 2b5732f586 Add deeplink support for search entries.
SearchEntry now has an optional `deeplink` field. When set, clicking
the search result activates the deeplink URL instead of navigating.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 38d8aa2a33 Fix interface scale highlighting.
The custom build method in Main::setupContent() was missing the
HighlightRegistry setup, so widgets added via builder.add() with
search entries weren't being registered for highlighting.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston ead60ebfcd Fix Chat::Id() → ChatId() in settings.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston d2933428a4 Fix search result subtitles.
sectionPath() was starting with parentId instead of the section itself,
causing subtitles to skip the section name the entry belongs to.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 0d88925f83 Remove SectionBuildMethod exports from headers
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston f5319724e3 Move Settings::PrivacySecurity class to anonymous namespace
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston d37216815d Move Settings::Notifications class to anonymous namespace
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 4982814d36 Move Settings::Chat class to anonymous namespace
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston e84e8a7cf6 Move Settings::Advanced class to anonymous namespace
- Move Advanced class definition into .cpp file anonymous namespace
- Export only Type AdvancedId() in header
- Keep exported helper functions (SetupConnectionType, HasUpdate, etc.)
- Remove unused SetupWindowCloseBehaviorContent declaration
- Update callers to use AdvancedId() instead of Advanced::Id()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 480dcd8a7a Move Settings::Main class to anonymous namespace
- Move Main class definition from header to .cpp file
- Export only Type MainId() from header
- Update all external references from Main::Id() to MainId()
- Remove Builder::MainSection export from namespace
- Add missing includes for settings_common_session.h where needed

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 6bda4dd0d8 Upgrade settings_local_passcode to full builder pattern
- Move LocalPasscodeManage class into anonymous namespace
- Remove Builder::LocalPasscodeManageSection export from header
- Use inline buildMethod for setupContent()
- Keep Create/Check/Change enter-type sections as-is (form-based)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 18114458b8 Upgrade settings_calls to full builder pattern
- Move Calls class to anonymous namespace in .cpp
- Export only Type CallsId() from header
- Move AddCameraSubsection to be a free function (exported)
- Keep all device helper functions exported
- Update all references to use CallsId() and AddCameraSubsection()
- Add missing include to calls_group_settings.cpp

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:21 +04:00
John Preston 7e5b85c4b3 Upgrade settings_information to full builder pattern
- Move Information class to anonymous namespace in .cpp
- Export only Type InformationId() from header
- Keep exported helpers: SetupAccounts, UpdatePhotoLocally, Badge::*
- Use custom buildMethod with HighlightRegistry for all profile widgets
- Update all references to use InformationId() instead of Information::Id()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 4199bba706 Upgrade settings_shortcuts to full builder pattern
- Move Shortcuts class to anonymous namespace in .cpp
- Export only Type ShortcutsId() from header
- Use custom buildMethod with HighlightRegistry for reset button
- Update settings_chat.cpp to use ShortcutsId() instead of Shortcuts::Id()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston d7fa4048c1 Upgrade settings_websites to full builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 20408aa531 Upgrade settings_premium to full builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 518993cb4c Upgrade settings_notifications_type to full builder pattern
- Move widget creation into BuildNotificationsTypeContent() builder function
- Use builder.add() with widget and search callbacks for indexed controls
- Update setupContent() to use build() with custom buildMethod that captures _type
- Remove manual highlight tracking (QPointer fields and showFinished() registrations)
- Class remains in header due to parameterized constructor (takes Notify type)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00