Commit graph

460 commits

Author SHA1 Message Date
68ca7c4be9 Allow hiding shadow in boxes with skip 2021-04-16 18:02:35 +03:00
Loïc Molinari
ac04800962 Fix dangling timer event in animations manager
A race condition in the animations manager can leave a dangling
timerEvent() callback firing at a high frequency (>120 FPS) in the
main loop even though there is no active animations.

An update of the animations manager returns directly when there is no
active animations. If there is at least one active animation, it stops
the timer and schedules a new update before updating animations.
Depending on the Integration implementation, the scheduling call can
be postponed after the current update. The actual postponed call
unconditionally schedules an update by starting the timer. The issue
is that in the meantime the last remaining animation could have been
removed and, when the timer callback would be fired, the update would
return directly (since there is no active animations) without being
able to stop.

The explanation above ignores the updateQueued() cases of the
postponed call for simplicity. These cases do not result in infinite
updates like the timer case but still imply one useless (invoked)
update.

This fix adds a condition in the postponed call ensuring there is at
least one active animation before processing.

telegramdesktop/tdesktop#3640
telegramdesktop/tdesktop#4854
telegramdesktop/tdesktop#5436
2021-04-13 21:18:04 +03:00
b3e942e2d5 Multiply scroll step for scale
Cherry-picked from https://github.com/desktop-app/lib_ui/pull/49.
2021-04-07 03:31:10 +03:00
Ilya Fedin
de005fec2d Multiply scroll step for scale 2021-04-07 02:15:11 +04:00
50415733c8 Updated lib_ui sources to TDesktop version 2.7.1+df73bda 2021-04-07 00:14:33 +03:00
Ilya Fedin
99089134e3 Add a method to clear transient parent 2021-04-05 10:16:46 +03:00
John Preston
d1dda0b2ac Add a new color and style::complex_color. 2021-04-02 14:14:47 +04:00
84a46ce773 Updated lib_ui sources to TDesktop version 2.7.1+c08a148 2021-03-28 13:41:16 +03:00
John Preston
f288c5649c Add MaskedInputField::showErrorNoFocus. 2021-03-26 21:05:02 +04:00
John Preston
52ac632bc4 Allow destroying Ui::Window on close. 2021-03-23 16:32:21 +04:00
John Preston
91e1979da5 Restore opacity in ArcsAnimation::paint. 2021-03-22 18:10:28 +04:00
John Preston
f6a1a44efe Fix maximize/restore button state in TitleWidget. 2021-03-20 15:16:50 +04:00
Ilya Fedin
0adf0383d8 Remove unused non-trivial variable 2021-03-17 15:39:09 +03:00
Ilya Fedin
40815d4d55 Replace QMap with base::flat_map for pointer keys 2021-03-17 15:38:59 +03:00
John Preston
f4d28a3001 Update Vazir font to non-UI 27.2.2. 2021-03-16 13:11:38 +04:00
Ilya Fedin
c74cf04cc6 Get rid of deprecated ranges::view usage 2021-03-13 19:06:44 +03:00
Ilya Fedin
03f8ab361f Avoid multiple QString::arg usage as suggested by clazy 2021-03-13 19:06:29 +03:00
Ilya Fedin
2039c59293 Apply autofixes from clazy 2021-03-13 11:20:51 +03:00
John Preston
2696dbc959 Move CallMuteButton to td_ui for now. 2021-03-11 19:17:54 +04:00
John Preston
ad334fe450 Force all title controls on one side. 2021-03-11 19:17:01 +04:00
John Preston
d805dca4c7 Allow menu items to update height. 2021-03-11 19:17:01 +04:00
John Preston
515f215c05 Update Vazir font to 27.2.2. 2021-03-09 09:20:42 +04:00
Ilya Fedin
fc563c0d7c Remove unneeded constexprs in ui_utility_linux 2021-03-09 09:01:12 +04:00
Ilya Fedin
b82cdd7e58 Connect to title layout changes right in TitleControlsLayout on Linux 2021-03-09 08:56:34 +04:00
Ilya Fedin
4d865f8313 Fix spaces on ends of lines 2021-03-05 13:31:38 +04:00
Ilya Fedin
af41bff7e4 Build with QT_NO_KEYWORDS 2021-03-03 22:34:02 +04:00
John Preston
794ea13f7e Fix build on Linux. 2021-03-02 17:27:58 +04:00
John Preston
84e0979f47 Fix window title update on macOS. 2021-02-26 21:16:48 +04:00
John Preston
b65ff79393 Fix window title update on theme change. 2021-02-26 18:34:44 +04:00
Ilya Fedin
ae2c25f6a2 Add Platform::IsX11 in forgotten place 2021-02-25 11:05:00 +04:00
Ilya Fedin
db65fca0aa Use new Platform::IsX11 2021-02-24 21:37:31 +04:00
f04ec94710 Updated lib_ui sources to TDesktop version 2.6 2021-02-24 08:07:24 +03:00
Ilya Fedin
7d18c8687b Add Haiku title layout 2021-02-22 23:36:45 +04:00
Ilya Fedin
ed1bc07cc3 Add DESKTOP_APP_DISABLE_X11_INTEGRATION 2021-02-22 23:36:45 +04:00
John Preston
cf39753666 Revert "Take in account device pixel ratio when setting window extents"
This reverts commit e14bc4681d.
2021-02-21 08:03:00 +04:00
Ilya Fedin
492121950d Check if resize area is null 2021-02-19 12:37:42 +04:00
Ilya Fedin
0b74c396cb Use gtk integration from lib_base 2021-02-19 12:30:58 +04:00
23rd
9d57ba47b0 Fixed adjustment of menu with single item. 2021-02-18 07:58:53 +03:00
Ilya Fedin
e14bc4681d Take in account device pixel ratio when setting window extents 2021-02-17 18:04:06 +04:00
Ilya Fedin
34fc25a56c Ensure controls aren't duplicated 2021-02-17 18:04:06 +04:00
Ilya Fedin
3bc42db7bc Add a private method to get control widget by enum to TitleControls 2021-02-17 18:04:06 +04:00
John Preston
cc05f8174b Allow overriding color for FlatButton. 2021-02-16 16:30:12 +04:00
John Preston
e2c940dcdc Expose menu and menu style in PopupMenu. 2021-02-11 20:09:31 +04:00
John Preston
77856c3a21 Fix build on Windows. 2021-02-04 18:45:35 +04:00
Ilya Fedin
6500dc9610 Qt-based title widget ported from tdesktop 2021-02-04 18:12:14 +04:00
23rd
e2633c4b6f Fixed updating selected item when menu is moved. 2021-02-02 21:56:43 +03:00
23rd
6acc6f0483 Fixed invalidation of CrossLineAnimation. 2021-02-01 10:58:42 +03:00
23rd
52e1d6d740 Added ability to cache both colorized and default CrossLineAnimation. 2021-02-01 10:58:42 +03:00
23rd
4dd6444cb2 Added ability to call RippleButton::paintRipple with QPoint. 2021-02-01 10:58:42 +03:00
23rd
5f7ee9ed81 United enum classes of arc directions into single enum class. 2021-01-30 13:26:21 +03:00