Commit graph

606 commits

Author SHA1 Message Date
Katayama Hirofumi MZ 52fb8c1a8d
[NTGDI][FREETYPE] Return non-zero gm.gmBlackBoxX/Y (#2643)
In return of GetGlyphOutline function call, gm.gmBlackBoxX and gm.gmBlackBoxY must be non-zero to avoid Division by Zero. At epilogue of ftGdiGetGlyphOutline, we adjust the values. CORE-15949
2020-04-23 22:02:41 +09:00
Joachim Henze 87f6c82d85 [WIN32SS] CORE-16738 Comment an assert
It popped up 2-3 times for me during several
months of ros usage and I could continue without
noticing any side effects.
Giannis who once added it, was ok with commenting it.

His words:
This assertion isn't something fatal,
the worst thing that can happen from continuing on it would be
to make the thread get awake more times than it should.
2020-04-21 23:26:47 +02:00
James Tabor c6fbb8a5ed [Win32SS] Fix build 2020-04-19 18:49:46 -05:00
James Tabor b9d6c5869d [Win32SS] Fix Send and Post Parameters for WM_DEVICECHANGE
For CORE-16492. See CORE-7447.

See 43197e6641
2020-04-19 18:40:59 -05:00
Victor Perevertkin 7e069ccdb2
[CMAKE] Replace custom functions to built-in ones
add_target_compile_definitions -> target_compile_definitions
add_target_compile_flags -> target_compile_options
add_target_include_directories -> target_include_directories
2020-04-16 15:59:38 +03:00
Hermès Bélusca-Maïto c05df38e86
[CONSRV] Move process-initialization-specific functions from handle.c into console.c .
- Move ConSrvInitHandlesTable() & rename it ConSrvInitProcessHandles()
  since its purpose is to initialize the standard input, output and
  error handles for a console process.

- Move ConSrvAllocateConsole(), ConSrvInheritConsole() and
  ConSrvRemoveConsole().
2020-04-14 01:19:48 +02:00
Hermès Bélusca-Maïto 2b64d45377
Fix build. 2020-04-13 18:13:42 +02:00
Hermès Bélusca-Maïto 83c238e490
[CONSRV] Convenience fixes.
- Simplify screen-buffers initialization.
- Get rid of this CONSOLE_SCREEN_BUFFER_VTBL virtual table.
- Move ConsoleInput to a proper header.
2020-04-13 16:22:53 +02:00
Hermès Bélusca-Maïto 9261110760
[CONSRV] Introduce a set of macros CON_API / CON_API_NOCONSOLE for wrapping around the repetitive prologue/epilogue of every console CSR API entrypoint.
All the per-API message structure unpacking and console validation done
with ConSrvGetConsole() is now automatically generated using the macros,
so that the actual implementation of each API can be done independently
of how the console object is obtained.

This could also allow reusing these API implementations with a different
mechanism for obtaining the console without changing anything in them.
2020-04-12 16:09:36 +02:00
James Tabor 7772f97241 [User32] Return Default Window Procedure for WM_DEVICECHANGE
See CORE-16492.
2020-04-11 17:58:38 -05:00
James Tabor 1e0bb66452 [User32] Implement Device Event Message handler
Need a way to send WM_DEVICECHANGE from the Service manager application.
Next step is to process it in the Client/Server Run-time Subsystem.
See CORE-16492.
2020-04-11 17:41:26 -05:00
Hermès Bélusca-Maïto 75d0346c54
[CONSRV] Finally fix CONSOLE vs. CONSRV_CONSOLE/WINSRV_CONSOLE stuff. CORE-9496
What remains to be cleared up are the ugly casts.
2020-04-11 16:27:09 +02:00
Hermès Bélusca-Maïto a3ea0a39f1
[WIN32SS] Get rid of "consrv_new".
Any new features/architectural changes to the console will either be
done in separate branches, or incrementally in master within the
existing console module.
2020-04-11 15:37:27 +02:00
Mas Ahmad Muhammad b8dd046ee4
[TRANSLATION] Add and update Indonesian translations (#2506)
- CMDUTILS: attrib, label (update translation)
- USETUP (add translation)
- HOTPLUG (add translation)
- CONSRV  (update translation)
- USERSRV (update translation)
- USER32  (update translation)
- ACLUI  (update translation)
- LICCPA  (update translation)
- SUBST  (update translation)
- REGSVR32  (update translation)
- REGEDIT-CLB  (update translation)
- ACPPAGE  (update translation)
- TIMEDATE  (update translation)
- SOLITAIRE  (update translation)
- FDEBUG  (update translation)
- SYSSETUP (update translation)
2020-04-09 18:49:45 +02:00
Julen Urizar Compains f7cab5a1d4
[TRANSLATION] Multiple minor fixes and addings. (#2516)
- Applications: eventvwr, fltmgr, servman.
- rosapps: arping, CTM, fontsub, fraginator, imagesoft, systeminfo, vcdcontroltool, vgafontedit.
- CPLs: desk.cpl.
- ReactOS Setup GUI app.
- Screensavers: butterflies, maze, Starfield.
- System: NTVDM, printing/monitors/localmon; the freeze dialog in user32, the error strings in usersrv.
2020-04-09 18:13:46 +02:00
James Tabor ee3ee2a65f [User32] Fix Dialog Hang
Patch by JIRA contributor I_Kill_Bugs. See CORE-5078.

Also: https://bugs.winehq.org/show_bug.cgi?id=48749
2020-04-08 14:49:38 -05:00
James Tabor acf135d16d [Win32SS] Fix Mask for Draw Frame States
Fixes drawing of caption bar buttons.

See CORE-8808.
2020-04-05 21:11:44 -05:00
Serge Gautherie ded98b846e
[WIN32K:NTUSER] ntuser.h: Rename NtUserWaitForInputIdle() 3rd parameter (#2499)
Addendum to 568b6d05.
2020-04-03 15:06:25 +02:00
James Tabor 568b6d0558 [NTUser] Fix Strings and Format to Hooks
Allocate heap instead of data segment to be used for callbacks on user side.
Move and correct initial hook call out setup. Use it in more than one hook call.

This fixes issues with strings out of alignment and use of kernel pointers.

See CORE-13907 and CORE-16769. KsStudio still needs retested.

Small wow update.
2020-04-03 03:58:29 -05:00
Tibor Lajos Füzi 6020af2014
[GDI32] Allow BI_BITFIELDS compression in CreateDIBitmap (#2448)
CORE-16750, CORE-15960
2020-03-30 12:11:38 +02:00
jimtabor 915a5764a9 [Win32SS] Form Sanity to Hook Callbacks
Fix WH_CALLWNDPROC/RET data to user hook calls. See CORE-13019 and CORE-13907.
2020-03-28 14:18:14 -05:00
jimtabor d8add40e89 [User32] Fix null return.
See CORE-16769.
2020-03-28 14:03:15 -05:00
Hervé Poussineau ae5d2dbb9e [WIN32K] Add some static specifiers, to prevent exporting FORCEINLINE function outside compilation unit 2020-03-26 16:39:16 +01:00
Jérôme Gardou 2928084e2f [WIN32K] Fix bounds calculation when drawing with a pen 2020-03-24 14:39:27 +01:00
Timo Kreuzer 4860aa645c [WINSRV] Use DIB section for frame buffer bitmap 2020-03-22 12:05:05 +01:00
Katayama Hirofumi MZ 8c5308b5e8
[USER32] Relax conditions for creating MDI windows (#2454)
The creation conditions of MDI window was too strict. CORE-15633
2020-03-20 07:38:33 +09:00
Thomas Faber 72c51aabba
[NTOS:IO][GDI32][CMD] Fix some under-sized variables. CORE-14922
Fixes x64 boot with RTC.
2020-03-13 20:45:06 +01:00
Joachim Henze 8bb9434d3e [WIN32SS] Fix regression CORE-16721
"Scrolling by pressing the scrollbar arrows does not draw the arrows as pressed"
Fixed by a patch of JIRA-user 'I_kill_bugs'. Thank you very much!

The regression was introduced by 0.4.11-dev-586-g
929a2c6637
(which itself aimed to fix CORE-13986,
but not CORE-13918 as erroneously stated in commit comment)

I intend to port this back into 0.4.13-RC later.
2020-03-12 22:55:04 +01:00
Timo Kreuzer c735dbac35 [PRINTING] Add x64 print environment keys and folders 2020-03-09 07:03:47 +01:00
Hermès Bélusca-Maïto b596a2cc31
[USER32] Fix crash in Edit control. CORE-16727
The #ifdef prevents setting the variable, es, to NULL, which lead to an illegal access.
This didn't match dll/comctl32/edit.c .

Patch by 'I_Kill_Bugs' contributor.
2020-03-06 20:02:03 +01:00
JoachimHenze 848d7ec633
[NTUSER] Fix ShellHook notifications when creating/activating windows (#2396) 2020-03-05 15:39:23 +01:00
Joachim Henze 00adb1a3f9 [WIN32SS] Improve Drawing Scrollbars
A very nice patch of JIRA user "I_kill_Bugs". Many many Thanks!

It addresses:
- CORE-14755 fixed, flashing scrollbar triangles (we know 131 affected apps just from rapps!)
- CORE-13931 fixed, FamiTracker invisible about-dlg
- CORE-14685 improves a bit, but is not entirely fixed
- CORE-11561 improves a bit, but is not entirely fixed
- The patch avoids unnecessary redraws, speeds up GUI interaction and NSIS install times

Jim Tabor had no complains about it, I just did some white-space-tweaks on EOL and indentation.

FTR A testbot run (not on master but on 0.4.13-RC-48-g818e5bc)
https://reactos.org/testman/compare.php?ids=71645,71666 VBox LGTM
https://reactos.org/testman/compare.php?ids=71646,71667 KVM LGTM

I felt tempted to port back, but decided to play safe and commit to master just.
2020-03-04 02:12:06 +01:00
Hermès Bélusca-Maïto e8df1a38bd
[CONSRV] Fix a corruption of the CONSRV memory when converting read input events back to ANSI.
This fixes a 6-year old copy-paste bug introduced by commit b47d51c6 (r64004).
2020-03-02 01:08:41 +01:00
Hermès Bélusca-Maïto 7babd93107
[CONSRV] Some code simplification and tidy up. 2020-03-02 01:08:41 +01:00
Hermès Bélusca-Maïto 31c13e89fe
[CONSRV] Use NtClearEvent() and NtClose() instead of the Win32 functions. 2020-03-02 01:08:40 +01:00
Hermès Bélusca-Maïto e624be1eb2
[CONSRV] Tidy up lineinput.c by moving the History* helper prototypes to a suitable header file. 2020-03-02 01:08:39 +01:00
Hermès Bélusca-Maïto 19596768cb
[CONSRV] Support history resizing from console settings and from SetConsoleHistoryInfo() server implementation.
In addition, honour the maximum number of history buffers allowed when
creating new ones.

Some implementation information has been obtained from
https://github.com/microsoft/terminal
(under MIT License).
2020-03-02 01:08:35 +01:00
Hervé Poussineau 340d9360c3 [VIDEOPRT] Workaround bug CORE-16695 (infinite loop when reading EDID on LiveCD in QEMU)
For some reason, we don't get valid EDIDs when using LiveCD on QEMU.
We ignore them, and try to read the one of the next child.
This leads to a infinite loop and then, an out of memory error.

As it can also happen in other circonstances, stop enumeration as soon
as an invalid EDID is detected.

This breaks configurations with graphic cards with 2+ outputs, where
the first one is not plugged to a monitor, and the second one is plugged
to a monitor.

CORE-16695
2020-03-01 10:12:13 +01:00
Doug Lyons 3077c0e43e
[WINSPOOL] Implement DocumentPropertiesA including DEVMODE conversions (#2339)
Co-authored-by: Doug Lyons <douglyons@douglyons.com>
Co-authored-by: Colin Finck <colin@reactos.org>
2020-02-25 08:02:46 +01:00
Colin Finck 5d8c39753e
[GDI32] GdiConvertToDevmodeW: Import WINE commit 32393796bb534e9cf11dd988dce88722c67f7906 ("gdi32: GdiConvertToDevmodeW should not refer to unintialized name bytes.")
This makes our GdiConvertToDevmodeW equivalent to the WINE counterpart again.
2020-02-24 19:17:56 +01:00
Hermès Bélusca-Maïto 1d3fb3e370
[CONSRV] Fix setting the default screenbuffer and console view sizes when creating a new screenbuffer.
For more information, see:
https://docs.microsoft.com/en-us/windows/console/createconsolescreenbuffer#remarks
2020-02-23 22:43:02 +01:00
Joachim Henze 820dbfccd0 [NTUSER] Fix regression CORE-11828
Fixes symptom "mouse pointer vanishes when closing
applications via x in title-bar"

The bug in WIN32SS was unhidden by SVN r65496 == git
5c1a8109c8
, when we introduced explorer_new. The old explorer
had a workaround built within.

Many thanks to patches author James Tabor.
I intend to backport into 0.4.13RC as well.
2020-02-23 13:56:05 +01:00
Joachim Henze 99ba7ea95f [FREETYPE] Fix regression fonts in Adobe Photoshop CS2 menu CORE-16694
By Reverting beginnings of raster-fonts-works (*.fnt and *.fon)
Thanks Katayama Hirofumi MZ for helping with this revert.

The regression was introduced by 0.4.13-dev-681-g
ae99df1675

I will also port this revert back into 0.4.13-RC
2020-02-23 12:23:05 +01:00
Hermès Bélusca-Maïto 90d795b0bf
[CONSRV] Keep a count of input events in the console queue + code simplifications.
- Update the documentation of members of CONSOLE_INPUT_BUFFER.
- Simplify ConDrvGetConsoleNumberOfInputEvents().
- Simplify ConDrvFlushConsoleInputBuffer().
- Use also GetConsoleInputBufferMode() more often.
2020-02-22 23:27:42 +01:00
Hermès Bélusca-Maïto 570eba2a52
[KERNEL32][CONSRV] Use more often the internal ConioRectHeight/Width() and ConioIsRectEmpty() macros. 2020-02-22 21:15:58 +01:00
Hermès Bélusca-Maïto 05053b6f18
[CONSRV] ConDrvScrollConsoleScreenBuffer() fixes. (#2278)
- Reimplement ConDrvScrollConsoleScreenBuffer() with separate copy and
  fill helper functions and calculate rectangles in such a way as to
  never use X-Y coordinates pointing outside of the screen buffer.

- Add X-Y coordinates assertions in ConioCoordToPointer().
2020-02-22 19:50:18 +01:00
Hermès Bélusca-Maïto d46e054368
[CONSRV] Miscellaneous console fixes for CJK support and screenbuffer iteration. (#2278)
+ popup.c!DrawBox(): Factor out setting the attribute value.
2020-02-22 19:50:17 +01:00
Joachim Henze feb7df42b4 [WIN32SS] Fix a typo in dbg print 2020-02-22 19:40:52 +01:00
Katayama Hirofumi MZ f3b1185cdc
[LOCALSPL] Don't hardcode C:\ReactOS (#2343)
Use static top-level variables wszLocalSplFile and wszPrintUiFile instead of static hardcoded literal strings.
CORE-14747
2020-02-14 22:53:38 +09:00
jimtabor c89e111c6a [GDI32] Use Gdi Flush for SetViewportOrgEx.
Fixes offset in combo texts and menu highlights. See CORE-16644 & CORE-16656.
2020-02-13 17:05:38 -06:00