Commit graph

22,542 commits

Author SHA1 Message Date
Marcus Minhorst
ce932d8aeb Disable building example code 2025-08-26 23:22:53 -04:00
Marcus Minhorst
27a934ee70 Merge commit '87689ccb5f' into theme 2025-08-26 22:09:24 -04:00
Marcus Minhorst
87689ccb5f Squashed 'libraries/ZWidget/' changes from cecd34301d..924b8e0e78
924b8e0e78 Fix scroll size issue
f0344ed99b Add option to hide scrollbar when no scrolling is to be had
f7b01d6625 Remove stray sdl
214d098353 Theme role improvements
82d0431ca5 Textedit highlight now follows theme
373ab3f4ca Added hex Colorf alias
5ea6d5a62a Reduced duplicate code
a92e045b18 Simplified theme
d076c9991c Expanded example
e4556c97df Named colors
6d9300c742 Fix COM thread error
6499e5c523 Add null pointer checks
f9d5724210 Fix x11 backend locking up Implement raw mouse input support (XInput 2.0) Fix x11 DPI scaling
4a86fb5056 XInitThreads must be called when using vulkan
8095090774 Add DPI scale to X11 backend
02fb328172 Mute a bunch of warnings
f13c745a63 Fix typo
5689bf5edd Merge in changes from SurrealEngine Use C++20 Make SDL2 optional

git-subtree-dir: libraries/ZWidget
git-subtree-split: 924b8e0e786093708c0d73419a347f8e6ffe55d6
2025-08-26 22:05:52 -04:00
Marcus Minhorst
dee6d30230 Package zmusic 2025-08-26 11:56:56 -04:00
Marcus Minhorst
1f9de6a9f4 Fix Linux build 2025-08-26 11:56:56 -04:00
Marcus Minhorst
7ddb4995a3 Generate build artifacts for non-windows builds, too 2025-08-26 11:56:56 -04:00
Rachael Alexanderson
03123b96de
- missed one 2025-08-25 01:50:45 -04:00
Rachael Alexanderson
abdacad8d3
- add argument for EventHandler.Find() which allows searching by parent class (default false) 2025-08-24 04:27:55 -04:00
Marcus Minhorst
0e621e2f30 Added rumble from damage 2025-08-24 03:02:06 -04:00
Marcus Minhorst
d4a6e1c6aa Added rumble from world 2025-08-24 03:02:06 -04:00
Marcus Minhorst
7a21853d3f Added rumble from menus 2025-08-24 03:02:06 -04:00
Marcus Minhorst
b2979f0e23 Added rumble from actions 2025-08-24 03:02:06 -04:00
Marcus Minhorst
968fa10a93 Added haptic compat options 2025-08-24 03:02:06 -04:00
Marcus Minhorst
a7a1d8447d Added haptics settings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
848df46ee0 Added haptic bindings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
f573112e2a Added haptics engine 2025-08-24 03:02:06 -04:00
Marcus Minhorst
75ef08c755 Added rumble mappings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
8352039e3f Cleanup 2025-08-24 03:02:06 -04:00
Sally Coolatta
fa35d00ba8 Remove default binds for DirectInput
As requested.

DirectInput-only controllers are already getting rarer and rarer. Plus, this branch makes all controllers faster & simpler to rebind. I'd even argue these get in the way, because you can't just immediately bind a DInput controller from boot-up, you have to unbind everything first.

I'm not against a new code path for DInput defaults that tries to guess what kind of controller you have, but I don't care about it myself.
2025-08-23 05:18:34 -04:00
Sally Coolatta
9925b009f8 Reset older configs' gamepad settings 2025-08-23 05:18:34 -04:00
Sally Coolatta
90ff9b5b15 Add gamepad reset option to menu 2025-08-23 05:18:34 -04:00
Sally Coolatta
1bcae623b0 Add client cvar for strafe running on analog stick 2025-08-23 05:18:34 -04:00
Sally Coolatta
ba9b2ddf37 Add game logic sensitivity for analog yaw & pitch
Add options to change how fast the analog sensitivity is for yaw & pitch.

Why not use the existing axis sensitivity options? Because they can change how the deadzones and input response preform, and you have to balance several options. In my opinion, those sensitivity options should be for full-on stick calibration (if your stick is not outputting the full range, for instance). But how fast the player should be able to look around is up to the user's taste, regardless of the stick they're using. This also helps make it match up with how mouse sensitivity is split up (i.e: device sensitivity vs game logic sensitivity)

Default analog pitch sensitivity has been drastically lowered, from 2048 (x1.6 yaw sensitivity) to 768 (x0.6 of yaw sensitivity). I don't think I've ever heard of any FPS game on controller before that makes pitch more sensitive than yaw... it is either the same or lower, because players typically want to stay looking in the horizon, and analog stick isn't precise enough to treat them evenly (let alone more sensitive). IMO this is a lot more playable, but I can change the default back to match older versions if that is preferred.
2025-08-23 05:18:34 -04:00
Sally Coolatta
952988d5cd Fix missing gamepad keys in inputevents.zs 2025-08-23 05:18:34 -04:00
Sally Coolatta
e1a5326947 Unify thumbsticks
- Combined the functions that handle dead zone, digital threshold, and response curves together.
  - A lot less copy-paste between the different platforms.
- Combine the X and Y settings for dead zone, digital threshold, and response curve for analog sticks. This fixes many issues:
  - The dead zone shape for sticks are now a true circle, instead of being axial.
  - The new response curves work better when moving diagonally. Previously, it'd nerf your move speed up to ~60-50% if you had it on anything but Linear.
- Refactored the new POSIX SDL gamepad axis code to work more like Windows' XInput code. This comes with the following benefits:
  - Right thumbstick should function now.
  - Left thumbstick now sends the gamepad keycodes instead of raw joystick keycodes.
- Added `stat analog`, to display current movement analog stick values. (I've needed it a lot lately.)
2025-08-23 05:18:34 -04:00
Sally Coolatta
ca562829c5 Tie axis data to the button map
The main benefit of this is to remove the requirement of going to the gamepad menu for binding analog sticks, and going to a keybinds menu for binding literally everything else; now it's all bound in the same location.

This also means that axes can both register as a digital button press, and be used as an analog value for movement separately. Before, using analog movement would not register BT_FORWARD, BT_BACK, etc
2025-08-23 05:18:34 -04:00
Marcus Minhorst
daff54fe1c Added alt+enter fullscreen keybind 2025-08-23 05:15:30 -04:00
nashmuhandes
b12d4b67d3 Use CR_ constant in SetRavenDefaults for the default message colors 2025-08-23 05:04:54 -04:00
Marcus Minhorst
fb6a10c791 Added global signal handler 2025-08-23 05:03:51 -04:00
Marcus Minhorst
c6cf8e5269 Added signal handler 2025-08-23 05:03:51 -04:00
jekyllgrim
ba9e127e9f Added to CreateTossable and PowerWeaponLevel2 2025-08-22 12:09:51 -03:00
jekyllgrim
977b5acbe1 Added OnSelect() and OnDeselect() to weapons 2025-08-22 12:09:51 -03:00
Marcus Minhorst
4d8f715d50 Corrected overscroll behavior 2025-08-22 12:09:31 -03:00
Marcus Minhorst
be29a29129 Silent menu by default 2025-08-22 12:09:31 -03:00
Marcus Minhorst
c3fb744f47 Fix phantom window freezing desktop on some systems 2025-08-22 12:08:48 -03:00
Boondorl
4a84210998 Updated multiplayer tab
Use dropdowns and reorganize the elements to improve clarity.
2025-08-22 12:07:47 -03:00
Rachael Alexanderson
f30fc8dd00
mirror changes from commit '194fb9e' at https://github.com/dpjudas/vkdoom 2025-08-13 17:24:51 -04:00
Rachael Alexanderson
6356d87438 Squashed 'libraries/ZWidget/' changes from 02da8cdc0e..cecd34301d
cecd34301d Delay load DPI-related functions
bfc172f702 Added exception to some unimplemented functions
7c8d469bcb Added item modifications functions
847d0e6d9e Improved keyboard navigation
8c4270e0f8 Dropdown can now be closed by re-selecting it
91402c31ec Fix dropdown positioning in x11 and win32

git-subtree-dir: libraries/ZWidget
git-subtree-split: cecd34301d369400227eb0f27bad2ab41ad756d2
2025-08-13 17:17:30 -04:00
Rachael Alexanderson
b7d9ddb6a3
Merge commit '6356d87438' 2025-08-13 17:17:30 -04:00
Rachael Alexanderson
0cb79b86ad
- use git -C in subtrees script instead of pushd for better cross-OS compatibility 2025-08-13 17:17:09 -04:00
Boondorl
f2745e4c82 Fixed net event data being dropped in packet-server mode
Previously hosts would clear this data after executing which cannot be done as this will fundamentally break retransmissions when playing in packet-server mode.
2025-08-12 14:35:23 -03:00
Boondorl
2a660cc3f3 Clear TravellingThinkers on level data clear 2025-08-12 13:05:38 -03:00
Rachael Alexanderson
b90da3c187
- fix misleading indentation warnings in c_cmds.cpp with dummy if's 2025-08-12 05:21:28 -04:00
Rachael Alexanderson
8d15a41f1b
- update windows update-subtrees.cmd to instead point to the bash script, it will execute git-bash to run it
- always use absolute url's for subtrees, don't lock ourselves to github
2025-08-12 04:36:55 -04:00
MrRaveYard
8ad4091b18 Fix VM dap debugging being always active 2025-08-10 08:35:37 -03:00
Marcus Minhorst
2ef2243f7f
Update zwidget
* Moved subtree scripts to tools, updated bash script for granularity

* Squashed 'libraries/ZWidget/' changes from 96501b6ef1..02da8cdc0e

02da8cdc0e Added ListView::GetPreferredWidth, ListView::GetPreferredHeight, ListView::GetMinHeight
04bf153d9d Added event subscriber system
1ce55e5da2 Added Dropdown Known issues: does not hide when parent widget's visibility changes

git-subtree-dir: libraries/ZWidget
git-subtree-split: 02da8cdc0e0ca14443245e0aa5a25b3f8e84928b
2025-08-09 21:28:36 -03:00
Marcus Minhorst
4a3bfae42e Fixed up format specifiers
also cleanup imports
2025-08-09 21:20:56 -03:00
Marcus Minhorst
e05928dc1b Fix Wformat-insufficient-arg 2025-08-09 21:20:56 -03:00
Marcus Minhorst
6e63c14eee Fixed up format specifiers in DAP 2025-08-09 21:20:56 -03:00
Marcus Minhorst
28a865e2ff Marked arg as format string 2025-08-09 21:20:56 -03:00