1
0
mirror of https://github.com/minetest/minetest.git synced 2025-07-03 00:20:21 +02:00

468 Commits

Author SHA1 Message Date
e545e96d2b Make string to v3f parsing consistent, replace core.setting_get_pos() by core.settings:get_pos() (#15438)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
2024-12-04 18:19:46 +01:00
6a1d22b2c5 Implement an editor to customize the touchscreen controls (#14933)
- The editor is accessible via the pause menu and the settings menu.
- Buttons can be moved via drag & drop.
- Buttons can be added/removed. The grid menu added by #14918 is used to show
  all buttons not included in the layout.
- Custom layouts are responsive and adapt to changed screen size / DPI /
  hud_scaling.
- The layout is saved as JSON in the "touch_layout" setting.
2024-11-24 11:33:39 +01:00
794aea8e92 Drop fixed pipeline support code (#15421)
OpenGL 2.0 is now mandatory.
2024-11-13 14:24:01 +01:00
1c92d6243f MainMenuManager: fix FIXME (#15414) 2024-11-12 10:52:37 +01:00
3064f3ccb7 Fix model[] being lit wrongly if shaders are disabled (#15364) 2024-11-03 15:10:21 +01:00
5c5538685e Don't memset SEvent directly (#15359)
Fixes a compiler warning by manually zeroing the tag and the largest union member instead
2024-10-31 19:24:43 +01:00
38f4d11d53 Avoid VLA usage and prohibit it by compiler flag 2024-10-28 15:59:17 +01:00
d849d51c2d Replace licensing text in headers (LGPLv2.1) (#15321) 2024-10-28 15:57:39 +01:00
DS
e5d321d286 Cleanup headers in irr/include/ (#15181) 2024-10-18 10:58:32 +02:00
e3813cf027 Settings: semi-automatic callback cleanup 2024-10-17 19:38:49 +02:00
4e9aa7dc77 Make itemdef.h safe to include anywhere 2024-10-16 19:39:59 +02:00
e3aa79cffb Gettext and plural support for client-side translations (#14726)
---------

Co-authored-by: Ekdohibs <nathanael.courant@laposte.net>
Co-authored-by: y5nw <y5nw@protonmail.com>
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2024-10-13 11:29:08 +02:00
06907aa99b Support floating-point animation frame numbers 2024-10-10 21:39:57 +02:00
7e4919c6ed Refactor matrix4.h
Sets the surprising row-major conventions used here straight.

Renames rotateVect to rotateAndScaleVect:
If the matrix also scales, that is applied as well by the method.
Obsolete rotateVect variants are removed.
The inverseRotateVect method is also renamed accordingly.
Note that this applies the transpose of the product
of the scale and rotation matrices, which inverts just the rotation.
2024-10-10 17:40:31 +02:00
4952f17df4 Auto-toggle TouchControls in-game when receiving touch/mouse input 2024-10-09 18:26:19 +02:00
07ff2a5c01 ContentDB dialog: React to window info changes immediately (#15248) 2024-10-09 15:08:15 +02:00
13f533d490 scrollcontainer: Add automatic scrollbar calculation (#14623)
New parameter 'content padding'. When specified, the scrollbar
max value is calculated automatically. This aims to reduce manual
calculation functions.
2024-10-08 21:45:27 +02:00
eefaef53b7 Fix hypertext action firing twice on touchscreen (#15217) 2024-10-03 11:36:48 +02:00
22ef4c8be1 Expose analog joystick input to the Lua API (#14348) 2024-10-01 17:21:42 +02:00
70e169f165 Drop fixed pipeline lighting stuff (#15165) 2024-09-18 12:18:28 +02:00
6dfd61cba0 Fix TODO in joystick code (#15179) 2024-09-18 12:17:55 +02:00
47f199e6cb Avoid cloud jump when switching between mainmenu and loading screen (#15163)
... by using the same Clouds object for both.
The mainmenu clouds already used shaders before. I had to choose between
both or neither, so now both the mainmenu clouds and the loading screen
clouds use shaders if available.
2024-09-16 10:16:27 +02:00
DS
4aec4fbe6f Add support for Tracy profiler (#15113) 2024-09-15 13:47:45 +02:00
2208fc0632 Move Minetest GUISkin -> Irrlicht CGUISkin 2024-09-08 13:53:33 +02:00
041d67ceca Improve formspec scaling (#14840) 2024-09-06 12:11:03 +02:00
08de047033 TouchScreenGUI: Show status text above grid menu 2024-09-04 15:18:34 +02:00
88397c2908 TouchScreenGUI: Don't release pointers when toggling grid menu 2024-09-04 15:18:34 +02:00
0c4f03d9a5 Reduce include count in headers 2024-09-02 16:09:32 +02:00
ac11a14509 Add static glTF support (#14557)
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
Co-authored-by: jordan4ibanez <jordan4ibanez@users.noreply.github.com>
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2024-09-02 14:50:30 +02:00
efd7792add Debloat IVideoDriver and IrrlichtDevice includes (#15080)
As the project grows, compile time will not go down unless the header mess
is cleaned up one by one to only include exactly what's needed.
2024-08-31 11:44:30 +02:00
3a59fabefe split enable_touch to touch_controls (for touchscreen controls) and touch_gui
touch_gui provide adjustment to the interface, so it's more touch
friendly

Signed-off-by: David Heidelberg <david@ixit.cz>
2024-08-28 21:32:00 +02:00
1977517d7a Rename TouchScreenGUI -> TouchControls
to avoid confusion between touchscreen-related settings that affect GUIs
(formspecs) and touchscreen-related settings that affect the touch controls
(TouchControls / formerly TouchScreenGUI)
2024-08-28 21:32:00 +02:00
0fb67ccb34 Add setting to disable smooth scrolling 2024-08-13 18:38:34 +02:00
cb0bbea2a5 refacto: rework the GUI element handler function (#14793)
We have a very very old way to perform this handling.
With this new method, we have a more proper and flexible way to extend our UI with comprehensible handlers with common interface parameters

In terms of performance, it took very few more more memory and scraping is more faster, using the unordered_map benefits
2024-08-12 18:52:33 +02:00
013c6ee166 TouchScreenGUI: Replace buttonbars with grid menu (#14918) 2024-08-12 15:34:50 +02:00
20afc762cc Fix empty tables / text lists emitting row events (#14955)
Also makes these elements no longer show a selected nonexisting row
2024-08-11 17:54:05 +02:00
95a0cc8f9a Avoid infinite recursion with unhandled second touch (#14915) 2024-08-03 18:48:25 +02:00
4e1661eded Fix inventory items unresponsive after tab interaction (#14661)
This was a soft lock until LMB was clicked again.
2024-07-22 19:14:53 +02:00
fcb4f258f5 GUITable: Scale images with display density / row height (#14709) 2024-07-02 20:57:43 +02:00
3958c19f83 Remove enable_touch special case for C++ menu scaling (#14800) 2024-06-30 20:39:36 +02:00
4c001bd248 Make button sprites (scrollbar arrows) DPI-aware (#14772) 2024-06-26 15:25:27 +02:00
fe6da3a16b Disallow formspec debug if the player does not have the debug privilege (#14753) 2024-06-17 15:59:49 +02:00
85878d894a Android: Fix back button sometimes not working as ESC (#14743) 2024-06-11 22:37:57 +02:00
833bb542fc Allow toggling fullscreen without restart and add keybind (#14714) 2024-06-02 21:05:16 +02:00
728f643ea7 Scale C++ menus down to fit the window (#14690) 2024-05-24 12:10:46 +02:00
d5fc040d2d Consistent width for internal scrollbars of formspec elements (#14689)
also: Make sure that very short, wide scrollbars are still usable
2024-05-24 12:10:19 +02:00
b21a974342 Fix inventory: Quickly picking up item and placing it again no longer works (#14657) 2024-05-21 15:38:12 +02:00
5c187363b2 Fix some clang compiler warnings (#14654)
* Fix some clang compiler warnings

* Get rid of sdl_supports_primary_selection

* Fix draw2DImage hiding overloaded virtual function
2024-05-15 19:56:25 +02:00
39fd9b93c3 Introduce proper error handling for file streams 2024-05-14 18:33:08 +02:00
a8af0c0ca4 Close buttonbars when hiding TouchScreenGUI (#14630)
To open the inventory or the pause menu, you first need to open the buttonbar
containing the respective button. Before this commit, the buttonbar is still
open after closing the menu, so you have to tap twice before you can continue
playing. After this commit, the buttonbar is already closed after closing the
menu, so you only have to tap once before you can continue playing.
2024-05-10 18:54:22 +02:00