Commit graph

383 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto c81bf4f823
[CMD] IF: Add extra validity checks in ExecuteIf(). 2020-09-03 16:05:55 +02:00
Catalin Gabriel Draghita 0ab63f9590
[BASE] Improve Spanish (es-ES) translation (#3088) 2020-08-25 18:10:23 +03:00
Aobi Chan CL 018d4d39a3
[TRANSLATION] Chinese Traditional translation for "Problem with Shortcut" dialog and improvements (#3079)
- Translation for: setup-reactos, welcome, explorer, appwiz, hdwwiz, intl, mmsys, netid, shell32, syssetup, tapiui.
- Update zh-TW.rc of shell32 (#3075)
- Just found more Simplified Chinese characters, fixed them. (装 > 裝)
2020-08-23 14:28:55 +02:00
Adam Stachowicz ca68686a98
[CMD] Update Polish (pl-PL) translation (#3082)
Addendum to 7c175d4.
2020-08-20 12:25:52 +03:00
Stanislav Motylkov fa120ac0cd
[CMD] Update Russian (ru-RU) translation
Addendum to 7c175d4.
2020-08-20 02:04:17 +03:00
Hermès Bélusca-Maïto 6925ca37ab
[CMD] Add mention of the /Y switch in MORE command help; re-position the STRING_PAUSE_HELP1 string. 2020-08-19 21:39:23 +02:00
Hermès Bélusca-Maïto 6a8754c83a
[CMD] TYPE: Rewrite the command so as to fix some of its behaviour.
- Display the names of the files being TYPEd only if more than one file
  has been specified on the command-line, or if a file specification
  (with wildcards) is present (even just for one).
  These names are displayed on STDERR while the files are TYPEd on
  STDOUT, therefore allowing concatenating files by just redirecting
  STDOUT to a destination, without corrupting it with the displayed file
  names. Also, add a /N option to force not displaying these file names.

- When file specifications (with wildcards) are being processed, silently
  ignore any directories matching them. If no corresponding files have
  been found, display a file-not-found error.

- When explicitly directory names are specified, don't do any special
  treatment; the CreateFile() call will fail and return the appropriate
  error.

- Fix the returned errorlevel values.

See https://ss64.com/nt/type.html for more information.

Fixes some cmd_winetests.

- When reading from a file, retrieve its original size so that
  we can stop reading it once we are beyond its original ending.
  This allows avoiding an infinite read loop in case the output of
  the file is redirected back to it.

  Fixes CORE-17208

- Move the FileGetString() helper to the only file where it is
  actually used.
2020-08-19 21:39:22 +02:00
Hermès Bélusca-Maïto 3d4af22328
[CMD] CHDIR: Some features are available only when extensions are enabled. Update the SetRootPath() as well. 2020-08-19 21:39:21 +02:00
Hermès Bélusca-Maïto fe9aa42d5f
[CMD] SET: Fix displaying the environment variables with a given prefix.
- Restore any truncated space in the name prefix, before displaying
  any error message.

- When trimming the name prefix from "special" characters (spaces, comma
  and semicolon), so that e.g. "set ,; ,;FOO" displays all the variables
  starting by "FOO", save also a pointer to the original name prefix, that
  we will use for variables lookup as well.

  This is done, because the SET command allows setting an environment variable
  whose name actually contains these characters (e.g. "set ,; ,;FOO=42"),
  however, by trimming the characters, doing "set ,; ,;FOO" would not allow
  seeing such variables.
  With the fix, it is now possible to show them.
2020-08-19 21:39:18 +02:00
Hermès Bélusca-Maïto 8cea82b14c
[CMD] REPLACE: Fix a memory leak. 2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto 1cb7e08522
[CMD] SETLOCAL / ENDLOCAL: Save / Restore as well the current drive and current directory.
That's an actual fact, done on original MS-DOS COMMAND.COM, FreeCOM,
Windows' CMD.EXE, etc., but is strangely undocumented on MSDN documentation.

See https://www.dostips.com/forum/viewtopic.php?t=4436

Fixes some cmd_winetests.
2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto e8e31267c5
[CMD] setlocal.c : Code style and formatting fixes 2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto 90159e1e51
[CMD] Implement provisional support for the HIGHESTNUMANODENUMBER environment-like variable.
This variable is available only in Win7+, even if the underlying API
GetNumaHighestNodeNumber() is available in Win2003+
2020-08-19 20:36:12 +02:00
Hermès Bélusca-Maïto 04e0fe0652
[CMD] The "special" environment-like variables are available only when extensions are enabled.
The "special" variables are: CD, DATE, TIME, RANDOM,
CMDCMDLINE, CMDEXTVERSION, ERRORLEVEL (and on Win7+,
HIGHESTNUMANODENUMBER).
2020-08-19 20:36:12 +02:00
Hermès Bélusca-Maïto 41a93a4e58
[CMD] FOR: Some functionality is available only when extensions are enabled.
This is basically all the advanced functionality enabled with the /D,
/R, /L and /F flags, and the usage of enhanced variables.
2020-08-19 20:36:11 +02:00
Hermès Bélusca-Maïto fedc68aea8
[CMD] IF: Some functionality is available only when extensions are enabled.
This functionality is: case insensitivity comparisons (/I);
CMDEXTVERSION and DEFINED unary operators; EQU, NEQ, LSS, LEQ, GTR, GEQ
generic string comparators.
2020-08-19 20:36:11 +02:00
Hermès Bélusca-Maïto 80844dc185
[CMD] DATE: Simplify the input loop, based on the TIME command.
Set also the ERRORLEVEL in case of error.
2020-08-19 20:36:10 +02:00
Hermès Bélusca-Maïto a151893351
[CMD] DATE: The /T option is available only when extensions are enabled. 2020-08-19 20:36:10 +02:00
Hermès Bélusca-Maïto 682875d070
[CMD] TIME: The /T option is available only when extensions are enabled.
And merge two string buffers into one.
2020-08-19 20:36:09 +02:00
Hermès Bélusca-Maïto aab632644f
[CMD] Some code style and formatting fixes 2020-08-19 20:36:09 +02:00
Hermès Bélusca-Maïto 47d7de4b7b
[CMD] Simplify GetRootPath() and mark its InPath parameter pointer to const string. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto f43ee81573
[CMD] CHDIR: Adjust ERROR_FILE_NOT_FOUND into ERROR_PATH_NOT_FOUND if _tchdir() fails. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto 9871becced
[CMD] It is not the job of ErrorMessage() to set the errorlevel! It is set only by the commands that want it. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto 3b960a1c21
[CMD] MOVE: Set the errorlevel on failure.
CORE-14261
2020-08-19 20:36:07 +02:00
Hermès Bélusca-Maïto ae649656db
[CMD] RMDIR: Improve some aspects of the /S option.
- First, the option and the APIs called by it can work directly on
  paths relative to the current directory. So there is no need to
  call GetFullPathName(), with the risk of going over MAX_PATH if the
  current path is quite long (or nested) but the RMDIR is called on a
  (short-length) relative sub-directory.

- Append a path-separator (backslash), only if the specified directory
  does not have one already, and, that it does not specify a current
  directory via the "drive-root" method, e.g. "C:" without any trailing
  backslash.

- In case there are errors during deletion of sub-directories or
  sub-files, print the error but continue deleting the other sub-dirs
  or files.

- Monitor the Ctrl-C breaker as well, and stop deleting if it has been
  triggered.

- When removing file/directory read-only attribute, just remove this
  attribute, but keep the other ones.

- When deleting the directory, first try to do it directly; if it fails
  with access denied, check whether it was read-only, and if so, remove
  this attribute and retry deletion, otherwise fails.

- When recursively deleting a drive root directory, ultimately resolve
  the dir pattern and check whether it's indeed a drive root, e.g.
  "C:\\", and if so, just return success. Indeed, calling
  RemoveDirectory() on such drive roots will return ERROR_ACCESS_DENIED
  otherwise, but we want to succeed even if, of course, we won't
  actually "delete" the drive root.
2020-08-19 20:36:07 +02:00
Hermès Bélusca-Maïto 2f9b4a2e9f
[CMD] RMDIR: Force directory deletion even if it's read-only, only when recursing over subdirectories (via the /S option). 2020-08-19 20:36:06 +02:00
Hermès Bélusca-Maïto 7c175d4999
[CMD] PATH, SET: Fix the returned error message when an environment variable does not exist.
Translators, please update the translations!
2020-08-19 20:36:06 +02:00
Hermès Bélusca-Maïto 6e09a6a3ff
[CMD] Use kernel32!lstrcmp(i) when comparing strings with the IF command.
Use kernel32!lstrcmp(i) instead of CRT!_tcs(i)cmp, so as to use the correct
current thread locale information when comparing user-specific strings.
As a result, the following comparison: 'b LSS B' will return TRUE,
instead of FALSE as it would be by using the CRT functions (and by
naively considering the lexicographical order in ANSI).
This behaviour has been introduced in Windows 2000 onwards.
2020-08-19 20:36:05 +02:00
Hermès Bélusca-Maïto 5830ccb85e
[CMD] Improve the way the ErrorMessage() helper and the MKDIR and RMDIR commands report their errors.
For MKDIR, also properly support the case of ERROR_FILE_EXISTS and
ERROR_ALREADY_EXISTS last-errors by displaying the standard error
"A subdirectory or file XXX already exists.\n"
2020-08-19 20:36:05 +02:00
Hermès Bélusca-Maïto 1efbcd3d5d
[CMD] Improve RMDIR help and MD error message. 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto e3ed502bb6
[CMD] Fix the output of the SET command. 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto ca4523658c
[CMD] Some code style and formatting fixes 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto 82bcb3f9f0
[CMD] Fix the implementation of EXIT /B when a batch context is active. 2020-08-19 20:36:03 +02:00
Hermès Bélusca-Maïto d78e8029b8
[CMD] Additional fixes for ERRORLEVEL and last returned exit code from EXIT, CALL commands and CMD.
CORE-10495 CORE-13672

- Fix how the ERRORLEVEL and the last returned exit code are set by
  EXIT and CALL commands, when batch contexts terminate, and when CMD
  runs in single-command mode (with /C).

  Addendum to commit 26ff2c8e, and reverts commit 7bd33ac4.
  See also commit 8cf11060 (r40474).

  More information can be found at:
  https://ss64.com/nt/exit.html
  https://stackoverflow.com/a/34987886/13530036
  https://stackoverflow.com/a/34937706/13530036

- Move the actual execution of the CMD command-line (in /C or /K
  single-command mode) from Initialize() to _tmain(), to put it on par
  with the ProcessInput() interactive mode.

- Make ProcessInput() also return the last command's exit code.
2020-08-19 20:36:03 +02:00
Hermès Bélusca-Maïto 2e4c8c019e
[CMD] GOTO: Fix label parsing.
We note two things, when CMD searches for the corresponding label in the
batch file:
- the first character of the line is always ignored, unless it's a colon;
- the escape caret ^ is supported and interpreted.

Fixes some cmd_winetests.
2020-08-19 20:36:01 +02:00
Hermès Bélusca-Maïto c5e6e5a19c
[CMD] GOTO: Fix handling of the ':EOF' label handling.
- The ':EOF' label feature is available only when extensions are enabled.

- Anything that follows the ':EOF' label, separated by at least one
  whitespace character, is ignored, and the batch file terminates.
2020-08-19 20:36:01 +02:00
Hermès Bélusca-Maïto f911bb482d
[CMD] GOTO: The command should search labels from its position down to the end, then loop back to the beginning of the batch and down to the original position. 2020-08-19 20:36:00 +02:00
Hermès Bélusca-Maïto 495c82ccde
[CMD] Syntax errors during parsing of batch parameters expansion, or FOR and IF commands, are fatal, and batch execution should stop.
- To this purpose use the ParseErrorEx() that correctly sets the
  bParseError flag, and return the partially-parsed command so that
  it gets echoed as well for diagnostics purposes (Windows-compatible).

- Any other parameters specified after (or before) the '/?' switch for
  the FOR and IF commands, are considered fatal syntax errors as well,
  thus we employ the ParseErrorEx() as well.
2020-08-19 20:35:59 +02:00
Hermès Bélusca-Maïto 6eb1cae348
[CMD] Fixes for Batch error execution control flow.
CORE-13713 CORE-13736

- In case execution of all batch contexts is stopped (by selecting "All"
  at the Ctrl-C/Ctrl-Break prompt), notify as well the CheckCtrlBreak()
  signal handler once there are no more batch contexts (this in effect
  resets the internal 'bLeaveAll' static flag in CheckCtrlBreak).
  This is an adaptation of the fix present in FreeCOM 1.5, first
  described in https://gcfl.net/FreeDOS/command.com/bugs074g.html .

- Introduce a ParseErrorEx() helper that sets the 'bParseError' flag and
  displays a customized syntax-error message, only for the first syntax
  error encountered. Implement ParseError() around the *Ex function.

- In batch mode, echo the original pre-parsed batch file line if a parse
  error has been encountered.

- When running a compound command - including IF, FOR, command blocks -,
  and that control flow is modified by any CALL/GOTO/EXIT command,
  detect this while running the compound command so as to stop it and go
  back to the main batch execution loop, that will then set up the actual
  new command to run.

- In GOTO, do not process any more parts of a compound command only when
  we have found a valid label.
2020-08-19 20:35:58 +02:00
Hermès Bélusca-Maïto ca912d7b36
[CMD] Further code style and formatting fixes. 2020-08-19 20:35:57 +02:00
Hermès Bélusca-Maïto c93f511241
[CMD] Reduce stack memory usage when parsing or echoing commands recursively.
- Use a common large string buffer for temporary command substitutions/expansions,
  instead of having such a buffer in the local stack of the parsing and
  echoing functions that may be called recursively. Since CMD executes
  synchronously we know that this common buffer can only be used once at
  a time.

- Also do a small code cleanup in ParseIf(), ParseFor() and ParseCommandPart().
2020-08-19 20:35:57 +02:00
Hermès Bélusca-Maïto 26cfadc352
[CMD] Make the command echoer Windows-CMD-compatible. CORE-14025
Add a MSCMD_ECHO_COMMAND_COMPAT define to be able to switch back to our
older but less broken behaviour at compile-time.

- Append a trailing space to commands when those have a parameter,
  as well as after a command-block closing parenthesis.

- Space around redirection strings need to be switched around.
2020-08-19 20:35:56 +02:00
Hermès Bélusca-Maïto 47ea3f1faa
[CMD] Fix the command echo-er/unparser.
- Use ConOutPuts() instead of ConOutPrintf() for displaying strings that
  are not printf formatted.

- When echo-ing/unparsing FOR command, any possible FOR variables
  present in the FOR parenthesized list (before the "do" part) should be
  substituted as well.
2020-08-19 20:35:56 +02:00
Hermès Bélusca-Maïto 6f87d45e1c
[CMD] Add a command tree dumper, for debugging purposes of the parser code.
This feature is also present in Windows' CMD, and has been documented
e.g. at:
https://www.fireeye.com/blog/threat-research/2018/11/cmd-and-conquer-de-dosfuscation-with-flare-qdb.html
https://www.real-sec.com/2019/08/cmd-and-conquer-de-dosfuscation-with-flare-qdb/
2020-08-19 20:35:55 +02:00
Hermès Bélusca-Maïto 04eef6d20c
[CMD] parser.c, cmd.c/h : Code style and formatting fixes.
- Change C_IFFAILURE, C_IFSUCCESS into C_OR, C_AND respectively.
2020-08-19 20:35:54 +02:00
Hermès Bélusca-Maïto 93ee4e7efa
[CMD] Fix some messages formatting.
- Fix ECHO state output string.
- Add missing newlines to some help and error messages.
- Add trailing space after the PAUSE command message.
2020-08-19 20:35:54 +02:00
Hermès Bélusca-Maïto ea801338f6
[CMD] todo.txt: Remove some points that have already been implemented since ages. 2020-08-19 20:35:52 +02:00
Hermès Bélusca-Maïto 86c5e7e41f
[CMD] Remove deprecated definition in CMakeLists.txt. 2020-08-19 20:35:52 +02:00
Piotr Hetnarowicz da895c2f99
[EXPLORER] Polish description fix for Taskbar properties dialog. (#3073) 2020-08-18 12:55:52 +02:00
Katayama Hirofumi MZ 451a9c6f52
[EXPLORER] Implement ABN_WINDOWARRANGE (#3033)
The AppBar window has to receive the ABN_WINDOWARRANGE notification message before and after the window arrangement from taskbar. CORE-7237
2020-08-12 06:00:09 +09:00
Katayama Hirofumi MZ 1c40070561
[EXPLORER] Improve CTrayWindow::OnCopyData (#3028)
Check pCopyData->dwData value. Don't send message needlessly.
CORE-7237
2020-08-10 07:15:21 +09:00
Stanislav Motylkov 21b56d77c6
[EXPLORER] Allocate the string for expanded command line from heap
Addendum to 6fe704b.

CORE-12973 CORE-17168
2020-07-21 19:50:45 +03:00
Stanislav Motylkov 6fe704b0f0
[EXPLORER] Fix auto startup behavior
Command line should be expanded only for REG_EXPAND_SZ values.

CORE-17168
2020-07-21 17:28:48 +03:00
Hermès Bélusca-Maïto 240f6737e9
[CMD] Add a ExecuteCommandWithEcho() helper and use it in Batch() and as the implementation of RunInstance() FOR-loop helper. 2020-05-18 02:21:57 +02:00
Hermès Bélusca-Maïto ce543fbb72
[CMD] Fix the stop-batch prompt appearance: do not display it more than once in a row. 2020-05-18 02:21:57 +02:00
Hermès Bélusca-Maïto d0ced4ffdf
[CMD] Fix the ErrorMessage() function.
Specify its szFormat parameter optional, and correctly initialize the
szMessage buffer.
2020-05-18 02:21:56 +02:00
Hermès Bélusca-Maïto 9c11be5a3a
[CMD] Quick fix for the REM command parser. CORE-17030 2020-05-11 04:27:12 +02:00
Kyle Katarn 6133d55190
[EXPLORER] Fix incorrect component position and size for French language (#2671)
CORE-16930, CORE-12386
2020-04-27 12:32:42 +02:00
Serge Gautherie 96b7cb1a4f [EXPLORER] trayclock: Update timer delay when showing seconds is modified 2020-04-26 21:41:39 +03:00
Serge Gautherie e68bee7518 [EXPLORER] trayclock: Better handle timers, especially when it is hidden 2020-04-26 21:41:39 +03:00
Serge Gautherie e45b15aca2 [EXPLORER] CTrayClockWnd::CalculateDueTime(): Fix uiDueTime value
when showing seconds.
2020-04-26 21:41:39 +03:00
Serge Gautherie 5ce61092b5 [EXPLORER] Update now-redirected 'http' and 'www.reactos.org' URLs 2020-04-23 10:20:15 +02:00
Mark Jansen 5cee1b95c0 [EXPLORER] Keep processing messages while waiting for a startup task
CORE-16909
2020-04-20 15:37:19 +03:00
Piotr Hetnarowicz cd5364ae8e [cmd] pl-pl update 2020-04-16 18:32:08 +02:00
Julen Urizar Compains d6e0fe78e7
[TRANSLATION] Updating Spanish translation (#2503)
Updating translation for:
notepad, reactos, usetup, explorer, netshell, msgina, setupapi, shell32.

- Complete and Fix the SPANISH TRANSLATION on Setup
- Correct the random names, fixing the denominations, translate of the English words, and fixing random and incorrect denominations like "Cabinet" or "distribuciones".
- Fixed the notepad shortcuts of "Save" (Ctrl+g) and "Replace".
2020-04-06 13:17:20 +02:00
jimtabor 10d1afea18 [Explorer|Shell32]
Fix SHAppBarMessage (not perfect) by adapting wine code. See CORE-14439.
More work is required. Kept the original code for reference.
Example : SetWindowPos should be called via Post Message.
Code commit is to wake up other developers.
2020-03-21 19:13:55 -05:00
Tibor Lajos Füzi 432a5ddc7f
[TRANSLATION] Update Hungarian translation of usetup, syssetup, explorer, netshell, userenv, shortcuts (#2442) 2020-03-20 17:52:46 +01:00
Thomas Faber 111721a64a
[CMD] Fix another NtReadVirtualMemory parameter.
Spotted by Hermès.
2020-03-14 21:23:06 +01:00
Thomas Faber 72c51aabba
[NTOS:IO][GDI32][CMD] Fix some under-sized variables. CORE-14922
Fixes x64 boot with RTC.
2020-03-13 20:45:06 +01:00
Tibor Lajos Füzi ae7ce69f43
[TRANSLATION] Add Hungarian translation for explorer, msgina (#2341) 2020-03-06 19:15:58 +01:00
Serge Gautherie 92aabb07fb
[REACTOS] Fix remaining ' \n' typos, in *.rc (#2393)
Addendum to commit 554c41e4 (#2387).
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-03-06 19:08:25 +01:00
Katayama Hirofumi MZ 4e263367f8
[CMD] Fix 'if' command for root directories (#2394)
CORE-14797
2020-02-27 23:12:19 +09:00
Katayama Hirofumi MZ a9760098f7
[CMD] Correctly parse drive-decorated pathname (#2382)
Correctly interpret the drive-decorated pathnames (C: or D:dir1 etc). CORE-15871
2020-02-26 22:28:02 +09:00
Serge Gautherie 554c41e4d7
[REACTOS] Fix trailing spaces and other typos in string resources (#2387) 2020-02-26 11:45:27 +03:00
Aaron Dewes e5813c4644
Update german translation (#2291)
* Update German translations

* Update translation again

* More translations

* Some fixes in the german translation

* Some more fixes

* Little translation tweak

* Updates to 2nd review

* Little update

* Add back keyboard accel for IDS_OPENFILELOCATION.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-02-08 12:55:53 +01:00
Jose Carlos Jesus fb30239129 [FORMATING] Fix indentation of startmnucust
On branch CodeFormat
 Changes to be committed:
	modified:   base/shell/explorer/startmnucust.cpp

For a better visualization and understanding of the code
2020-02-05 19:27:10 +01:00
Katayama Hirofumi MZ 5f692ed1f0
[EXPLORER][INCLUDE] Fix wrong title on taskbar about ampersand (&) (#2266)
Co-authored-by: Mark Jansen <mark.jansen@reactos.org>
Based on @learn-more's CORE-11619.patch. CORE-11619
2020-01-22 09:58:43 +09:00
Hermès Bélusca-Maïto 771b87dc8f
[CMD] If the prompt displays the information line on top of the screen, ensure that the prompt won't be hidden below it.
CORE-16193
2019-12-29 19:14:03 +01:00
Hermès Bélusca-Maïto 0bede0062a
[CMD] Code formatting; don't hardcode the string buffer sizes in function calls. 2019-12-29 19:13:59 +01:00
Serge Gautherie f6ad093801 [CMD] Fix 'MAX_ULONG' typo in a comment (#2143) 2019-12-10 13:16:26 +01:00
Katayama Hirofumi MZ 1b7732093c
[CMD] Unquote string at pushd (#2031)
pushd command of cmd.exe didn't treat the quoted parameter correctly.
- Call StripQuotes in SetRootPath function.
- Fix typo of FEATURE_DIRECTORY_STACK.
This PR will enable "Command Prompt" here. CORE-12150
2019-11-15 11:51:58 +09:00
Brock Mammen 3fee5d0e1c [EXPLORER] Fix right-click menu for taskbar clock (#1944)
CORE-16397
2019-10-09 01:18:36 +02:00
Eric Kohl 6bfe4f68af [LABEL][CMD] Convert the label command to a standalone executable
CORE-9444
2019-09-22 14:51:23 +02:00
Eric Kohl 432854ee18 [ATTRIB][CMD] Convert the 'attrib' command into a standalone executable
CORE-9444
2019-09-21 11:41:15 +02:00
Joachim Henze d2976ca58e [EXPLORER] Mitigate CORE-15760 'system menu may close unexpectedly'
Looks like a race condition of the async part of SetForegroundWindow().

KVM https://reactos.org/testman/compare.php?ids=69065,69069
VBOX https://reactos.org/testman/compare.php?ids=69064,69068

I intend to merge that back into 0.4.12RC as well.
2019-09-20 00:11:10 +02:00
Brock Mammen 4d097cf8b4 [EXPLORER] Open search from start menu 2019-09-15 19:46:36 +03:00
Jose Carlos Jesus d5dca45e51 [WIN32SS][USER][EXPLORER] Add/Update portuguese translation (#1882) 2019-08-26 21:01:41 +02:00
Ioannis Adamopoulos e419195d37 [HEADERS] Move some helpers from undocshell.h to shellutils.h as they didn't cover anything undocumented. Merge traycmd.h in undocshell.h as both contain just undocumented shell definitions. 2019-08-25 12:20:52 +03:00
Andreas Maier 8d6c9e844c [EXPLORER] Properly initialise tbBtn.iBitmap. CORE-14262.
In CNotifyToolbar::AddButton tbBtn.iBitmap (imagelist-index)
was inialised with 0. Tigthvnc adds the icon wihtout NIF_ICON flag.
So the wrong icon index was kept and later replaced.
2019-06-19 20:37:04 +02:00
Andreas Maier 7796df375a [EXPLORER] fix traces 2019-06-19 20:37:04 +02:00
Hermès Bélusca-Maïto 6afe79f361
[CMD] Fix typo in Norwegian translation. 2019-06-10 16:57:59 +02:00
Yaroslav Kibysh cc387650c2
[CMD] Update Ukrainian translation. (#1641) 2019-06-10 16:56:38 +02:00
Yaroslav Kibysh da340662c6
[EXPLORER] Update Ukrainian translation. (#1624) 2019-06-08 18:30:03 +02:00
Mas Ahmad Muhammad 3300a8353c
[EXPLORER] Add Indonesian translation. (#1598) 2019-06-04 15:52:20 +02:00
Jose Carlos Jesus e2f898aa94
[EXPLORER] Update Portuguese Translation 2019-05-26 21:19:35 +02:00
Jose Carlos Jesus 1a23f3c9df
[EXPLORER] Add Portuguese (Portugal) pt-PT.rc translation. CORE-15967 (#1558) 2019-05-11 22:31:00 +02:00
Hermès Bélusca-Maïto a7ddabcc12
[EXPLORER] Minor cleanup/comment fixes. 2019-04-22 21:25:41 +02:00
Mark Jansen aff8581f6d
[RSHELL] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:39 +02:00
Mark Jansen 9824a0154e
[ATL] Retire atlnew 2019-04-18 19:21:37 +02:00
Jérôme Gardou 23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00
Brock Mammen fb4c9fbcf2 Fix regression with double click action
The double click action is now triggered by the WM_LBUTTONDBLCLK message
instead of WM_NCLBUTTONDBLCLK.
2019-03-24 23:34:57 +01:00
Brock Mammen e7ad10241f [EXPLORER] Add date tooltip to taskbar clock
CORE-11444
2019-03-24 23:34:57 +01:00
Yaroslav Kibysh a30e644dc4 [EXPLORER][SHPOLICY] Implement "NoSimpleStartMenu" policy (#1258)
- Enable "New Start Menu" control for all languages.
- Implement the "NoSimpleStartMenu" policy in shpolicy.c and its usage in explorer.
- Hide controls instead of disabling (as in Win XP/Vista).
2019-03-24 14:56:43 +01:00
Luo Yufan a0506042a6 Merge pull request #1412 from njlyf2011/improve-zh-translation
[TRANSLATION] Update Traditional Chinese translation
2019-03-11 16:50:17 +01:00
Oleg Dubinskiy b7850f1078 [EXPLORER] Show the Desktop Russian translation update 2019-03-11 16:49:24 +01:00
Mark Jansen f9e50f5471 [ATL] Add GET_X_LPARAM and GET_Y_LPARAM to atlwin.h
Remove all local definitions
2019-01-15 14:34:53 +02:00
Denis Malikov 655d24d9eb [KERNEL32] make some NLS and Format functions work. Wine-sync with latest version 2019-01-05 19:01:30 +01:00
Julio Carchi 1e141573e4 [TRANSLATION] Spanish translations (#944) 2019-01-02 12:01:44 +01:00
Luo Yufan c34833390a [TRANSLATION] Update Traditional Chinese translation. (#1193) 2018-12-27 16:24:24 +09:00
Luo Yufan 0a3f6f3b47 [TRANSLATION] Update Chinese translation. (#1187)
[REG][REACTOS][EXPLORER][APPWIZ][CONSOLE][INETCPL][INPUT]
[INTL][OPENGLCFG][TIMEDATE][DEVCPUX][COMCTL32][COMDLG32]
[MSGINA][NETCFGX][NETID][SETUPAPI][SHELL32][SYSSETUP]
Update Simplified and Traditional Chinese translations.
2018-12-25 17:28:36 +09:00
Mark Jansen 6940d9fdf0
[EXPLORER] Add TWM_GETTASKSWITCH, which seems to be used on windows
to get a handle to the task switch control.
This can then be used to send messages to it, like hiding/showing buttons
CORE-15424
2018-12-17 20:38:38 +01:00
Katayama Hirofumi MZ d310503d9e
[EXPLORER] Set display icon of task properties (#1130)
CORE-10494
2018-12-14 20:07:33 +09:00
Luo Yufan 39a478d17b [TRANSLATION] Update Simplified Chinese translation. (#1096) 2018-12-05 16:50:05 +01:00
Giannis Adamopoulos f05d01ec2f [FILEBROWSER]
In the struct passed to SHCreateFromDesktop the fourth field is the parameter that later on will be passed to ShowWindow. Initialize it properly so that when we run filrbrowser.exe in win2k3 the main window won't be hidden.
2018-11-27 10:33:45 +02:00
Giannis Adamopoulos 84fa20ec8b [EXPLORER]
-Rename StartMenuBtnCtxMenuCreator to CStartMenuBtnCtxMenu_CreateInstance.
-Rename CreateStartMenuSite to CStartMenuSite_CreateInstance.
-Remove a couple of definitions that were not used.
2018-11-27 10:33:42 +02:00
Hermès Bélusca-Maïto e77ffe2c72
[FILEBROWSER] Remove a duplicated include. Noticed by Manuel Oppermann (see ros-dev ML). 2018-11-18 21:06:21 +01:00
Pako Smith 6cc4e9f6f3 [CMD] Fix Coverity #715934 "Copy-paste error" (#1040)
Fix linked-list pointer comparison.
2018-11-15 11:57:41 +01:00
Arnav Bhatt 05c2e3e89e [USETUP][EXPLORER] ReactOS explorer translation and hindi font substitution. (#954) 2018-10-19 17:03:17 +02:00
Katayama Hirofumi MZ 31019e8c0c [TRANSLATION] Update Romanian translation (#851)
Translation from Stefan Fulea.
CORE-15023
2018-09-14 11:04:36 +02:00
Stanislav Motylkov 7cdbdadf34 [CMD] Do not overwrite input string on Ctrl+C (#852)
CORE-15029
2018-09-13 11:47:01 +02:00
Hermès Bélusca-Maïto 3f892a8d6b
[CMD] Add missing memory allocation NULL checks (#161). CORE-8304
Adapted from a patch by Jacob S. Preciado.

Bring also the code suggestions emitted during review.
2018-08-21 14:02:24 +02:00
Adam Słaboń af3d426685 [TRANSLATION] Polish translation update (#781)
In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.
2018-08-20 17:00:33 +02:00
Katayama Hirofumi MZ 35f62fc5ba [WIN32SS][FONT] Fix font metrics (#713)
Fix vertical alignment and Aspect penalty; improve font penalty system; fixes for Wine tests.
This is an update of #706. See CORE-11536 for more details.

The display of the following programs is fixed:
- Total Commander 8.52 setup: font displayed too large - CORE-11620.
- Effective File Search 6.8.1 german localization text rendering issues - CORE-14378.
- Font garbage in register splash screen in Foxit Reader 7.1.5 - CORE-9767.
- Calipers-1 is not displayed correctly - CORE-14302.
- Some MSI-installers draw their dialogs too large (example: Click-N-Type Virtual Keyboard 3.03.0412) - CORE-13161.
- Irfanview 4.50: font in zoom combobox displayed too large - CORE-14396.
- Rufus: The window and controls are displayed larger than necessary - CORE-14461.
2018-08-12 15:12:13 +02:00
Hermès Bélusca-Maïto 65f47728c0
[CMD] Small translation update. 2018-08-08 17:43:09 +02:00
Hermès Bélusca-Maïto 23b36fc173
[CMD] Add speed-optimized checks for dot-directories "." and ".." .
Adapted from PR #592 by Katayama Hirofumi MZ.
2018-08-06 22:40:17 +02:00
Hermès Bélusca-Maïto 17ebc8421a
[CMD] Fix the way the DIR-command pattern is interpreted when it contains paths or filenames with trailing dots.
Particular DIR commands like: "DIR .", "DIR .." now work as expected,
and we also correctly fix the behavior for files without extension,
that r38746 (2b06cfc0) originally tried to fix but broke the previous
examples.
Therefore "DIR *." and "DIR noextfile." work too.

Pathological cases like "DIR \...", "DIR \...\.", "DIR ..\...\.." and
the like (and with more than 3 dots) now work as expected.

Adapted from PR #592 by Katayama Hirofumi MZ, but with extended bugfixing.

CORE-13961
2018-08-06 22:40:17 +02:00
Hermès Bélusca-Maïto c57d49d0c1
[CMD] Code formatting; use LPCTSTR where possible; use a MAX_PATH sized dircmd buffer. 2018-08-06 22:40:17 +02:00
Katayama Hirofumi MZ 12517aa309
[CMD] Create a DirNodeCleanup() helper for cleanup and simplify code (adapted from PR #592). 2018-08-06 22:40:16 +02:00
Hermès Bélusca-Maïto 06504ee4be
[CMD] Fix French translation. 2018-08-06 22:40:12 +02:00
Timo Kreuzer cf77354dce [REACTOS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Julio Carchi d7559e2354 [TRANSLATIONS] Fix spanish translations for some resources (#725)
Setup wizard
Network settings wizard
Input CPL
Open file dialogs
Devmgr
Explorer
2018-08-03 15:08:13 +02:00
Hermès Bélusca-Maïto 8dbe62b294
[EXPLORER] Improve debug output. 2018-07-29 16:21:06 +02:00
Jared Smudde 1f2f03dd76 [EXPLORER] Fix creation of shortcuts in the start menu. 2018-07-25 00:57:58 +02:00
Katayama Hirofumi MZ 75b09f3f88 [EXPLORER][SHELL32][USER32] Implement 'Show the Desktop' action of Task Bar (#668)
The keyboard shortcuts Win+D and Win+M are also enabled.

- Implement IShellDispatch4::ToggleDesktop().
- Implement some commands in CTrayWindow.
- Add "sdk/include/reactos/traycmd.h" for tray commands.
- Fix task window switching.
- Improve the user32!SwitchToThisWindow() function and use it.

CORE-14318, CORE-13157
See also: CORE-14806 and CORE-8723
2018-07-13 10:34:42 +02:00
Katayama Hirofumi MZ 706a1c5132 [CMD] "del /s directory" command doesn't show the directories or files names in the confirmation message (#680)
CORE-14059
2018-07-13 01:47:45 +02:00
Katayama Hirofumi MZ 58825de892 [EXPLORER] Fix TrackCtxMenu about NULL ppt (#666)
CORE-14772
2018-07-08 16:36:28 +02:00
Katayama Hirofumi MZ a882ec7a02 [SHELL32][EXPLORER] Update system-wide environment variables (#663)
- Implement shell32 RegenerateUserEnvironment() function and use it.
- CShellBrowser and CDesktopBrowser implements WM_SETTINGCHANGE actions.

CORE-1459, CORE-14397
2018-07-08 16:32:42 +02:00
Hermès Bélusca-Maïto 12de9654b0
[EXPLORER] Simplify the current-shell-is-explorer check when trying to start the auto-start programs, by using the existing code. 2018-06-22 16:34:16 +02:00
Katayama Hirofumi MZ 0a8cd95cad [USERINIT][EXPLORER] Fix auto startup of Start Menu (#594)
- Remove code for Start-Menu auto-startup items from userinit and put it where it belongs: in explorer.

CORE-10839
2018-06-22 16:02:25 +02:00
Katayama Hirofumi MZ c84f398306 [EXPLORER] 'Run' (Win+R) should set the proper current directory (#593) 2018-06-21 18:18:57 +02:00
Andrea Crescentini d303b70b7a [TRANSLATION] Improving italian translation (#623)
- Improved Italian translation for USETUP, WELCOME, REACTOS, EXPLORER.
- Completed translation in SYSSETUP.
- Correct some characters encoding and text alignment in USETUP.
2018-06-21 14:03:35 +02:00
Serge Gautherie 637026ffd7 [RSHELL] Remove a duplicated add_custom_command() call (#570) 2018-06-05 20:17:34 +02:00
Hermès Bélusca-Maïto a165999067
[CMD] Improve the situations when the console title can be changed.
- Introduce two small helpers to change and restore the console title.
- Console title can change even when internal commands are executed.
- Note that when commands are run from within batch files, title is unchanged.
- When "cmd.exe /c command" is run, the console title is unchanged; however
  when "cmd.exe /k command" is run, the console title changes.
2018-06-03 02:36:39 +02:00
Hermès Bélusca-Maïto 39af25024a
[CMD] Print a newline after the interactive 'pause' command message finishes to run. 2018-06-03 02:36:32 +02:00
Hermès Bélusca-Maïto ddd03a8973
[CMD] Use string-safe call to build the new console title (possibly truncated, we don't care), avoiding any buffer overflow. Caught by David Quintana. 2018-05-20 19:57:43 +02:00
Hermès Bélusca-Maïto 73f799629b
[TRANSLATION] Minor translation update. 2018-05-01 17:45:06 +02:00
Hermès Bélusca-Maïto 03c233bcd0
[CMD] Improve how the command prompt displays when one presses Ctrl-C/break after having pressed ENTER, or after a command has been run. 2018-04-29 00:57:16 +02:00
Hermès Bélusca-Maïto a3b36f8d3e
[CMD] Don't reset bCtrlBreak too early.
This allows to break commands such as:

C:\ReactOS\system32> for %f in (*.*) do dir

as one would expect: stop the currently running 'dir' and the 'for'.
"bCtrlBreak" doesn't need to be volatile too.
2018-04-29 00:53:49 +02:00
Hermès Bélusca-Maïto 6dd27bd467
[CMD] Use CheckCtrlBreak(). 2018-04-29 00:50:40 +02:00
James Woodcock 8b72fce3e1
[CMD] Use _T() rather than L to initialise TCHARS. 2018-04-28 22:16:59 +02:00
James Woodcock d7e71357dc
[CMD] Fix CTRL-C handling.
Using CTRL-C to cancel command line input would leave the prompt in
a state where the next command would be ignored.  For example:

dir<CTRL-C>
dir

would cause cmd.exe to ignore the second dir command.
2018-04-28 22:16:58 +02:00
James Woodcock 23de2099e0
[CMD] Don't pass CTRL-C to child processes.
CORE-11677

The standard Win32 Console Control Handler will give CTRL-C events to
processes spawned from cmd.exe. If cmd.exe calls GenerateConsolCtrlEvent()
then the child process will receive two CTRL-C events.
2018-04-28 22:16:50 +02:00
Hermès Bélusca-Maïto c62bccdda0
[EXPLORER] Implement the feature of cleanly shutting down the explorer shell when cancelling the shutdown-dialog while pressing the CTRL-ALT-SHIFT keys.
See the feature description in https://msdn.microsoft.com/en-us/library/windows/desktop/cc144064(v=vs.85).aspx
and the additional observations reported in CORE-14358 .
2018-04-08 00:36:56 +02:00
Hermès Bélusca-Maïto 6093abdebb
[EXPLORER] Remove trailing whitespace. 2018-04-08 00:36:51 +02:00
Hermès Bélusca-Maïto eff4c2138d
[EXPLORER] Remove double 'return' statement. Determining whether it should be HTBORDER or HTCLIENT is left as an exercise to the reader.
Spotted by 'mudhead'. CORE-14528
2018-04-07 19:06:22 +02:00
Hermès Bélusca-Maïto 4127024b0d
[EXPLORER] Handle WM_CONTEXTMENU message in CNotifyToolbar and BN_CLICKED notification in CSysPagerWnd.
With these, we generate the WM_CONTEXTMENU and NIN_(KEY)SELECT
shell icon notifications that applications expect when they handle
shell notification icons with uVersion >= 3.

This fixes in particular the previously unresponsive icon of KVIrc 4.x,
and more generally *all* the notifiation icons of Qt applications.
CORE-10605 #resolve
2018-04-02 21:13:35 +02:00
Hermès Bélusca-Maïto 2f108ac8a8
[EXPLORER] Add missing 'break' statements. Spotted by mudhead. CORE-14518 2018-04-02 16:12:25 +02:00
Eric Kohl 4916c4cfd5 [CMD] Correct the action on shorcut Ctrl-M
Patch by Jacob S. Preciado.

CORE-10142
2018-03-22 22:29:33 +01:00
Mark Jansen bc67bb3dd0 [EXPLORER] Do not force X86 in the manifest. 2018-03-19 09:44:25 +01:00
Robert Naumann 69acbe905a
Update German translation (#438)
* [BROWSEUI] Update German translation

* [SHELL32] Update German translation

* [COMCTL32] Update German translation

* [COMDLG32] Update German Translation

* [SETUPAPI] Update German translation

* [EXPLORER] Update German translation
2018-03-17 22:48:16 +01:00
Thomas Faber ede8794c4b
[EXPLORER] Remove SetBandSiteInfo hack. CORE-9809 2018-03-03 17:17:13 +01:00
Giannis Adamopoulos b95fff5bce [EXPLORER] CTrayWindow: Set the initial lock state in the band site
This alongside the previous commit, fix locking and unlocking the taskbar.
2018-02-28 17:21:19 +02:00
Giannis Adamopoulos ec91188fff [WINSRV] Implement sending the hard error balloon package to explorer
[EXPLORER] Implement showing the hard error balloon
2018-02-26 16:51:59 +02:00
Pierre Schweitzer 6061c78e91
[EXPLORER] Update French translation 2018-02-16 19:36:25 +01:00
Serge Gautherie f1535c2d6e [EXPLORER] Fix a Clang-Cl warning about Icon->ProcessId
"warning: expression result unused [-Wunused-value]"
Regressed in be2bf9b.

CORE-14306
2018-02-12 08:41:26 +00:00
Bișoc George abdde0b764 [EXPLORER] WatchList should be freed with delete[], not delete (#374)
WatchList is a set of array objects, initialized with "new[]", so it should be freed with "delete[]" to free all of its elements. Otherwise using only "delete" only frees the first variable but not its array. This would lead to an undefined behaviour.
2018-02-11 22:56:38 +01:00
David Quintana 3003471e64 [EXPLORER] Send balloon notifications to the callback message.
TODO: Send NIN_BALLOONUSERCLICK when the user clicks on the balloon content (not the X button).
2018-02-10 16:31:26 +01:00
Joachim Henze 579e1e6b24 [EXPLORER] Update all preview bitmaps showing notification area
To reflect recent changes in taskbar height, icon spacing,
clock x and y margins.
Also make sure all shots show the exact same time
and choose a more localization agnostic time.
2018-02-06 17:35:08 +01:00
Joachim Henze bd7eae6795 [EXPLORER] Update classic/modern startmenu preview bitmaps
To reflect our recent updates in banners and notification area.
Also reduces explorer binary size by 214.016bytes.
2018-02-06 14:48:43 +01:00
Adam Słaboń 0d838f40a3 [TRANSLATION] Polish translation update (#357) 2018-02-04 18:45:20 +01:00
Hermès Bélusca-Maïto 131678a025
[SHELL32] Rewrite the wrapping code for shell taskbar notifications.
- Introduce the TRAYNOTIFYDATAW structure, as documented by Geoff
  Chappell in "WM_COPYDATA for Taskbar Interface", at
  http://www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/copydata.htm
  that is the data structure passed between shell32 and explorer for
  communicating shell notify icon information.

- In Shell_NotifyIcon(), correctly capture the (ANSI and) UNICODE
  structures provided by the caller, properly taking into account for
  the different NOTIFYICONDATA structure sizes existing out there.
  The different strings are now properly null-terminated (especially
  szTip if it needs to be truncated out), and the flags validated.

- Remove the now unneeded "SHELL_NotifyIcon()" helper function.

[EXPLORER] Use TRAYNOTIFYDATAW and adjust the callers.
2018-02-04 18:11:50 +01:00
Hermès Bélusca-Maïto 04498f3eb5
[EXPLORER] Don't use deprecated StrNCpy function but use the string-safe StringCchCopy instead. Also fix a copy-paste error in the _countofs. 2018-02-04 01:57:05 +01:00
Hermès Bélusca-Maïto f982d77b8a
[CONUTILS] Diverse improvements: start doxygenating and add some resource messsage helper functions.
- Start to doxygenate the library, focusing in great details on the
  functions of the "outstream" module.
- Add a K32LoadStringEx function that expands (K32)LoadString by
  allowing a LanguageId parameter to be able to load strings from other
  languages than the current one.
- Add "ConResMsg*" helper functions to be able to (format and) print
  message strings with inserts that come *NOT* from a message table (as
  usual) *BUT* from resource string tables.
  Will be helpful for CORE-14265 in particular.

[CMD] Fix the call to ConMsgPrintfV().
2018-02-02 00:41:54 +01:00
Luo Yufan a13c998183 [TRANSLATION] Simplified Chinese translations updated. (#348) 2018-02-01 02:50:29 +01:00
Joachim Henze f5d679aeb9 [EXPLORER] Pixel-perfect x-margins surrounding the clock
To look like XP/2k3.
Relies on d11e7af5f2

CORE-14272
2018-01-30 18:42:21 +01:00
Giannis Adamopoulos 556c485c8b [EXPLORER] Improve the width of the taskbar clock
Don't take into account TRAY_CLOCK_WND_SPACING_X twice
Increase TRAY_CLOCK_WND_SPACING_X
2018-01-29 22:32:17 +02:00
Giannis Adamopoulos d11e7af5f2 [EXPLORER] Center the text of the clock
CTrayClockWnd: Fix the calculation that centered the text of the clock.
CTrayNotifyWnd: Restore the 1 pixel margin between the clock and the pager.
2018-01-29 21:50:33 +02:00
Joachim Henze c109dc9f24 [EXPLORER] Tweak x-margins surrounding the clock
To look more like XP/2k3.
Not pixel-perfect yet, that would require asymmetric margins.

CORE-14272
2018-01-29 19:15:50 +01:00
Giannis Adamopoulos fabf069daf [EXPLORER] Fix showing the lock status in the taskbar popup menu 2018-01-29 18:15:31 +02:00
Joann Mõndresku d80ef2c90a [TRANSLATION] Various translations to Estonian (#329)
Estonian translations for shell + explorer, cpl files (access, appwiz, desk, timedate), devmgr, browseui, comctl32, aclui, avifil32, comdlg32 and credui.
2018-01-29 17:03:27 +01:00
Giannis Adamopoulos 22d1e1017f [EXPLORER] CNotifyToolbar: Set TBMETRICS::cxBarPad and TBMETRICS::cyBarPad
MSDN says that these values are not used but apparently they are used as a padding around the buttons.
This helps to center the buttons in the notification area.
2018-01-29 17:30:44 +02:00
Giannis Adamopoulos c54c5ebb5f [EXPLORER] CTrayWindow: Draw the sizer only when the taskbar is not locked. 2018-01-29 00:27:45 +02:00
Giannis Adamopoulos 488477d10d [EXPLORER] CTrayNotifyWnd: Fix resizing when the clock is hidden 2018-01-28 22:38:48 +02:00
Giannis Adamopoulos 85d7dd4f83 [EXPLORER] CTrayNotifyWnd: Only update the requested dimension when handling TNWM_GETMINIMUMSIZE. 2018-01-28 22:04:34 +02:00
Giannis Adamopoulos 5a1984c998 [EXPLORER] CTaskSwitchWnd: Implement getting the setting for grouping tasks. This doesn't work yet but the setting does get stored in m_IsGroupingEnabled. TSWM_ENABLEGROUPING is not needed. 2018-01-28 20:24:02 +02:00
Giannis Adamopoulos 6c073e9539 [EXPLORER] CTrayClockWnd: Implement showing and hiding seconds or the whole clock from the properties window. 2018-01-28 18:59:18 +02:00
Giannis Adamopoulos 455bce68b5 [EXPLORER] -Make CSysPagerWnd, CTaskSwitchWnd, CTrayClockWnd and CTrayNotifyWnd proper com objects so that their lifetime is managed properly. 2018-01-28 18:35:16 +02:00
Giannis Adamopoulos 7f35908ad2 [EXPLORER] CTrayNotifyWnd: Simplify how it interacts with its parent and children. Clean up. 2018-01-27 19:41:09 +02:00
David Quintana 3d75cc0814 [EXPLORER] Split up the notification area into a few more manageable pieces. 2018-01-24 14:41:31 +01:00
David Quintana 5ec441a867 [EXPLORER] Workaround for something that may or may not be an "unintended feature" of the comctl toolbar.
Apparently the indices provided in NMTBGETINFOTIP (TBN_GETINFOTIP data struct), are not reliable,
but since the lParam values are, and it saves us a lookup, we will be using those instead. Win-Win!
2018-01-23 23:10:44 +01:00
David Quintana bc43733e48 [EXPLORER] Implement balloon queueing. 2018-01-23 22:13:01 +01:00
David Quintana bbca71c4a5 [EXPLORER] Implement rudimentary uVersion management, and notification balloons.
- uVersion will only be truly useful when Vista+'s V4 style notification icons are implemented.
- Balloon notifications do not yet support queuing and auto-closing.
- Force the notification icon tooltips to always show even if the taskbar isn't foreground.
[ROSCTRLS.H] Implement CTooltips class which manages a comctl32 tooltips window.
2018-01-23 22:13:01 +01:00
Ged Murphy cb8cc0d098 [EXPLORER]
We need to leave one slot available for the m_WakeUpEvent handle
2018-01-20 18:50:10 +00:00
Ged Murphy be2bf9b8c5 - Properly handle cases of more than 64 icons
- Don't leak the list of handles on each pass through the loop
- Make sure we clean up if the wait fails for whatever reason
2018-01-20 18:38:42 +00:00
gedmurphy 851e0ca5a8 Delete the lock on exit 2018-01-20 18:38:42 +00:00
gedmurphy 2abd068398 Properly delete the object and allow its destructor to cleanup 2018-01-20 18:38:42 +00:00
gedmurphy 8c91a00fcf Minor update 2018-01-20 18:38:42 +00:00
gedmurphy 6c9629bb72 forgot about the gcc build... 2018-01-20 18:38:42 +00:00
gedmurphy d66c6890f7 Initial implementation of a watcher for the systray (notification area) that removes icons if the owning process dies/terminates without removing it 2018-01-20 18:38:42 +00:00
David Quintana 2c8ed37605 [EXPLORER] Fix the code that requests the taskbar to recalculate the size,
after an icon is removed due to missing owner. Also cleaned up the other case.
2018-01-18 02:20:20 +02:00