Commit Graph

3818 Commits

Author SHA1 Message Date
Gabriel Ivăncescu 2a8df60a8c shell32/autocomplete: Avoid another buffer overflow and handle arbitrary sizes for the auto-append string.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 17:19:41 +02:00
Gabriel Ivăncescu 72d8b7befd shell32/autocomplete: Simplify a calculation.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 17:19:32 +02:00
Gabriel Ivăncescu 9644205540 shell32/autocomplete: Don't auto-append on control characters.
We must not auto-append on control characters, most notably Backspace,
but also ^X (cut) and so on.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 17:19:20 +02:00
Gabriel Ivăncescu a118459adf shell32/autocomplete: Redesign the window proc to trigger on key presses instead of key release.
AutoComplete currently shows up when the user releases a key, which is
wrong. Windows does it when the user presses a key, so use both WM_KEYDOWN
and WM_CHAR and redesign it so that it matches Windows behavior.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 20:59:38 +02:00
Gabriel Ivăncescu 779c513462 shell32/autocomplete: Move the autocomplete processing and WM_KEYUP to separate functions.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 20:59:38 +02:00
Gabriel Ivăncescu cbbbb70cf2 shell32/autocomplete: Dynamically allocate hwndText so it can handle arbitrary sizes.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-13 12:54:38 +02:00
Gabriel Ivăncescu 7f659eb5f9 shell32/autocomplete: Get rid of control and filled BOOLs and simplify the code.
There's no need to have filled, since cpt can already provide the same
information.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 14:10:32 +02:00
Gabriel Ivăncescu cd8d3c6de6 shell32/autocomplete: Don't call ShowWindow unless auto-suggest listbox is enabled.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 14:10:23 +02:00
Gabriel Ivăncescu a435fbc646 shell32/autocomplete: Reduce the strlen calls because they are redundant.
We can retrieve the length of the string from the SendMessage calls already.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 14:10:18 +02:00
Gabriel Ivăncescu 97006eb661 shell32/autocomplete: Handle heap_alloc failure.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 14:09:58 +02:00
Gabriel Ivăncescu 74c0c0574e shell32/autocomplete: Fix a vulnerability by avoiding the use of snprintf.
The quickComplete format can have more than one % argument, or stuff like
%*.* or %1234s, which can be exploited since the format string can be read
from the registry, so handle it manually instead of using sprintf.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 14:09:52 +02:00
Gabriel Ivăncescu 0c049b6791 shell32/autocomplete: Fix handling of Backspace and Delete.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22255
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 13:03:18 +02:00
Gabriel Ivăncescu 2964b975ac shell32/autocomplete: Revamp pwzsRegKeyPath handling so it can deal with arbitrary sizes and make it more robust.
Handle heap_alloc failure, reg strings without a \ character at all,
try harder to find the reg path (if only value fails the lookup), and
read the registry value with any size.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 13:03:09 +02:00
Alexandre Julliard 4a6855a575 shell32: Re-add support for expanding ALLUSERSPROFILE for backward compatibility.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Alexandre Julliard ceea5bda14 shell32: Avoid infinite loop in _SHExpandEnvironmentStrings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Alexandre Julliard 54530bc493 shell32: Assume that system directory always contains a drive letter.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Alex Henrie b95764adc4 shell32/tests: Mark a shell dispatch test as todo on x64 and ARM.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-04 15:12:25 +02:00
Alex Henrie 4c1a5099f0 shell32: Add remaining small icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie 1a924932da shell32: Add remaining control panel icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie e26bf9c3ea shell32: Rename icon 137 from "options" to "control panel XP".
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie 17a0c2afa6 shell32: Add Jaz drive icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie d0d1c6c2fd shell32: Add remaining search icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie 46dcc1a3df shell32: Add XP install icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie ce40aa4edf shell32: Add remaining help icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie d0379a3060 shell32: Add remaining printer icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie dc0ad3acbf shell32: Add remaining Internet icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie 63767f4b90 shell32: Add users icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:34 +02:00
Alex Henrie 618441bb92 shell32: Add multimedia file icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:33 +02:00
Alex Henrie 9da55d132c shell32: Add image file icon.
Adapted from image-x-generic in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-31 10:00:33 +02:00
Alex Henrie 4213781ae0 shell32: Add play icon.
Adapted from media-playback-start in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:35 +02:00
Alex Henrie 2e703dbc7a shell32: Add print icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie d721c454e6 shell32: Add upload icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie ddaf6bb137 shell32: Add move icon.
Adapted from mail-forward.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 39012eac75 shell32: Add delete icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie c0c9400e3c shell32: Add MSN icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 8b59c7fc5a shell32: Add removable disk icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 042b9cc23f shell32: Add download icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie a2e2b5ba1d shell32: Add zip drive icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie c34a39e37a shell32: Add card reader icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 336ced48fa shell32: Rename floppy.svg to disk_drive.svg.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 47c35b2ef1 shell32: Add audio file icon.
Adapted from audio-x-generic in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:25 +02:00
Alex Henrie 627c34fff7 shell32: Add video file icon.
Adapted from video-x-generic in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Gabriel Ivăncescu 6f3e83f7fc shell32/tests: Add a test for binding a different AutoComplete object to the same edit control.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Gabriel Ivăncescu 9c2217216c shell32/autocomplete: Don't crash when there's another AutoComplete object on the same edit control.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22333
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Alex Henrie 5d66862e5a shell32: Add documents icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:38 +02:00
Alex Henrie 12a6a58cca shell32: Add remaining optical disc icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:38 +02:00
Alex Henrie f1f9b81e29 shell32: Rename icon 12 from "cdrom" to "optical drive".
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:38 +02:00
Alex Henrie 9954c08dc8 shell32: Add "power off" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 5e53fb4bdf shell32: Add remaining folder icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 1cd138af46 shell32: Add "restricted" icon.
Adapted from dialog-error in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 5feff64045 shell32: Add fax machine icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie a3ee187683 shell32: Add users icon and passwords icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie e7a3ce7016 shell32: Rename icon 48 from "rights" to "security".
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie ade232ada1 shell32: Add remaining recycle bin icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie fe157e542a shell32: Add one-click-open and two-click-open icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 408bbe5673 shell32: Add demo window icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 8017c259ca shell32: Add window-on-monitor and desktop-on-monitor icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 2c3d0b7672 shell32: Add remote connection icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie a90f24322e shell32: Add visual settings icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 1794e51649 shell32: Add web folder icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:37 +02:00
Alex Henrie 19c364bd0d shell32: Add network connections icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie fa1bf3b30f shell32: Add checklist folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 5e8803ace4 shell32: Add network folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 4504557787 shell32: Add treeview icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie ffa4ce5258 shell32: Add defragment icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie a7a50c1487 shell32: Add disk check icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie bcbfaf0b00 shell32: Add backup icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 4f5c8253d3 shell32: Add copy icon.
Adapted from edit-copy in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 3aa81e8407 shell32: Add second run icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 1a21156bc9 shell32: Add PostScript font icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie d805b6d165 shell32: Add TrueType font icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 9669c4fad9 shell32: Add system font icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie 3a8a1b1e24 shell32: Add library file icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:31 +02:00
Alex Henrie c31f1ace26 shell32: Add batch file icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie 8abd69dc97 shell32: Add text file icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie f6695aea20 shell32: Add config file icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie 04383aed44 shell32: Add install icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie 8c42ceea48 shell32: Add folder rename icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie 01d9dba509 shell32: Add rename icon.
Adapted from document-save-as.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:26:30 +02:00
Alex Henrie 6d4e625cb2 shell32: Add folder overwrite icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie fb706ed7f8 shell32: Add file overwrite icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 9aabf827ed shell32: Add "trash mixed" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 5d60f1697a shell32: Add "trash folder" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie b1d6191eb2 shell32: Add "print to file" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 8c250c618f shell32: Add remote printer icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 9fef0a3f9d shell32: Add "add printer" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie bee0d3af67 shell32: Add XP printer folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 9fb7f21b61 shell32: Add options icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 4daea1d7ef shell32: Add system search icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 2633414c71 shell32: Add file search icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie c47178a50d shell32: Add files icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie ef5ad6a6e7 shell32: Add unknown drive icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:15 +02:00
Alex Henrie 45227d13e6 shell32: Add blank icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie b8bc0a3d0d shell32: Add shutdown confirmation icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 5f82532b21 shell32: Add rights icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 661457821b shell32: Add update icon.
Adapted from software-update-available in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 15c0612914 shell32: Add folder search icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 856e68e131 shell32: Add logoff icon.
Adapted from system-log-out in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 27b74b5a2c shell32: Add favorites icon.
Adapted from emblem-favorite in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 11:25:14 +02:00
Alex Henrie 10296553bd shell32: Add remote folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alex Henrie 1594905e8b shell32: Add tree icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alex Henrie cb4181b0e4 shell32: Add music CD icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Alex Henrie 4fc740c018 shell32: Add optical disc icon.
Adapted from media-optical in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Alex Henrie f2252757ba shell32: Add start menu icon.
Adapted from list-remove.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Alex Henrie c49c12b2cd shell32: Scale SVG properly to create 48x48 shutdown icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Alex Henrie 13d2264e73 shell32: Scale SVG properly to create 48x48 sleep icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Alexandre Julliard 86825b92c2 shell32: Fix some resources ids.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:41:55 +02:00
Dmitry Timoshkov 27edd4e35c shell32: Use Public instead of AllUsersProfile in the registry.
This matches what recent Windows versions set in the process environment.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:39:59 +02:00
Alex Henrie b722bae9c8 shell32: Add font folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie dcf8525af3 shell32: Add printer folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie 694af9c6b7 shell32: Add application folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie 76e77535c2 shell32: Add modem folder icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie 8969e6f37f shell32: Add "trash full" icon.
Adapted from user-trash-full in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie 905685c383 shell32: Add shutdown icon.
Adapted from system-shutdown in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie f9c7dbd55e shell32: Add eject icon.
Adapted from media-eject in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:05:19 +02:00
Alex Henrie 09cca8fed7 shell32: Add sleep icon.
Adapted from preferences-desktop-screensaver in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:36:10 +02:00
Alex Henrie df48fd9a27 shell32: Add run icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:36:10 +02:00
Alex Henrie 84e2cf0375 shell32: Add help icon.
Adapted from help-browser in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:36:10 +02:00
Alex Henrie c1b264ac18 shell32: Add search icon.
Adapted from system-search.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:31:15 +02:00
Alex Henrie 791b057ecc shell32: Remove alpha channel from 4-bit and 8-bit network icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:31:08 +02:00
Alex Henrie ba0007260e shell32: Remove alpha channel from 4-bit and 8-bit Internet icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:31:08 +02:00
Alexandre Julliard 8204d04b7f shell32: Move image resources to a resources subdirectory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:54:48 +02:00
Alex Henrie b9a6f75349 shell32: Add settings icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie 76e02a8311 shell32: Add recent documents icon.
Adapted from appointment-new.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie f0c1f79b07 shell32: Add "Computers Near Me" icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie f094a3d198 shell32: Switch the "My Network Places" icon to the network icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie 891b6fda83 shell32: Add network icon.
Adapted from network-workgroup.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie 44bb2c8830 shell32: Add Internet icon.
Adapted from internet-web-browser.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 19:48:09 +02:00
Alex Henrie d72d37008a shell32: Add 512k and 314k floppy drive icons.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 16:51:02 +02:00
Alex Henrie 5ee4e0027c shell32: Add window icon.
Adapted from new-window.svg in the Tango Icon Library.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 16:51:02 +02:00
Alex Henrie b14d8f9f11 shell32: Add document icon.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 09:46:39 +02:00
Alex Henrie 4b5d0f2f43 shell32: Rename IDI_SHELL_DOCUMENT to IDI_SHELL_FILE.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 09:46:36 +02:00
Alexandre Julliard 3386c01349 shell32/tests: Don't use strncat with known large enough buffer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 07:08:50 +02:00
Nikolay Sivov 6634b31520 shell32: Support BYREF index in FolderItems::Item().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 12:06:44 +02:00
Serge Gautherie 535f2f9e66 shell32: Fix 2 MSVC warnings about flags.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-20 09:10:10 +02:00
Chip Davis efac5d0672 shell32: Don't use Carbon on Mac OS to find the Trash.
Due to a weird interaction between Wine and (what I believe to be)
os_log/os_signpost, we can't use FSPathMakeRef() (nor any other function
that calls that) from a Wine process. We also can't use the
NSSearchPathForDirectoriesInDomains() function. Setting aside the fact
that it's Objective-C (something we can work around, given that NS and
CF types are toll-free bridged), a) support for getting the Trash folder
was only added in 10.8 (when FSFindFolder() was deprecated), and b) it
doesn't even support volume-specific Trash folders.

For now, just hardcode the paths to the Trash folder.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-20 09:09:33 +02:00
Michael Stefaniuc 1e469c95e6 shell32: Avoid ARRAY_SIZE-like macros.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-09 10:49:05 +02:00
Michael Stefaniuc 962b31c80b include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02:00
Marcus Meissner aba4789b0e shell32: Set size in characters in MENUITEMINFOW struct.
Signed-off-by: Marcus Meissner <meissner@suse.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-03 11:12:43 +02:00
Marcus Meissner 52e27fae47 shell32: Use characters as arguments to GetTempPathW and GetLongPathNameW.
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-26 09:27:32 +02:00
Józef Kucia a8b0a822ff shell32/tests: Remove empty element from known_folders[].
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 17:14:44 +02:00
Józef Kucia 0304a312ed shell32/tests: Add tests for SHGetKnownFolderPath() flags.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 17:14:36 +02:00
Józef Kucia bd459ad015 shell32/tests: Reorder known_folders table definition.
To use it in other tests.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 17:14:31 +02:00
Józef Kucia ff7c2c5171 shell32: Accept more flags in SHGetKnownFolderPath().
KF_FLAG_SIMPLE_IDLIST | KF_FLAG_DONT_UNEXPAND doesn't seem to influence
results returned by SHGetKnownFolderPath().

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 17:14:20 +02:00
Zebediah Figura b79eff8d91 shell32/tests: Don't test CommandLineToArgv() in test_argify().
This is essentially redundant. We should have tests for all behaviours of
CommandLineToArgv() above; the purpose of test_argify() is to test how
ShellExecute() et al. parses its parameters, and to show that this is
different from CommandLineToArgv().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 01:01:55 +02:00
Michael Stefaniuc c57b9b8d9f shell32/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-15 12:56:48 +02:00
Michael Stefaniuc d46205a340 shell32/tests: Avoid sizeof in a trace.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-15 12:56:48 +02:00
Francois Gouget e523fab898 shell32: Fix a typo in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:43:04 +02:00
Michael Stefaniuc 7b5668a6e7 include: Make ARRAY_SIZE() available in wine/test.h.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-25 12:09:17 +02:00
Sebastian Lackner e98963f2ab shell32: Create Microsoft\Windows\Themes directory during prefix creation.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-17 10:51:22 +02:00
Andrey Gusev 0dddf2a1ac shell32: Check array index limit first.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 12:36:01 +02:00
Alistair Leslie-Hughes c88a65f2ab shell32: Choose return value for SHFileOperationA depending on windows version.
Based on a patch by Michael Müller.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Daniel Lehman da8a801a58 shell32: Convert / to \ when parsing file list.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-09 09:45:22 +02:00
Michael Müller 1f08db5654 shell32: Add general tab in file property dialog.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-08 11:08:51 +02:00
Guillaume Gill 794d30dca6 shell32: Fake success in propertystore_[SetValue|Commit].
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-07 16:28:57 +02:00
Louis Lenders 730264609f shell32: Handle writing an iconresource entry in SHGetSetFolderCustomSettings.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 20:41:59 +02:00
Louis Lenders 1f42005b17 shell32/tests: Add a test for SHGetSetFolderCustomSettings.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 11:22:00 +02:00
Alistair Leslie-Hughes a7124722aa shell32: Implement SHCreateSessionKey.
Based on a patch by Dmitry Timoshkov.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 17:26:36 +02:00
Alexandre Julliard e8976ceeab shell32: Add 256x256 variants of the standard icons.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 17:17:10 +02:00
Louis Lenders 62a84f6a3c shell32: Update specs for SHGetSetFolderCustomSettings to behaviour above win2003.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:49:10 +02:00
Nikolay Sivov 738a1a33ea shell32/tests: Remove some tests workarounds.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-10 11:15:21 +02:00
Michael Stefaniuc 9a270d7e2a shell32: Remove redundant NULL checks before heap_free().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 16:02:54 +02:00
Nikolay Sivov 5cb0ac15f6 shell32: Fix destination buffer size (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 10:33:09 +02:00
Michael Stefaniuc 250e8437d7 shell32: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-29 17:27:41 +02:00
Michael Stefaniuc 51b065c5c9 shell32/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-29 17:27:35 +02:00
Nikolay Sivov e51c9b47b8 shell32: Add SHIL_JUMBO list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:43 +01:00
Nikolay Sivov 7db6885da7 shell32: Add support for SHIL_SYSSMALL list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:36 +01:00
Nikolay Sivov 479dc1d8c3 shell32: Add support for SHIL_EXTRALARGE list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:32 +01:00
Nikolay Sivov 0075b05adf shell32: Move SHGetImageList() to related source file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:27 +01:00
Nikolay Sivov 09389c4bab shell32: Pass handle arrays between icon cache helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:23 +01:00
Nikolay Sivov ff5cfaab56 shell32: Use array for icon lists.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:18 +01:00
Nikolay Sivov 04ec181c6c shell32/tests: Add a basic test for SHLimitInputEdit().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:12 +01:00
Nikolay Sivov 612a194133 shell32: Use ARRAY_SIZE macro.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:12 +01:00
Zebediah Figura e864854ce3 shell32/tests: Clean up and expand tests for IShellFolder_ParseDisplayName().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 15:46:09 -06:00
Nikolay Sivov d3f32bd0c7 shell32: Partially implement IShellDispatch::BrowseForFolder().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 15:54:45 +01:00
Nikolay Sivov e3b200bd8a shell32: Use global memory allocation helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 14:16:33 +01:00
Nikolay Sivov a6ad34f855 shell32/tests: Use the global memory allocation helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-20 20:13:02 +01:00
Nikolay Sivov 0282f3aade shell32/tests: Run more tests on menus created with SHCreateDefaultContextMenu().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Nikolay Sivov 308a5ff7c8 shell32: Add IObjectWithSite stub for context menus.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Nikolay Sivov 408f856f02 shell32: Added IShellExtInit stub for context menus.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Nikolay Sivov 68056a3d27 shell32/tests: Run context menu tests on background menu too.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Nikolay Sivov 1f1f190bf0 shell32/tests: Add a basic test for NewMenu object creation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 13:43:52 +01:00
Michael Müller 2723e9473c shell32: Use manual redirection for RunDLL_CallEntry16.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 11:04:41 +01:00
Mark Jansen 61b89d2c84 shobjidl.idl: Fix some typo's.
Signed-off-by: Mark Jansen <mark.jansen@reactos.org>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-29 20:28:59 +01:00
Nikolay Sivov bb09bb5750 shell32: Fix a trace message.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-23 16:21:33 +01:00
Nikolay Sivov ce5fb75f7f shell32: Reduce code duplication in GetCommandString().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 10:16:40 +01:00
Alex Henrie 332898eacd shell32/tests: Drop shell folder test workarounds for Windows <= 2000.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-12 15:27:07 +01:00
Alex Henrie dca38ea895 shell32/tests: Drop shell folder test dynamic imports for Windows <= 2000.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-12 15:27:05 +01:00
Alex Henrie 946b4ad270 shell32/tests: Drop progman DDE test workarounds for Windows <= 2000.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-09 16:03:32 +01:00
Alex Henrie 8bb6addb1e shell32/tests: Add missing return value check to shelllink tests (Coverity).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-08 19:26:44 +01:00
Andrey Gusev 498009c6bd shell32/tests: Fix resource leak.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-05 16:13:28 +01:00
Nikolay Sivov 1ee9c2c60b shell32: Make some strings static constants.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-04 15:13:36 +01:00
André Hentschel 460053b8fc shell32: Don't cast return value from DPA_GetPtr.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-02 15:52:22 +01:00
André Hentschel 063fd7a665 shell32/tests: Don't test functions directly when reporting GetLastError().
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-02 11:10:31 +01:00
André Hentschel 5200f3472f shell32/tests: Don't test functions directly when reporting DdeGetLastError().
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-02 11:10:25 +01:00
Michael Stefaniuc fd0251996f shell32/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-28 11:18:58 +01:00
Nikolay Sivov f75d562596 shell32: Fix SHGetFolderPathAndSubDir() trace message.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-26 10:12:44 +01:00
Louis Lenders 307b20b97b shell32: Add stub for Shell_NotifyIconGetRect.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:58:05 +01:00
Zebediah Figura 35d203622b shell32: Implement the Groups request for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:42:53 +01:00
Zebediah Figura 7ddd41e326 shell32: Implement the ExitProgman() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:42:41 +01:00
Zebediah Figura 57a94970f5 shell32: Implement the ReplaceItem() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 11:42:34 +01:00
Zebediah Figura 8b2f586343 shell32/tests: Simplify existing tests and add more tests for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 18:43:58 +01:00
Zebediah Figura 64c456af77 shell32: Implement the DeleteItem() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 18:43:35 +01:00
Zebediah Figura 6e5efd001c shell32: Implement the AddItem() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 18:43:33 +01:00
Zebediah Figura fd851064d8 shell32: Implement the ShowGroup() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 10:24:15 +01:00
Zebediah Figura 957da4ee07 shell32: Implement the DeleteGroup() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 10:24:13 +01:00
Zebediah Figura 83ca4e20cc shell32: Implement the CreateGroup() command for Progman DDE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 10:24:11 +01:00
Zebediah Figura 6778023999 shell32: Add a parser for DDE commands.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 10:24:09 +01:00
Zebediah Figura 106722494a shell32/tests: Simplify and standardize test structure for progman_dde.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 21:24:50 +01:00
Lucian Poston 349064216a shell32: Stub GetRedirectionCapabilities with S_OK.
Signed-off-by: Lucian Poston <lucian.poston@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-24 17:33:44 +01:00
Fabian Maurer 5e88f928ed shell32/tests: Add test for IAutoComplete2 with custom source.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-20 12:37:15 +01:00
Marcus Meissner 5350eea78d shell32: Avoid a crash in testsuite.
This happens on wow32 builds, we try to call a 64bit program via the
generic typelib marshalling and disp is NULL. We still fail, just
do not pop up the crash dialog.

Signed-off-by: Marcus Meissner <meissner@suse.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-13 19:47:19 +01:00
Andrew Eikum db1a3c617e shell32: Size ShellView column widths by font width.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 16:41:28 +01:00
Andrew Eikum 8d004d5151 shell32: Scale explorer browser sizes by DPI.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 13:57:31 +01:00
Andrey Gusev 498578d1bb shell32: Fix misplaced parenthesis.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-13 14:21:32 +02:00
Nikolay Sivov 4c160b6f8c shell32: Improve error handling in ParseName() (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 13:38:29 +02:00
Nikolay Sivov e9c69fde09 shell32/tests: Fixed some leaks (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 22:38:49 +02:00
Nikolay Sivov 937ef12772 shell32: PickIconDlg() is documented now.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:04:27 +02:00
Nikolay Sivov c36e7d1ec7 shell32: Added missing arguments to trace messages.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:03:49 +02:00
Nikolay Sivov 8b661a18e3 shell32: Stop using fixed size buffers for display names.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:03:45 +02:00
Nikolay Sivov 3e2559b98a shell32: Get rid of original variant used to create a Folder.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:03:42 +02:00
Nikolay Sivov 2ef383c01a shell32: Implement FolderItem::Name() property getter.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:03:38 +02:00
Nikolay Sivov 876dc3d8fd shell32: Simplify Verbs() method.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 10:20:16 +02:00
Nikolay Sivov c14c2ebfb7 shell32: Fix IEnumIDList::Next() called for multiple items.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 10:20:15 +02:00
Nikolay Sivov d484650b6d shell32: Implement ParseName() using shellfolder API.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 10:20:13 +02:00
Nikolay Sivov 2406d6cd84 shell32: System shellfolders don't support GetDefaultSearchGUID() in recent versions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 10:20:11 +02:00
Nikolay Sivov babd22b443 shell32: System shellfolders don't implement GetDefaultColumn().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 10:20:09 +02:00
Alex Henrie 67826491a6 shell32: Implement ShellExec_RunDLL.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 09:29:54 +02:00
Nikolay Sivov 76d46fa323 shell32: Silence fixme for tested case.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 21:24:08 +02:00
Nikolay Sivov d935fa69d8 shell32: Implement FolderItem attributes properties.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 21:24:08 +02:00
Nikolay Sivov 0d87da46a9 shell32: Store simple full path for FolderItem.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 21:24:08 +02:00
Nikolay Sivov 7c638b00c7 shell32: Use shellfolder API to construct FolderItems.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 21:24:08 +02:00
Vincent Povirk 8a46b9e5d1 shell32: Add support for find data in IShellLink:GetPath.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 08:44:19 +02:00
Vincent Povirk aa37e696cb shell32/tests: Setting a PIDL with no path resets the path.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 08:44:12 +02:00
Vincent Povirk 3615db9a00 shell32: Set shelllink path when setting pidl.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 08:44:06 +02:00
Vincent Povirk 94378704f8 shell32: IShellLink::GetPath returns S_FALSE if there's no path.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 08:43:57 +02:00
Vincent Povirk a796bcaa7f shell32: Support SFGAO_LINK in unix shell namespace.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 08:42:24 +02:00
Nikolay Sivov 709db66f8d shell32: Use regular helper to trace IID, downgrade QI failures to warnings.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 23:29:11 +02:00
Fabian Maurer 4ef3ffd69d shell32/tests: Fix typo.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 23:29:11 +02:00
Nikolay Sivov f23edde42c shell32: Partially implement MapColumnToSCID().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 22:21:42 +02:00
Nikolay Sivov ec42839cd6 shell32: Implement Title property using shellfolder API.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-20 19:03:40 +02:00
Nikolay Sivov 3014fb1617 shell32: Added remaining Application() properties.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 09:58:43 +02:00
Nikolay Sivov 58b73fa075 shell32: Implement Parent() property for ShellDispatch objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 09:58:39 +02:00
Nikolay Sivov a1f7339137 shell32: Implement Application property for FolderItem.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-15 17:00:54 +02:00
Nikolay Sivov 03cdddc08c shell32/tests: Remove workarounds that are no longer relevant.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-15 17:00:54 +02:00
Nikolay Sivov a05d2b76b9 shell32: Implement Application() property for Folder and FolderItems.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-13 17:25:48 +02:00
Alex Henrie aac8d46c21 shell32: Implement FolderItems_get_Count.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:03 +02:00
Alex Henrie 93dd50666f shell32: Implement FolderItems_Item.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:02 +02:00
Alex Henrie 02efd35ce2 shell32/tests: Add tests for FolderItems_Item and FolderItems_get_Count.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:02 +02:00
Vincent Povirk fcd7d4404a shell32: Stub SHOpenWithDialog.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 10:27:43 +02:00