Commit Graph

317 Commits

Author SHA1 Message Date
John Preston e9ec09b91a Add MTP::Sender to replace RPCSender some day.
Also use c++1z language standard in Xcode build.
Also treat warnings as errors.
2017-03-23 14:37:38 +03:00
John Preston bd121752f1 Change your account phone number in Settings. 2017-03-21 20:13:34 +03:00
John Preston facc729234 Edit account self destruct time in Settings.
Also accept lambda_once in rpcDone() and rpcFail() lambda wrappers.
2017-03-20 23:05:38 +03:00
John Preston a5df46f381 Improve EditPrivacyBox layout.
Also fix incorrect killTimer() calls in DiscreteSlider.
2017-03-19 11:32:24 +03:00
John Preston 12cbf78191 Refactor Ui::Radiobutton. Add Ui::Radioenum<Enum>.
Now group of Ui::Radiobutton instances share Ui::RadiobuttonGroup.
All value management is done through the group instance, not through
separate radio buttons. Also a template for groups over enums added.
2017-03-19 00:06:10 +03:00
John Preston 0a40bf2071 WIP radiobuttons refactoring. 2017-03-18 14:55:04 +03:00
John Preston 7546245213 Show warning when user edits last seen first time. 2017-03-18 12:49:48 +03:00
John Preston fc77b0a51c Save privacy in ApiWrap. Handle privacy updates. 2017-03-18 12:49:47 +03:00
John Preston 346daee421 Edit groups and channels invite privacy. 2017-03-18 12:49:46 +03:00
John Preston 61c5b45d7a Select exception users in EditPrivacyBox. 2017-03-18 12:49:46 +03:00
John Preston 85fd117675 Add EditPrivacyBox. Edit last seen privacy.
Selecting exception users is not supported yet.
2017-03-18 12:49:45 +03:00
John Preston a563cf553c Rename / move settings_blocked_box_controller.
Next commit fixes the build.
2017-03-18 12:49:44 +03:00
John Preston d91a2403b0 Use refs in AuthSession part getters.
Also use only AuthSession data for Contacts/Dialogs loaded state.
2017-03-15 19:24:06 +03:00
John Preston 1027bd431a Add some helper methods to effect wrappers.
Add and use similar methods to WidgetSlideWrap and WidgetFadeWrap:
[show|hide|toggle]Fast() and [show|hide|toggle]Animated().
2017-03-15 18:10:18 +03:00
John Preston 8c06b08f30 Alpha 1.0.23: Add blocked users list box in settings.
Also fixed build for Xcode.
2017-03-15 13:45:56 +03:00
John Preston 2ce2a14228 Add global search by username in block user box. 2017-03-14 21:38:50 +03:00
John Preston 46dab1a6b4 Add local search (filter) in block user box. 2017-03-14 20:10:28 +03:00
John Preston 805be84bff Add block user box. Search isn't working yet.
Add a box containing all chats and contacts for blocking users.
Contacts and dialogs loaded state can be accessed in AuthSession.
2017-03-14 17:16:03 +03:00
John Preston b1ee91b06b Add blocked users box to Settings.
Start a general PeerListBox, it should replace both ContactsBox
and MembersBox in the future. Show blocked users list in it.
2017-03-14 13:58:36 +03:00
John Preston 81790b2271 Notifications management moved to AuthSession.
Also implemented Global::WorkMode() as an base::Variable.
2017-03-06 18:38:15 +03:00
John Preston 83720d8789 Finalizing file renaming. 2017-03-04 13:23:56 +03:00
John Preston 08167a6a91 Removed #include "stdafx.h" from all files.
Currently the build without implicitly included precompiled header
is not supported anyway (because Qt MOC source files do not include
stdafx.h, they include plain headers).

So when we decide to support building without implicitly included
precompiled headers we'll have to fix all the headers anyway.
2017-03-04 12:27:52 +03:00
John Preston bc76f5ee1e Debug feature added for overriding dc options.
Now you can type "endpoints" in Settings and choose a file with
a complete set of dc_options that will be used instead of built-in
or received through mtproto config till the end of current session.
2017-03-01 20:22:37 +03:00
John Preston 12705c9065 Removed legacy FileDialog::query* methods.
Everything is done easier and better through the FileDialog::Get*.
2017-02-28 19:04:52 +03:00
John Preston f8318177b9 Platform-dependent file methods called async.
Some major platform-dependent file operations refactoring.
All methods like "open file", "open file with", "show in folder"
were moved to core/file_utilities module with platform-dependent
backends. All methods interacting with DesktopServices made async.
2017-02-28 18:03:38 +03:00
John Preston 6f0cf30b12 Some platform-dependent modules refactoring.
Now each platform-dependent module declares its interface in
platform/platform_module.h file and after that includes platform-
specific headers like platform/win/module_win.h with implementation.

Also removed the legacy WinRT platform-dependent implementations.
2017-02-28 13:51:00 +03:00
John Preston a5eb5a6ea2 Crash fix when setting a background image by URL. #3077
When we choose a file from URL we don't get the filename.
In background image apply method we test for a theme / palette
file extensions. Now we don't crash there, but we still can't set
a .tdesktop-theme or .tdesktop-palette file from URL. Who cares :)
2017-02-28 10:26:27 +03:00
John Preston c207743338 Made base::lambda a copyable value type.
Now base::lambda can be copied and can wrap any immutable lambda.
For mutable lambdas there is base::lambda_once (which you're
supposed to call only once to pass data through lambda captures,
for example by using std::unique_ptr). Generally base::lambda is
passed by value and base::lambda_once is passed by rvalue reference.
2017-02-26 21:01:23 +03:00
John Preston c3b3819d9f Moved AppClass to messenger.cpp:Messenger. 2017-02-25 19:48:20 +03:00
John Preston ffc557a0f9 Using standard library instead of std_ namespace.
Currently tested only in VS2015.
2017-02-21 16:45:56 +03:00
John Preston 36fc7d1991 Merge branch 'master' into temp
Conflicts:
	Telegram/SourceFiles/settings/settings_widget.cpp
2017-02-18 14:37:57 +03:00
Behnam Emamian 54c409d967 Use external video player by hidden setting (#3021)
Signed-off-by: Behnam Emamian <emamian@persianprocess.com> (github: BehnamEmamian)
2017-02-17 13:50:27 +01:00
John Preston 27a4d0f029 Alpha 1.0.7: Theme editor added to Settings. 2017-02-07 20:39:47 +03:00
John Preston b842761ea3 Closed beta 1000006001: Built in theme and color palette editor. 2017-02-07 17:56:33 +03:00
John Preston 60f45ab9b3 Improved location coords precision when converting them to string.
Also disabled some options for a packaged build.
2017-02-03 13:17:40 +03:00
John Preston 4424dbf64a Allow to resize chats list. One more mode added (narrow chats list). 2017-01-16 12:55:03 +03:00
John Preston 7fb1463c43 Version 1.0 stable: bump copyright date to 2017. 2017-01-11 23:02:13 +04:00
John Preston 2d185cf66e Some colors split for the palette. Theme preview applying improved.
Also attempting to fix travis build.
2017-01-11 12:16:44 +04:00
John Preston 143181095f Alpha 0.10.26: t.me links, latest OpenAL code used.
Also inline results should be displayed above the message field.
2017-01-07 15:55:05 +04:00
John Preston c65a280b9d Alpha 0.10.23: small tiled background performance improved.
Also some error texts improved. Also Ctrl+W closes MediaView now.
2017-01-01 20:59:33 +04:00
John Preston 218f991547 Alpha version 0.10.22: critical bug fixes. 2016-12-31 17:34:41 +04:00
John Preston 38e6a0ae7e Closed beta 10020005: Added several buttons animations. 2016-12-30 17:53:06 +04:00
John Preston ef927c8465 Theme preview ready.
Also style::color is now copyable, constructed only inside a palette.
Also macOS setup new background ready.
2016-12-30 17:53:05 +04:00
John Preston eb4d2a38b6 Closed beta 10020003: All colors moved to palette, some bug fixes. 2016-12-30 17:53:02 +04:00
John Preston b030824ef5 Use default color theme link in non-authed Advanced settings section. 2016-12-30 17:53:00 +04:00
John Preston 177078b0af Closed beta 10020002: Use default color theme link in Settings. 2016-12-30 17:53:00 +04:00
John Preston 2436ad74bd Boxes redesigned. Common groups moved to Shared Media.
Also transparent images sending fixed.
2016-12-30 17:52:56 +04:00
John Preston 85b434bee4 Scheme updated. Pinned dialogs support added. 2016-12-30 17:52:53 +04:00
John Preston 90234cb7a0 Closed beta 10019014: New input fields design and animations. 2016-12-30 17:52:52 +04:00
John Preston 47977009b8 Moved FloatAnimation->Animation, Animation->BasicAnimation. 2016-12-30 17:52:48 +04:00
John Preston b0f14d1856 Closed beta 10019011: various style improvements. 2016-12-30 17:52:39 +04:00
John Preston 2796c53542 Some more ripple animations. 2016-12-30 17:52:37 +04:00
John Preston 8958ae0377 Typing animations from android. 2016-12-30 17:52:36 +04:00
John Preston 3cff50009c Closed beta 10019010: unified attach button, new intro, new stickers.
Now all files sending is confirmed before preparing for sending.
You can paste from clipboard and drag many files at once.
2016-12-30 17:52:32 +04:00
John Preston 3da0533339 Intro redesign done. 2016-12-30 17:52:30 +04:00
John Preston 6e0394dd42 Stickers box redesigned. 2016-12-30 17:52:28 +04:00
John Preston e880c4876e Strict alignment request for base::lambda. Various improvements. 2016-12-30 17:52:21 +04:00
John Preston 31a66d66e2 Layers show/hide rewritten, animated show over mainmenu and settings. 2016-12-30 17:52:15 +04:00
John Preston d0f7c6c210 Qt render bug fixed by patch. Design improvements and fixes. 2016-12-30 17:52:14 +04:00
John Preston 07689476a6 Closed beta 10019008: Some more ripple animations added. 2016-12-30 17:52:13 +04:00
John Preston 7fa274a68e Improved ripple animation colors and styles for different buttons.
Also moved FlatLabel and LabelSimple to ui/widgets/labels module.
Also moved ScrollArea to ui/widgets/scroll_area module.
2016-12-30 17:52:10 +04:00
John Preston 807bebb3cf Buttons moved to ui/widgets/buttons module, BoxButton removed. 2016-12-30 17:52:04 +04:00
John Preston 1310b156dc Closed beta 10019004: new add contact button, various improvements. 2016-12-30 17:51:57 +04:00
John Preston 494254496e 10019003: Some compose area icons improved. Box headers redesigned. 2016-12-30 17:51:52 +04:00
John Preston 19f4e50e33 New compose area icons. 2016-12-30 17:51:50 +04:00
John Preston d12177befd Update Telegram button added to DialogsWidget/Intro. Three dot menu. 2016-12-30 17:51:41 +04:00
John Preston 3a599e0752 New main menu in DialogsWidget.
Also "flip_horizontal" and "flip_vertical" modifiers support added.
Also moving parts of MainWindow to Window::MainWindow.
2016-12-30 17:51:38 +04:00
John Preston 0cbb0014db Removed blue window title, new small title used only in Windows. 2016-12-30 17:51:37 +04:00
John Preston 1466338e7e Closed beta 10019001: Build fixed for Xcode. 2016-12-30 17:51:34 +04:00
John Preston 5d10c02b5b Applying color themes with confirmation / reverting (15 seconds). 2016-12-30 17:51:32 +04:00
John Preston af9edc17d2 Applying color theme without restarting the application. 2016-12-30 17:51:31 +04:00
John Preston c932f3d9df Removing almost all animated over states in IconButton. 2016-12-30 17:51:30 +04:00
John Preston e08f5437a6 Palette usage improvements. 2016-12-30 17:51:29 +04:00
John Preston dbb6371e67 First version on loading themes is ready. 2016-12-30 17:51:27 +04:00
John Preston 2e4426aac0 Old sprites removed completely. Only #rrggbb and #rrggbbaa in styles.
Also moved Checkbox and Radiobutton to Ui namespace.
Also child widgets in many boxes were wrapped in ChildWidget<>.
2016-10-28 12:20:24 +03:00
John Preston f7374aa7b7 Almost all icons moved from sprite.
It is a broken build, some of sprite()s are in stickers.style file.
2016-10-28 00:19:38 +03:00
John Preston 29493a0693 All emoji icons moved from sprite. 2016-10-27 17:10:28 +03:00
John Preston 6e33f039b2 Dropdown replaced by Ui::DropdownMenu. ScrolledWidget removed.
Ui::DropdownMenu is like Ui::PopupMenu, both based on Ui::Menu.
2016-10-27 15:56:48 +03:00
John Preston ff2d959abd Some icons moved from sprite. Ui::WidgetFadeWrap() effect added. 2016-10-26 13:06:00 +03:00
John Preston e5a5273b3a Scrollable boxes reorganized: _scroll always owns _inner.
Also some boxes moved to separate modules: MembersBox, StickersBox.
2016-10-22 18:59:33 +03:00
John Preston fc7c5d0ab3 Fixed travis build for TDESKTOP_DISABLE_AUTOUPDATE case. 2016-10-18 10:56:38 +03:00
John Preston 31a847fb9d Playlist appearance added to the new media player.
Also itemRemoved() now is fired as a global observable.
2016-10-14 20:10:15 +03:00
John Preston 9eb8a93719 Media::Player::Widget added instead of PlayerWidget.
New media player bar widget added. Switching between floating
media player panel and media player widget. New volume controller.
2016-10-12 22:36:48 +03:00
John Preston e616c39608 Merge branch 'dev' into player
Conflicts:
	Telegram/SourceFiles/application.cpp
	Telegram/SourceFiles/core/utils.h
	Telegram/SourceFiles/localstorage.cpp
	Telegram/SourceFiles/pspecific_mac_p.mm
2016-10-08 12:10:33 +03:00
John Preston 4a9821117b Version 0.10.12.alpha: no new settings link for macOS 10.8+ version. 2016-10-07 17:28:37 +03:00
John Preston eb47b9468c Various fixes.
Copy inline keyboard when forwarding messages with a game.
Don't show "Deleted Message" in service message with scores.
Improved tiny web page previews. Ignore right button in emoji panel.
2016-10-07 10:58:34 +03:00
John Preston 16ce28f4d2 Notifications settings done: screen corner selection + max count. 2016-10-06 19:41:09 +03:00
John Preston e7b6d7b498 Advanced notifications settings box layout done. 2016-10-05 21:37:48 +03:00
John Preston c9288f2d0a Native notifications switched off by default. Libnotify supported. 2016-10-03 18:07:50 +03:00
John Preston 0bf55835f5 NB Broken! Notifications refactored to Manager, only Windows working. 2016-10-02 16:54:27 +03:00
John Preston a41e0c4aa7 NB Broken! Started notification manager abstraction. 2016-10-02 12:30:28 +03:00
John Preston 1b54ccb59c Merge branch 'game_media' into player
Conflicts:
	Telegram/Resources/basic.style
	Telegram/SourceFiles/media/player/media_player_list.cpp
	Telegram/SourceFiles/title.cpp
2016-09-30 20:07:56 +03:00
John Preston 376941dd5e Mixed channel access hash to the game score encrypted data.
Added new lang strings for playing game send actions (not done yet).
Also moved alot of icons from sprite to separate b&w files.
2016-09-30 15:52:03 +03:00
John Preston 5b3ac58578 Merge branch 'game_media' into player
Conflicts:
	Telegram/SourceFiles/core/basic_types.h
	Telegram/SourceFiles/sysbuttons.h
	Telegram/SourceFiles/title.cpp
2016-09-29 16:48:43 +03:00
John Preston f1f7333c7a Removed some old styles. Divided basic_types module to several. 2016-09-29 14:37:16 +03:00
John Preston 903795d0e5 Merge branch 'game_media' into player
Conflicts:
	Telegram/SourceFiles/application.cpp
	Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp
	Telegram/SourceFiles/mainwidget.cpp
	Telegram/SourceFiles/mainwidget.h
	Telegram/SourceFiles/structs.h
2016-09-29 00:31:43 +03:00
John Preston 0562024444 Merge branch 'master' into player
Conflicts:
	Telegram/SourceFiles/core/observer.h
	Telegram/SourceFiles/mainwindow.h
	Telegram/SourceFiles/media/view/media_clip_playback.cpp
	Telegram/SourceFiles/media/view/media_clip_playback.h
2016-09-29 00:16:02 +03:00
John Preston 538ffb9727 Moved History[Media] classes to history_media_types module. 2016-09-28 13:15:03 +03:00
John Preston da49d8440a Beta 10008001: moved all Notify::Observer-s to base::Subscriber-s. 2016-09-26 21:33:34 +03:00
John Preston 18f3e45657 NB Broken! New lambda approaches Xcode compilation fixed. 2016-09-26 21:17:36 +03:00
John Preston c91bdf3fef NB Broken! Moving from registerPeerObserver() to base::Subscriber. 2016-09-26 17:50:24 +03:00
John Preston 8546814a25 imageLoaded() notifications done through base::Subscriber.
Also FileDialog query completion notifications use base::Subscriber.
Strict lambda alignment check. Disable large lambdas in lambda_wrap.
2016-09-26 16:57:08 +03:00
John Preston 453661d611 Removed Function<> and SharedCallback<>, using base::lambda_unique<>.
Also removed macro START_ANIMATION(anim,) using anim.start() instead.
2016-09-26 15:09:59 +03:00
John Preston 866bc4ff8a Rotation from metadata supported in FFmpeg video stream reader.
Also small glitch fix in settings rebuild after self() has changed.
2016-09-26 10:58:04 +03:00
John Preston 52731a737a Fixed Settings avatar display after restart-to-settings. 2016-09-25 22:30:47 +03:00
John Preston 3d8dadc2e7 Fixed reading issue in channels after getChannelDifference().
In App::history() readInboxBefore property was reset each time.
2016-09-25 22:04:02 +03:00
John Preston f970ac3163 New audio player done (without playlist). 2016-09-23 19:04:26 +03:00
John Preston a8f3582cb1 Title controls reordering done right. Title song play button created. 2016-09-21 14:44:20 +03:00
John Preston be02ef563c Fixed crash in tray icon toggle in new Settings in macOS / Linux. 2016-08-31 16:06:52 -04:00
John Preston 605a45c8ba New settings build ready in Xcode. 2016-08-28 14:23:32 -06:00
John Preston b520cf0f78 First version of the new Settings page is finished.
Added LocalStorageBox for watching info and clearing local storage.
Local passcode and cloud password state display and editing done.
Temporary download location clearing link added.
Crash fixed in local storage clear + app close, now waiting for the
clearing thread to quit. Some design improvements and testing.
2016-08-28 13:16:23 -06:00
John Preston afab21372b Auto update and codes ("loadlang" etc) supported in the new Settings. 2016-08-27 11:52:05 -06:00
John Preston fdab386178 Most of the new Settings are done.
Left: auto update, privacy and security, local storage box +
some minor things, like design fixes, codes like loadlang and
clearing of the local storage (box) and temp download folder.
2016-08-26 22:49:18 -06:00
John Preston 993b91ac15 Most of the new Settings sections filled with widgets.
Some animations added: new scale slider, widget_slide_wrap<TWidget>.
Any TWidget now can resizeToWidth() with overriden resizeGetHeight().
2016-08-22 19:31:42 +02:00
John Preston b9e22f59a1 New settings section widgets added. Settings cover section is ready. 2016-08-19 19:26:31 +02:00
John Preston 90678d411f Started a special LayerWidget: Settings::Widget.
Also added some missing calls to parent event handlers in boxes.
2016-08-18 12:52:36 +03:00
John Preston 392984f276 New way of working with boxes (layers).
Now the background of boxes is separated to another widget.
This will allow to use a special layer widget (like settings)
together with the usual layers-boxes upon it, moving the special
widget behind the dark background when a usual layer-box is shown.
2016-08-16 19:53:10 +03:00