Commit Graph

59 Commits

Author SHA1 Message Date
John Preston 3621dc754a Add premium promo for disable sharing. 2026-02-28 19:07:10 +04:00
John Preston 75636d69ff Return "When window closed" setting section.
Fixes #30284.
2026-02-28 19:07:09 +04:00
23rd 1848748118 Fixed build. 2026-02-28 19:07:08 +04:00
John Preston cfc8d28a59 Fix autoupdate/dictionaries show/hide in settings. 2026-02-13 11:56:47 +04:00
John Preston 51d2276259 Fix adding recommended folders. 2026-02-09 21:52:09 +04:00
John Preston d1caea2a3a Fix some deep link highlights. 2026-02-09 21:52:09 +04:00
John Preston 0d4a6f8e8d Remove dead code, return Login Email button. 2026-02-09 21:52:08 +04:00
John Preston 63e21abb60 Fix premium star layout in Settings. 2026-02-06 13:24:43 +04:00
John Preston aab3ad6bc0 Fix changing ANGLE backend in Settings. 2026-02-06 13:24:42 +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 4c2e73a3ae Show FAQ entries as default search results. 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 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 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 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
John Preston 8a017226c3 Upgrade settings_passkeys to full builder pattern
- Move create passkey button to builder.addButton() with proper ID
- Use builder.add() for dynamic passkeys list
- Move Passkeys class from header to .cpp (anonymous namespace)
- Remove extern SectionBuildMethod from header
- Have setupContent() call build() with custom build method
- Simplify header to only export Type PasskeysId() and PasskeysNoneBox()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 31f3d6810d Upgrade settings_credits to full builder pattern
- Move stats/gift/earn buttons to builder.addButton() with proper IDs
- Use builder.add() for dynamic subscriptions/history lists
- Have setupContent() call build(content, buildMethod)
- Remove extern SectionBuildMethod from header
- Extract BuildCurrencyWithdrawalSection helper function
- Add forward declarations for builder functions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston ac5b9a3e78 Upgrade settings_business to full builder pattern
- Add BusinessState struct for shared state between setupContent and builder
- Update setupContent() to call build() with custom method
- Remove duplicate widget creation code
- Use state->setPaused and state->sponsoredButton instead of class members
- Remove extern SectionBuildMethod from header

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston cde0a11c74 Upgrade settings_global_ttl to full builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston b0ddca72ae Upgrade settings_blocked_peers to full builder pattern
Move Blocked class to anonymous namespace in .cpp, export only
Type BlockedPeersId() in header. Remove extern SectionBuildMethod
from header. Update references in privacy_security and deep_links.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 7dbeb56111 Upgrade settings_active_sessions to full builder pattern
- Move Sessions class to anonymous namespace in .cpp file
- Export only Type SessionsId() in header
- Use builder pattern with custom buildMethod for widget creation
- Handle highlights registration through WidgetContext
- Rename local Type enum to DeviceType to avoid conflict with Settings::Type
- Update all references to Sessions::Id() in other files to use SessionsId()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston df347ad0f4 Upgrade settings_folders to full builder pattern
- Move Folders class to anonymous namespace in .cpp
- Export only Type FoldersId() from header
- setupContent() uses custom SectionBuildMethod capturing state
- Widget creation through builder.add() callbacks
- Highlight registration via push_back

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 4c5cf47bc9 Rewrite settings_websites to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 53cb0e79cb Rewrite settings_shortcuts to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 9316cec95d Rewrite settings_premium to new builder pattern
- Move settings_premium.h/cpp from settings/ to settings/sections/
- Add BuildHelper with kMeta for search indexing
- Index premium features and subscribe button for search
- Keep complex Premium section UI (custom top bar, feature list) as non-indexed
- Update all include paths across the codebase

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 86398de8bd Rewrite settings_passkeys to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston d966dc2343 Rewrite settings_notifications_type to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston fd4c42a156 Rewrite settings_information to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 5b14d62ede Rewrite settings_folders to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 1fa68effdd Rewrite settings_credits to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 4fc45c590e Rewrite settings_business to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston 8812b892c4 Rewrite settings_blocked_peers to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00
John Preston e60db7cfb1 Rewrite settings_active_sessions to new builder pattern
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 11:55:20 +04:00