Vitaliy Margolen
|
fc0298429a
|
dinput: Fix compile with old input.h that missing input_absinfo.
|
2007-08-21 21:39:10 +02:00 |
Vitaliy Margolen
|
e2e3d19351
|
dinput: Don't try to create non existing device (/dev/js*).
|
2007-08-21 12:41:57 +02:00 |
Vitaliy Margolen
|
81fc89fa6d
|
dinput: Check acquired flag instead of fd.
|
2007-08-20 22:32:53 +02:00 |
Vitaliy Margolen
|
3cd13628aa
|
dinput: Use correct data structure for EVIOCGABS instead of an array.
|
2007-08-20 22:32:51 +02:00 |
Vitaliy Margolen
|
ca8a0a8aaa
|
dinput: Remove redundant declaration.
|
2007-08-20 22:32:45 +02:00 |
Vitaliy Margolen
|
f47c63a1f9
|
dinput: Don't try to create non existing device.
|
2007-08-20 22:32:40 +02:00 |
Vitaliy Margolen
|
c78b8a17fd
|
dinput: Properly increment sequence number for X only movement.
|
2007-08-17 12:01:37 +02:00 |
Vitaliy Margolen
|
51fac7f28a
|
dinput: Fix dead zone calculation.
Based on patch by Artur Szymiec.
|
2007-08-14 20:29:21 +02:00 |
Peter Dons Tychsen
|
2cea950e99
|
dinput: Allow the use of the standard Joystick GUID when calling CreateDevice.
|
2007-08-08 15:32:04 +02:00 |
Vitaliy Margolen
|
b06786940c
|
dinput: Reuse common code and definition.
Unify object properties structure and he common axis mapping function
for both joystick drivers.
|
2007-08-06 14:02:41 +02:00 |
Vitaliy Margolen
|
19183e71d4
|
dinput: Fix POV calculation.
Combine and simplify the POV calculations. Linux provides X,Y for the POV.
While DirectInput returns dial-degrees*1000 (12 o-click is 0 degrees).
|
2007-08-06 14:02:26 +02:00 |
Vitaliy Margolen
|
1fdc0230f0
|
dinput: Fix handling of dead-zone in evdev joystick.
USB joysticks can and do provide dead-zone area. Use it to initialize
the initial dead-zone.
|
2007-08-06 14:02:02 +02:00 |
Vitaliy Margolen
|
9e36848303
|
dinput: Fix mapping of axes ids to property ids.
|
2007-08-06 14:01:54 +02:00 |
Erik Inge Bolsø
|
176c567cb3
|
dinput: Fix joystick axis remapping.
|
2007-08-02 12:18:41 +02:00 |
Vitaliy Margolen
|
ed4f1e8ec7
|
dinput: Fix typo.
|
2007-07-30 13:00:01 +02:00 |
Vitaliy Margolen
|
94e08ec5be
|
dinput: Use more messages as a possible indication of the foreground window changes.
|
2007-07-23 12:13:26 +02:00 |
Vitaliy Margolen
|
41ce4a0158
|
dinput: Use CALLWINDPROC hook to monitor focus loses away from acquired windows.
|
2007-07-16 22:59:07 +02:00 |
Vitaliy Margolen
|
233cd46a22
|
dinput: Use PostMessage instead of SendMessage. Remove message window.
|
2007-07-16 22:59:02 +02:00 |
Vitaliy Margolen
|
efdee19d90
|
dinput: Convert IDirectInput into multi-interface object.
|
2007-07-12 12:59:20 +02:00 |
Vitaliy Margolen
|
6d5eee0851
|
dinput: Clear static variables after releasing hooks.
|
2007-07-10 13:37:20 +02:00 |
Vitaliy Margolen
|
8f28d4369e
|
dinput: Rename set_dinput_hook and call it from the base class.
Since keyboard's acquire and unacquire don't do anything special just call
the base class.
|
2007-07-09 14:31:38 +02:00 |
Vitaliy Margolen
|
deb74efc04
|
dinput: Handle multiple keyboard and mouse devices.
|
2007-07-09 14:27:25 +02:00 |
Vitaliy Margolen
|
6d6e4f4ea2
|
dinput: Export Mouse and Keyboard GUIDs.
|
2007-07-09 14:25:47 +02:00 |
Vitaliy Margolen
|
fe1f1362b8
|
dinput: Keep a list of all IDirectInput objects and check it instead of refcount to create/destroy hook thread.
|
2007-07-09 14:25:39 +02:00 |
Vitaliy Margolen
|
448dde9be8
|
dinput: Keep the list of all the dinput devices created for each IDIrectInput object.
|
2007-07-09 14:25:33 +02:00 |
Vitaliy Margolen
|
1f72c13a5a
|
dinput: Correct test - use appropriate mouse state structure.
|
2007-07-06 18:15:19 +02:00 |
Vitaliy Margolen
|
b9e8284a7d
|
dinput: Move key state array into object.
|
2007-06-29 12:31:45 +02:00 |
Vitaliy Margolen
|
fb1082ae73
|
dinput: Combine all Release functionality into base class.
|
2007-06-28 12:16:11 +02:00 |
Vitaliy Margolen
|
d2966c2dfb
|
dinput: Move parent dinput reference into base class.
|
2007-06-28 12:16:11 +02:00 |
Vitaliy Margolen
|
75a17709ea
|
dinput: Remove duplicate code.
|
2007-06-28 12:16:11 +02:00 |
Vitaliy Margolen
|
f83b53c160
|
dinput: Acquire device only if specified window has focus in foreground coop level.
|
2007-06-04 13:10:10 +02:00 |
Vitaliy Margolen
|
6a8bf96d73
|
dinput: Make sure to unacquire device before freeing it.
|
2007-06-04 13:10:04 +02:00 |
Dmitry Timoshkov
|
3c9e7a7f33
|
wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.
|
2007-05-25 20:37:56 +02:00 |
Vitaliy Margolen
|
4659f98314
|
dinput: Prevent race between destroying the hook window and unloading the dll.
|
2007-05-15 15:53:44 +02:00 |
Andrew Talbot
|
5e1ca16052
|
dinput: Constify some variables.
|
2007-04-24 11:53:46 +02:00 |
Vitaliy Margolen
|
cb0e61c356
|
dinput: Set the event regardless of the queue state.
|
2007-04-09 12:19:01 +02:00 |
Andrew Talbot
|
08e1481d8e
|
dinput: Replace inline static with static inline.
|
2007-03-21 11:55:33 +01:00 |
Jan Zerebecki
|
52a630a3a8
|
dinput: Add DebugInfo to critical sections.
|
2007-03-08 22:21:43 +01:00 |
Andrew Talbot
|
e744c3a5b1
|
dinput: Constify some variables.
|
2007-02-13 12:08:26 +01:00 |
Vitaliy Margolen
|
a06821765a
|
dinput: Don't reset dead zone and saturation when setting data format.
Additional tests indicate that native doesn't touch previously set
properties.
|
2007-02-06 20:23:28 +01:00 |
Vitaliy Margolen
|
17839bab6c
|
dinput: Use correct flag for object instance.
DIDFT_AXIS is a generic mask for absolute and relative axes.
|
2007-02-06 12:30:39 +01:00 |
Vitaliy Margolen
|
10fca47ba4
|
dinput: Look for all available js* joystick devices.
|
2007-02-06 12:30:34 +01:00 |
Vitaliy Margolen
|
45b8d865b4
|
dinput: Don't reset user specified range in SetDataFormat. With tests.
|
2007-02-05 14:03:28 +01:00 |
Vitaliy Margolen
|
b8b03b54b7
|
dinput: Initialize user limits with the default 0..65535 range. Add tests.
|
2007-02-05 14:03:20 +01:00 |
Vitaliy Margolen
|
575ede974d
|
dinput: Return user set limits not the device limits.
|
2007-02-05 14:03:07 +01:00 |
Vitaliy Margolen
|
15e0ccab9b
|
dinput: Don't close fd before we done with it.
|
2007-02-05 14:02:46 +01:00 |
Marcus Meissner
|
1fc5160ce8
|
dinput: Fix dereference pointer after NULL check (Coverity).
|
2007-02-05 14:02:23 +01:00 |
Alexandre Julliard
|
4ae5b9fd33
|
dinput: Undefine SW_MAX to avoid possible conflicts with winuser.h.
|
2007-01-22 12:11:04 +01:00 |
Christoph Frick
|
a6947bde23
|
dinput: Calc more caps infos ahead and store it in JoystickImpl.
|
2007-01-18 12:09:32 +01:00 |
Christoph Frick
|
ffdea40f2c
|
dinput: No longer check for value exceeding have(min|max) in map_axis.
|
2007-01-17 11:41:52 +01:00 |
Christoph Frick
|
f0b45141c2
|
dinput: Add a config for the axes.
|
2007-01-17 11:41:07 +01:00 |
Christoph Frick
|
0855a6be4c
|
dinput: Move the config for the buttons from the JoyDev into the JoystickImpl.
|
2007-01-17 11:40:52 +01:00 |
Christoph Frick
|
424d302115
|
dinput: Use a struct ObjProps for the config of the device.
|
2007-01-17 11:40:42 +01:00 |
Christoph Frick
|
22a6983a96
|
dinput: Rename 'axe' to 'axis'.
|
2007-01-17 11:40:29 +01:00 |
Vitaliy Margolen
|
dbd2112eee
|
dinput: Internal data format is not const anymore.
|
2007-01-11 11:49:12 +01:00 |
Vitaliy Margolen
|
a1dd4cb76a
|
dinput: Don't copy no longer used user data format object array.
|
2007-01-11 11:49:01 +01:00 |
Vitaliy Margolen
|
da78a7af5e
|
dinput: Use internal data format for object lookups.
|
2007-01-11 11:48:55 +01:00 |
Vitaliy Margolen
|
3d093256ca
|
dinput: [joystick_linuxinput] Use correct offset to queue events.
|
2007-01-11 11:48:49 +01:00 |
Vitaliy Margolen
|
d81e17d5c0
|
dinput: [joystick_linuxinput] Rewrite GetObjectInfo and EnumObjects on top of base class.
|
2007-01-11 11:48:40 +01:00 |
Vitaliy Margolen
|
bfa64b98ed
|
dinput: [joystick_linuxinput] Copy and modify default data format.
|
2007-01-11 11:48:22 +01:00 |
Vitaliy Margolen
|
1bc557eea0
|
dinput: [joystick_linux] Use correct offset to queue events.
|
2007-01-11 11:45:55 +01:00 |
Vitaliy Margolen
|
60948ab1f0
|
dinput: [joystick_linux] Reuse the same properties array.
|
2007-01-11 11:45:46 +01:00 |
Vitaliy Margolen
|
3989e0feb8
|
dinput: [joystick_linux] Copy and modify default data format.
Copy only what we have.
|
2007-01-11 11:45:36 +01:00 |
Vitaliy Margolen
|
cd306046bb
|
dinput: Pass complete DataFormat structure to find_property.
|
2007-01-10 12:23:28 +01:00 |
Vitaliy Margolen
|
af71538d33
|
dinput: Remove duplicate Keyboard->Poll it is the same as base class.
|
2007-01-10 12:23:18 +01:00 |
Vitaliy Margolen
|
adddc56699
|
dinput: Fix trace formatting.
|
2007-01-10 12:23:16 +01:00 |
Vitaliy Margolen
|
4b33fd691a
|
dinput: Set event from queue_event, simplifying code a bit.
|
2007-01-08 21:13:40 +01:00 |
Vitaliy Margolen
|
8e8b4f03b0
|
dinput: Use proper offset when queuing keyboard events.
|
2007-01-08 21:13:35 +01:00 |
Vitaliy Margolen
|
005bb87342
|
dinput: Fix possible NULL deference.
|
2007-01-06 11:40:46 +01:00 |
Vitaliy Margolen
|
b223b021a5
|
dinput: Fix memory leak.
|
2007-01-06 11:40:46 +01:00 |
Vitaliy Margolen
|
30e2fbcb6e
|
dinput: Fix mouse to use proper offset when queuing new events. Add handling of X-buttons.
We should use instance IDs instead of sequential numbers to get correct offset.
|
2007-01-06 11:40:46 +01:00 |
Vitaliy Margolen
|
504798ce9f
|
dinput: Change EnumObjects to use GetObjectInfo.
Also small debug trace correction to make it more readable.
|
2007-01-05 18:23:46 +01:00 |
Vitaliy Margolen
|
4c1e52e123
|
dinput: Fix cut and paste error.
|
2007-01-04 21:14:19 +01:00 |
Francois Gouget
|
bbb2b7fd98
|
Assorted spelling fixes.
|
2007-01-04 11:27:31 +01:00 |
Vitaliy Margolen
|
f2a3ad2481
|
dinput: Implement mouse GetObjectInfo on top of base class.
|
2007-01-04 09:57:35 +01:00 |
Vitaliy Margolen
|
20ba784aac
|
dinput: Move keyboard to using new GetObjectInfo.
|
2007-01-04 09:57:11 +01:00 |
Vitaliy Margolen
|
0edc6e26a7
|
dinput: Implement GetObjectInfo[A|W] in base device class.
|
2007-01-04 09:57:05 +01:00 |
Andrew Talbot
|
e946ce6b38
|
dinput: Declare some functions static.
|
2007-01-04 09:53:58 +01:00 |
Vitaliy Margolen
|
263d5ce171
|
dinput: Move keyboard to using new EnumObjects from base class.
|
2006-12-29 20:54:38 +01:00 |
Vitaliy Margolen
|
685a3e6a6e
|
dinput: Release critical section before warping mouse.
|
2006-12-29 12:49:41 +01:00 |
Vitaliy Margolen
|
0eb110f3ca
|
dinput: Move mouse to using new EnumObjects from base class.
|
2006-12-28 12:23:07 +01:00 |
Vitaliy Margolen
|
42feef0c7b
|
dinput: Implement EnumOjects[A|W] in the base device class.
|
2006-12-28 12:23:02 +01:00 |
Vitaliy Margolen
|
18ee811e4c
|
dinput: mouse: Copy and modify default data format.
|
2006-12-28 12:22:49 +01:00 |
Vitaliy Margolen
|
b22ff8018a
|
dinput: Remove MsgWaitForMultipleObjects calls.
|
2006-12-28 12:22:29 +01:00 |
Vitaliy Margolen
|
ce5fb9bb29
|
dinput: AddRef and Release parent DirectInput class.
|
2006-12-24 13:07:15 +01:00 |
Christoph Frick
|
e4a6562937
|
dinput: Drop magic int.
|
2006-12-20 17:41:09 +01:00 |
Christoph Frick
|
b0eb9d0b89
|
dinput: Set the correct size for the old dinput joystick.
This also reverts my previous patch as this is the real cause for the
problems with Grand Prix Legends.
|
2006-12-20 17:40:17 +01:00 |
Vitaliy Margolen
|
938657b1c1
|
dinput: Warp mouse in exclusive cooperation mode only.
|
2006-12-20 14:12:49 +01:00 |
Vitaliy Margolen
|
546c7a502d
|
dinput: Use GetCursorPos() to calculate relative mouse movements.
|
2006-12-20 14:12:42 +01:00 |
Vitaliy Margolen
|
975d7ff292
|
dinput: Make mouse use axis mode flag set in base class. Add tests.
|
2006-12-18 12:01:05 +01:00 |
Vitaliy Margolen
|
7b07e4b563
|
dinput: Add handling of AXISMODE property to base device object.
|
2006-12-18 12:00:50 +01:00 |
Vitaliy Margolen
|
350c66fec2
|
dinput: Zero out returned information struct.
|
2006-12-18 12:00:43 +01:00 |
Vitaliy Margolen
|
1db55d2511
|
dinput: Don't return non existent keys.
|
2006-12-18 12:00:41 +01:00 |
Vitaliy Margolen
|
aa8392c9e7
|
dinput: Use standard mouse data format instead of custom one.
|
2006-12-12 20:24:20 +01:00 |
Vitaliy Margolen
|
6246fa62f9
|
dinput: Remove redundant parameter.
|
2006-12-12 20:24:10 +01:00 |
Vitaliy Margolen
|
d5b57f3904
|
dinput: Move mouse & keyboard user data format to base class.
|
2006-12-12 20:23:57 +01:00 |
Vitaliy Margolen
|
1d314d54ba
|
dinput: Move joystick user data format into base class.
|
2006-12-12 20:23:37 +01:00 |
Vitaliy Margolen
|
3446caab56
|
dinput: Add user data format into base class. Implement SetDataFormat.
|
2006-12-12 20:22:53 +01:00 |
Vitaliy Margolen
|
cd050bf25c
|
dinput: Move transform and offsets structures into base device class.
|
2006-12-12 20:22:44 +01:00 |
Vitaliy Margolen
|
68176eeda1
|
dinput: Move few helper functions and standardize them.
|
2006-12-11 16:17:46 +01:00 |
Vitaliy Margolen
|
267cbf8289
|
dinput: Move internal function calculate_ids to where it's really used.
|
2006-12-11 16:17:40 +01:00 |
Vitaliy Margolen
|
c17e06d5c0
|
dinput: No need to copy default constant format. Use already defined static instead.
|
2006-12-11 16:17:13 +01:00 |
Christoph Frick
|
71f41e5d02
|
dinput: Utilize IDirectInputDevice2AImpl_Acquire/Unacquire.
|
2006-12-11 13:51:13 +01:00 |
Christoph Frick
|
f37f598daf
|
dinput: Ensure that the size of the dev caps pointer is large enough - no exact.
|
2006-12-11 13:51:00 +01:00 |
Christoph Frick
|
ba1ef69a41
|
dinput: Silently ignore DIPROP_CALIBRATIONMODE.
|
2006-12-11 13:50:37 +01:00 |
Vitaliy Margolen
|
5b520ff6df
|
dinput: Remove incorrect assumption about format.
|
2006-12-11 13:50:32 +01:00 |
Marcus Meissner
|
f0280cbd1e
|
made functions and variables static in some testcases.
|
2006-12-11 12:18:29 +01:00 |
Vitaliy Margolen
|
1056c881e1
|
dinput: Fix processing of custom format.
|
2006-12-11 12:17:26 +01:00 |
Vitaliy Margolen
|
03fa9106cf
|
dinput: Remove no longer used GEN_EVENT.
|
2006-12-05 11:33:03 +01:00 |
Vitaliy Margolen
|
aa7eed9394
|
dinput: Move joystick event queue into base device class.
|
2006-12-05 11:32:55 +01:00 |
Vitaliy Margolen
|
fb5884203b
|
dinput: Move mouse event queue into base device class.
|
2006-12-05 11:32:46 +01:00 |
Vitaliy Margolen
|
564ad7da8c
|
dinput: Move keyboard event queue into base device class.
This removes [Get|Set]Property and GetDeviceData.
|
2006-12-05 11:32:38 +01:00 |
Vitaliy Margolen
|
ce0c3cdae7
|
dinput: Implement [Get|Set]Property and GetDeviceData in base Device object.
Also add queue_event to replace big macro GEN_EVENT.
|
2006-12-05 11:32:34 +01:00 |
Vitaliy Margolen
|
429c8ac948
|
dinput: Implement Poll for keyboard.
|
2006-12-04 12:34:08 +01:00 |
Vitaliy Margolen
|
0da0486cc3
|
dinput: Move critical section to the base device class.
|
2006-12-04 12:33:47 +01:00 |
Vitaliy Margolen
|
f7eacd64d1
|
dinput: Move acquired flag to the base device class. Add tests.
|
2006-12-04 12:33:35 +01:00 |
Christoph Frick
|
53620bc77b
|
dinput: Simplify the code that finds the offset of the given linux event.
|
2006-11-24 12:56:50 +01:00 |
Francois Gouget
|
dc44dbfa41
|
dinput/tests: Remove unneeded NONAMELESS* macros.
|
2006-11-24 11:48:47 +01:00 |
Mike McCormack
|
53baea13a5
|
dinput: Use HeapAlloc/Free instead of alloc/free.
|
2006-11-10 11:35:23 +01:00 |
Francois Gouget
|
30e44c85c8
|
Assorted spelling fixes.
|
2006-11-07 15:25:24 +01:00 |
Damjan Jovanovic
|
b56953f49d
|
dinput: Changed select to poll.
|
2006-11-06 12:29:12 +01:00 |
Francois Gouget
|
1f67fa0acf
|
Add '\n's to Wine traces.
|
2006-10-20 14:10:34 +02:00 |
Vitaliy Margolen
|
35ee9b05d9
|
dinput: Add SetCooperativeLevel test for joystick.
|
2006-10-17 12:36:28 +02:00 |
Vitaliy Margolen
|
d35e4cd83c
|
dinput: Add SetCooperativeLevel tests to keyboard.
|
2006-10-17 12:36:24 +02:00 |
Vitaliy Margolen
|
1dae4c6832
|
dinput: Move SetCooperativeLevel into base class.
|
2006-10-17 12:36:13 +02:00 |
Vitaliy Margolen
|
af34ef12ba
|
dinput: Move SetEventNotification and associated event into base class.
|
2006-10-17 12:36:00 +02:00 |
Vitaliy Margolen
|
7d838d9e6f
|
dinput: Use dinput device as a base class for keyboard, mouse and joystick.
|
2006-10-17 12:35:39 +02:00 |
Michael Ploujnikov
|
3438512f53
|
dinput/tests: Win64 printf format warning fixes.
|
2006-10-12 11:37:15 +02:00 |
Vitaliy Margolen
|
7123f3e80e
|
dinput: Win64 printf format warning fixes.
|
2006-10-09 12:53:41 +02:00 |
James Hawkins
|
553bafd535
|
dinput: Call missing LeaveCriticalSection in the error case (found by Smatch).
|
2006-10-06 15:20:41 +02:00 |
Alexandre Julliard
|
09371c75d5
|
dinput: Only register the window class once to avoid race conditions.
|
2006-10-05 17:45:45 +02:00 |
Michael Stefaniuc
|
85ce5117c5
|
Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int.
|
2006-09-29 16:08:30 +02:00 |
Ivan Leo
|
db782fe04a
|
dinput: Add some error checks to mouse.c.
|
2006-09-26 11:39:02 +02:00 |
Vitaliy Margolen
|
84b2d73d38
|
dinput: Initialize default coop level. Invert logic in hook handler.
|
2006-09-20 20:03:07 +02:00 |
Vitaliy Margolen
|
adadb5be78
|
dinput: Return proper errors in SetCooperativeLevel.
|
2006-09-20 12:24:14 +02:00 |
Alexandre Julliard
|
32ab895e46
|
makefiles: Generate the dependencies line to avoid some code duplication.
|
2006-09-14 09:38:16 +02:00 |
Vitaliy Margolen
|
ad045d6e81
|
dinput: Create/destroy hook thread from DirectInput.
|
2006-09-13 11:46:25 +02:00 |
Vitaliy Margolen
|
722a686d66
|
dinput: Move hook_thread from device to DirectInput.
|
2006-09-11 17:45:42 +02:00 |
Andrew Talbot
|
78cdd5460c
|
dinput: Cast-qual warnings fix.
|
2006-09-10 10:16:47 +02:00 |
Alexandre Julliard
|
5cf75e615a
|
makefiles: Only run test and documentation targets in directories that need them.
|
2006-08-28 13:37:44 +02:00 |
Vitaliy Margolen
|
fd6e974d92
|
dinput: Signal event after we queued an event. Not before.
|
2006-08-07 15:35:19 +02:00 |
Andrew Talbot
|
70cfb05fc4
|
dinput/tests: Write-strings warning fix.
|
2006-07-31 21:57:59 +02:00 |
Vitaliy Margolen
|
7f838ca661
|
dinput: Initialize event sequence counter. And simplify code.
|
2006-07-31 11:15:21 +02:00 |
Vitaliy Margolen
|
eb3028acc0
|
dinput: Add DISCL_NOWINKEY define.
|
2006-07-29 11:50:19 +02:00 |
Vitaliy Margolen
|
6bd7451ece
|
dinput: Keyboard: Use the same event queue mechanism as mouse.
|
2006-07-28 12:32:08 +02:00 |
Vitaliy Margolen
|
3241974ebd
|
dinput: Simplify code a bit.
|
2006-07-24 12:57:34 +02:00 |
Vitaliy Margolen
|
b88c1677d1
|
dinput: Fix small typo.
|
2006-07-24 12:57:34 +02:00 |
Kovács András
|
71924d7da6
|
dinput: joydev_enum_deviceA now returns the correct value.
|
2006-07-20 12:10:55 +02:00 |
Vitaliy Margolen
|
83bda8e6d4
|
dinput: Unacquire correct device.
|
2006-07-17 13:51:31 +02:00 |
Vitaliy Margolen
|
13ce1a4543
|
dinput: Ignore repeated key events.
|
2006-07-17 13:51:20 +02:00 |