12 Commits
Author SHA1 Message Date
Timo Kreuzer a790beb22b [SHELL32] Fix SHBindToObject
This should have 5 parameters and stdcall convention.
Get rid of SHBindToObjectEx.
2026-06-23 18:10:39 +00:00
Katayama Hirofumi MZ ba1e474a98 [SHELL32] Translating PIDLs: Check NULL and fix PIDL flags update (#8603)
#8569 introduced an exception bug.
JIRA issue: CORE-20441
- In CreateNotificationParamAndSend
  function, check NULL for PIDLs.
- In SHELL32_ReparentAsAliasPidl
  function, fix updating PIDL flags.
2026-01-17 23:21:19 +09:00
Katayama Hirofumi MZ eae4bdb95e [SHELL32] Translate PIDLs for change notification and ParseDisplayName (#8569)
Change notification on a folder on
Desktop was failing due to
mismatching PIDLs.
We translate PIDLs to match the
alias PIDLs.
JIRA issue: CORE-19630
JIRA issue: CORE-19820
JIRA issue: CORE-16941
- Add SHELL32_ReparentAsAliasPidl
  and SHELL32_AliasTranslatePidl
  helper functions. They translate a
  PIDL to an "alias" PIDL.
- Implement SHLogILFromFSIL
  function.
- Use SHELL32_AliasTranslatePidl
 in CDesktopFolder::ParseDisplayName
  instread of Shell_TranslateIDListAlias.
- Use SHELL32_AliasTranslatePidl
  in CreateNotificationParam.
2026-01-11 20:29:54 +09:00
Katayama Hirofumi MZ 0240a87618 [SHELL32] SHChangeNotify: SHCNF_DWORD and SHCNF_PRINTERA/W (#6777)
Implementing missing features...
JIRA issue: CORE-13950
- Add Shell_ParsePrinterName helper function.
- Implement SHCNF_DWORD, SHCNF_PRINTERA,
  and SHCNF_PRINTERW types of SHChangeNotify
  function.
2024-04-20 23:11:31 +09:00
Katayama Hirofumi MZ 539123c62f [SHELL32] SHChangeRegistrationReceive just returns FALSE 2023-09-21 12:09:28 +09:00
Katayama Hirofumi MZ c199edda45 [SHELL32] Enable _DEBUG and fix assertion failures (#4307)
Improve debuggability. Fix "WorkerW" window class conflict.
- Enable _DEBUG macro if debugging, in order to enable ATLASSERT macro.
- Fix assertion failures.
- Add SHCreateDefaultWorkerWindow helper function and CWorkerTraits, then use them.
- Don't create the broker and server windows by themselves, but subclass.
CORE-17505, CORE-13950
2022-01-25 03:42:46 +09:00
Katayama Hirofumi MZ 88cdb9696b [SHELL32] Make 'hwndServer == NULL' spams quiet 2020-09-06 22:48:29 +09:00
Katayama Hirofumi MZ 7c134e4d14 [SHELL32] Big fix for change notification (#3048)
- Reduced the failures of SHChangeNotify testcase.
- Simplified change notification mechanism.
- Realized PIDL aliasing.
CORE-13950
2020-09-03 13:36:31 +09:00
Katayama Hirofumi MZ 5c589b5537 [SHELL32] Notify filesystem changes (#2659)
Notify filesystem change notifications by using ReadDirectoryChangesW function. Creating/Deleting files/folders will be responsive in Explorer. CORE-13950
2020-05-04 14:53:23 +09:00
Katayama Hirofumi MZ 5af2570b37 [SHELL32] Follow-up No.3 of #2539
Improve a comment in CreateNotificationParamAndSend.
CORE-13950
2020-04-13 13:19:12 +09:00
Katayama Hirofumi MZ b76d053a30 [SHELL32] Follow-up No.2 of #2539
Improve tracing message in CChangeNotifyBroker::BrokerNotification.
CORE-13950
2020-04-13 13:06:15 +09:00
Katayama Hirofumi MZ 2727245c86 [SHELL32] Shell notify rework for simplicity and readability (#2539)
Shell change notification has been implemented in #2432. But as @yagoulas said, source code structure is in mess. We improved simplicity and human readability of our source code.
- Move wine/changenotify.c code into changenotify.c and shelldesktop/CChangeNotify.cpp.
- Simplify code and rename the identifiers and add many comments. CORE-13950
2020-04-13 10:36:24 +09:00