Commit graph

20736 commits

Author SHA1 Message Date
Robert Müller 71b3c8a35b Force default char to be signed on all architectures
We assume that `char` is `signed` in various places in the code. In particular, the `Str.StrToInts` test will fail when `char` is not `signed` and names containing special characters will be displayed incorrectly on servers.

Therefore, the compiler flag `-fsigned-char` is set unconditionally instead of only for ARM and ARM64, as we expect `char` to be `signed` on all architectures.

A static assertion is added to ensure at compile time that `char` is `signed` independently from the flag added in `CMakeLists.txt`.

This is necessary at least for ARM, ARM64, PPC, PPC64, and PPC64LE. According to some sources, `char` may also be `unsigned` by default when compiling for Android, although this could not be confirmed with the current Android NDK using Clang.

For the PowerPC architectures, Compiler Explorer can be used to confirm that `char` is not `signed` by default by checking whether the static assertion compiles (see https://godbolt.org/z/9rn5Mrf59) and that the assembly is different with the `-fsigned-char` flag (see https://godbolt.org/z/138zTj3Wa).

Closes #8386.
2024-06-11 23:37:46 +02:00
Robert Müller 7e9769c2c7 Fix UI issues when switching between menus and editor
Fix button logic being stuck when holding mouse button on UI elements with button logic in the menus/editor, switching between menus and editor with Ctrl+Shift+E, then using a UI element with button logic in the editor/menus and switching back.

Fix value selector text mode of color picker popups being deactivated when switching between menus and editor while the color picker popup is open in both.

Only update progress spinners once per frame in `CUi::Update` to ensure consistent rotation speed. Progress spinners in menus and editor now rotate independently.

In general, all `static` non-`const` variables in `CUi` are replaced with member variables, as the `static` variables are shared between the two `CUi` instances of the menus and the editor, causing the above issues.
2024-06-11 20:21:25 +02:00
Tyler Stocks 544f564044 Changed var name to match 2024-06-10 23:08:06 +01:00
Tyler Stocks c451289254 Readd is not a word, I think it meant re-add but Reload better fits its usecase 2024-06-10 21:25:07 +01:00
archimede67 4fa55b3463
Merge pull request #8479 from Robyt3/Demo-Seekbar-Tooltip-Fix
Fix demo seekbar tooltip not showing correct hovered time
2024-06-10 17:41:13 +00:00
Robert Müller cef994d688 Fix demo seekbar tooltip not showing correct hovered time
Regression from #8318.
2024-06-10 18:44:08 +02:00
Dennis Felsing 0f35e576b4
Merge pull request #8477 from By622/patch-13
Update simplified_chinese.txt
2024-06-10 09:45:13 +00:00
Dennis Felsing 96943a183c
Merge pull request #8478 from By622/patch-14
Update traditional_chinese.txt
2024-06-10 09:45:13 +00:00
By cbf11fcd34
Update traditional_chinese.txt 2024-06-10 16:57:32 +08:00
By 3184ea12d8
Update simplified_chinese.txt 2024-06-10 16:57:24 +08:00
Dennis Felsing 687bc3839e
Merge pull request #8474 from Robyt3/Console-Command-Progress-Determinate
Fix percentage not being used for console command progress spinner
2024-06-10 00:43:50 +00:00
Dennis Felsing b2e1d4d0b3
Merge pull request #8475 from dobrykafe/pr-18.3-translations
Update Czech and Slovak translations for 18.3
2024-06-10 00:35:09 +00:00
dobrykafe bb378a5f2d update slovak translations for 18.3 2024-06-09 23:36:10 +02:00
dobrykafe 72f98c5d66 update czech translations for 18.3 2024-06-09 23:34:43 +02:00
Robert Müller da25863cd2 Fix percentage not being used for console command progress spinner
The percentage of received console commands was not being shown with the progress spinner because the variable `ProgressProps` was not passed to the `RenderProgressSpinner` function.
2024-06-09 21:29:56 +02:00
Dennis Felsing e80d1ab4bd
Merge pull request #8473 from GokturkTalha/patch-7
Update Azerbaijanese translation
2024-06-09 16:21:33 +00:00
Dennis Felsing 7383d74a48
Merge pull request #8472 from GokturkTalha/patch-6
Update Turkish translations
2024-06-09 16:11:15 +00:00
Talha Aygün a0125f7df5
Update Azerbaijanese translation 2024-06-09 18:50:43 +03:00
Talha Aygün e993434163
Update Turkish translations 2024-06-09 18:49:06 +03:00
Dennis Felsing c87ddfc417
Merge pull request #8471 from Emilcha/french-translation
French translation for new version,
2024-06-09 15:38:38 +00:00
Emilcha 3a1c30153f Changement
( proposées dans les reviews de la pull request )
2024-06-09 16:15:14 +02:00
archimede67 7741309ad8
Merge pull request #8447 from Robyt3/UI-ValueSelector-Consistency-DoubleClick
Consistent value selector behavior, support double-clicking
2024-06-09 11:52:22 +00:00
Emilcha e0ce7228e8 merge into translation file + credits 2024-06-09 11:32:33 +02:00
Emilcha 253fd92639 new french translation 2024-06-09 11:29:59 +02:00
Dennis Felsing 805b23ec8a
Merge pull request #8470 from furo321/swedish-18.3
Update Swedish translations for 18.3
2024-06-09 01:47:08 +00:00
Dennis Felsing 31211c3064
Merge pull request #8468 from Emilcha/nocase_friendlist_sort
Server browser friend list: sort not case sensitive
2024-06-09 01:30:23 +00:00
Emilcha 24ea8d8977 Consistancy, #8468 2024-06-08 19:28:06 +02:00
furo eb8cd8c7b2 Update Swedish translations for 18.3 2024-06-08 18:45:18 +02:00
Dennis Felsing f989f50c23
Merge pull request #8469 from ByFox213/master
last Update russian.txt
2024-06-08 15:40:31 +00:00
ByFox f62980b007
Update russian.txt
I mean you wrote '.../s' instead of '.../c'
ops
2024-06-08 20:20:14 +05:00
ByFox 475681e1fa
Update russian.txt 2024-06-08 20:19:23 +05:00
Dennis Felsing 98a5e52dff
Merge pull request #8466 from ByFox213/master
Update russian.txt
2024-06-08 15:02:02 +00:00
Emilcha 13fea24da3 Sort Compare Not Case Sensitive 2024-06-08 16:57:33 +02:00
ByFox 660d953a80
Update russian.txt 2024-06-08 19:44:04 +05:00
ByFox 74441a1f96
Update russian.txt 2024-06-08 18:16:22 +05:00
Dennis Felsing 5a09da0782
Merge pull request #8465 from Robyt3/Client-Localize-Context-Fix
Fix wrong context value being used for translation lookup
2024-06-08 10:59:56 +00:00
Dennis Felsing a2215a1bff
Merge pull request #8463 from EGYT5453/ua-18.3
Update Ukrainian l10n (18.3)
2024-06-08 10:57:01 +00:00
Robert Müller f5de30ee88 Fix wrong context value being used for translation lookup
The trailing `]` was not being removed from the context anymore due to an off-by-one error introduced in #8430. Closes #8464.
2024-06-08 12:42:03 +02:00
Andriy 56fe2a930c
Update Ukrainian l10n (18.3) 2024-06-08 12:06:12 +03:00
Robert Müller 3ef1c83935
Merge pull request #8462 from def-/pr-credits
Update credits
2024-06-08 08:34:19 +00:00
Robert Müller 08e248a0f6
Merge pull request #8460 from def-/pr-lang-18.3
Update languages for upcoming 18.3
2024-06-08 08:32:20 +00:00
Dennis Felsing 62f0849ca7 Update credits 2024-06-08 10:11:03 +08:00
Dennis Felsing 4773930e95 Update German translations 2024-06-08 09:03:02 +08:00
Dennis Felsing 2498d392db Update languages for upcoming 18.3 2024-06-08 09:01:55 +08:00
Robert Müller fa58909dfe
Merge pull request #8459 from def-/pr-time-cp-diff
Add cl_showhud_time_cp_diff
2024-06-07 17:35:45 +00:00
Dennis Felsing 112e34fefe Add cl_showhud_time_cp_diff 2024-06-08 00:31:08 +08:00
Robert Müller 989a3765f7
Merge pull request #8342 from ChillerDragon/pr_multiview_pvp
Keep respawned players in multi view list on pvp servers
2024-06-06 20:49:43 +00:00
Robert Müller f494826dcf
Merge pull request #8154 from ChillerDragon/pr_worst_style_offenders
Fix worst local variable style offenses
2024-06-06 20:18:19 +00:00
Robert Müller ef7bebc73e Remove CUi::MouseButtonReleased function
Replace the last remaining usage of the `CUi::MouseButtonReleased` function with `!MouseButton(...)`. The `pMouseSelection->m_Selecting` flag is only set to `true` when the mouse button is already pressed down, so the additional check of `MouseButtonReleased` is unnecessary in this case. In general, this function is an anti-pattern in our UI, as only checking for the mouse button to be released does not guarantee that the mouse was also pressed down over the respective UI element. The `DoButtonLogic` function or similar code should be used instead of only handling the press or release of a mouse button.
2024-06-06 21:41:50 +02:00
Robert Müller 3bb60267f9 Consistent value selector behavior, support double-clicking
Make value selector behavior consistent with the generic button logic. Consistently check for completed mouse clicks on the value selector UI element instead of handling some mouse down and mouse up events separately. Fix text mode being activated when moving the mouse over value selectors with held down mouse button. Fix text mode being deactivated immediately when the mouse leaves text area while holding down the mouse button, which is inconvenient when selecting text. Remove unnecessary usage of `CUi::MouseButtonReleased` function.

Support double-clicking value selectors to enter text edit mode in addition to right-clicking. This feels more intuitive to use and also makes it usable without a second mouse button.

Select all text when entering text mode also in the editor, which was previously only a feature in the menus.

Fix value selector edit state being `EDITING` by default instead of `NONE` in the editor and fix maps being marked as modified immediately when a value selector text input is activated. The map will now be marked as modified only when the editing operation is completed, which should be synchonized with the undo history action being added.

Use the `CUi::ConsumeHotkey` function instead of checking the enter keys manually.

Remove unnecessary and unused `CUi::m_ValueSelectorTextMode` variable and its accessors as well as the equivalent `s_TextMode` variable in the editor. This separate flag is unnecessary as we can use the existing `s_pLastTextId` variable instead.
2024-06-06 21:41:50 +02:00