Commit Graph

3724 Commits

Author SHA1 Message Date
Gabriel Ivăncescu a2cb1ab0b3 shell32/autocomplete: Handle more messages for autocompletion.
The user can right-click on the editbox control and choose one of these
operations, so they need to be handled separately regardless.

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-21 23:58:56 +02:00
Gabriel Ivăncescu cb8bd825b9 shell32/autocomplete: Fix going up through the suggestion listbox.
When going up past the topmost item in the listbox, go through txtbackup
first before wrapping around, just like when going down. This 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-21 23:58:56 +02:00
Fabian Maurer 43f44ffb37 shell32/brsfolder: Add shortcut to delete folders with the delete key.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 15:32:36 +02:00
Fabian Maurer 2e25a43f3f shell32/brsfolder: Add shortcut to rename folders with the F2 key.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 15:29:31 +02:00
Gabriel Ivăncescu 7c844af838 shell32/tests: Send WM_CHAR instead of WM_KEYUP.
There's no need to send a WM_KEYUP anymore since it now 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-19 17:20:30 +02:00
Gabriel Ivăncescu 644358bdf7 shell32/autocomplete: Remove the property after replacing the callback instead of before.
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:20:24 +02:00
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