- Import the <msg> code again. reactos.exe doesn't show a "Finish" button as promised, but instead presents you with an unfinished GUI installer.
- Also import the messages. The French translation is copied from reactos.exe, so it isn't as exact as the English or German ones, but it carries the meaning.
svn path=/branches/ReactOS-0.3.17-FOSDEM2015/; revision=66121
- Fix compilation
- Fix lang files (should be UTF8 w/o BOM)
- Translate into French
- Do NOT forget that RosBE is now quite incompatible with Windows 2000 !!!
svn path=/branches/ReactOS-0.3.17-FOSDEM2015/; revision=66117
- Apply parts of the welcome.c part from r62439 to this branch. Compared to CLT2014, remove the code for handling <msg>, we don't need it anymore.
This change should go into Trunk if it works well :)
- Create a new French resource file out of the English one to let Hermès translate it to French.
svn path=/branches/ReactOS-0.3.17-FOSDEM2015/; revision=66116
Translate the welcome.exe into English and customize all menu entries for the files on the FOSDEM 2015 CD
svn path=/branches/ReactOS-0.3.17-FOSDEM2015/; revision=66115
- Update readme.txt with CD contents (à la CLT).
- Add wallpapers (and one based on artwork by Henry Tang, that was already used in the official 0.3.17 release) and activate the fosdem one.
- Fix the autorun path (should be done globally in trunk later on, i.e. after FOSDEM2015 is over).
- Add user-friendliness to the boot menu.
svn path=/branches/ReactOS-0.3.17-FOSDEM2015/; revision=66111
- CORE-9069 #comment Add a "NOT_IN_HYBRIDCD" flag (I don't have atm. a better name...) to specify files that must not be present in the bootcd/... or livecd/... directories of the hybridcd. The flag name is confusing because for few files (eg. readme.txt) it is used together with the target "all hybridcd". In this case, that means: add readme.txt file to the bootcd and livecd root directories, add it to the hybridcd root directory but NOT in the bootcd/ and livecd/ directories of the hybridcd... Everybody follows?
- Remove the bootsector files for the livecd (only keep isoboot though :) ) since they are not needed there (they are only needed for the bootcd).
svn path=/trunk/; revision=66092
Make the DiskReadBuffer location and size dynamic. Should fix a number of issues with non-standard BIOSes. Many thanks to jeditobe for his help with testing/debugging of this issue.
CORE-8899 #resolve
CORE-9031 #resolve
svn path=/trunk/; revision=66087
- Fix window from point so it handles disabled windows correctly.
- Cleanup processing mouse routine.
- See CORE-7447.
svn path=/trunk/; revision=66085
- Disable unused dir_hash_next_dir function and corresponding target_dir_traversal structure definition.
- Be really sure de->head and de->child are initialized at NULL.
- Remove extra parentheses and unused variable.
svn path=/trunk/; revision=66083
- Plugging in the real fix for CORE-6129!
- Works like it should, but CMD properties window gets active when it should not. See CORE-6651.
svn path=/trunk/; revision=66078
- Finally fix ATI tests. Break through while testing User32:win.c:test_window_from_point. See CORE-6551.
- If any trouble, please create a new Jira report.
svn path=/trunk/; revision=66074
- Add quite a lot of tests for IOCTL_TCP_QUERY_INFORMATION_EX
This IOCTL is quite important because that's how iphlpapi gets data from it.
Also, this can be used as a viewer for quite a lot SNMP info as described here: http://www.oidview.com/mibs/0/RFC1213-MIB.html
svn path=/trunk/; revision=66070
- Move TCP/IP driver setup code from netcfgx to syssetup.
- Implement SetupStartService().
This installs the TCPIP driver even if no network adapter is available.
CORE-8420 #resolve
svn path=/trunk/; revision=66069
Fix generation of ARM assembly stubs with C++ name mangling. Patch by Yuntian Zhang.
CORE-8700 #resolve #comment Committed, thanks.
svn path=/trunk/; revision=66068
* Replace the page setup dialog with a modified copy from comdlg32. Use PageSetupDlg and a hook function to bring the dialog on screen instead of DialogBox and a dialog procedure. With this, PageSetupDlg can do most of the work (init the controls for example).
* Save the returned hDevMode and hDevNames to two global variables, so we can use them in later calls to page setup and print.
* Include header, footer and page margins when saving/loading settings.
* Remove printer setup from the file menu (and related code/resources) since it isn't needed anymore.
* Brought to you by Ricardo Hanke.
CORE-9040
svn path=/trunk/; revision=66067
- When sending set cursor with an error hit, it should locate a pop up window if any are visible. See CORE-6651.
- Need to fix NtUser co_IntProcessMouseMessage and co_WinPosWindowFromPoint properly. While testing, added hack to help make this work.
- REAL fix for CORE-6129.
svn path=/trunk/; revision=66056
Introduce a way to add arbitrary files into the hybrid cd under a "extras" directory:
- put your files into /trunk/reactos/modules/hybridcd_extras
- do a cmake . && ninja hybridcd
- voilà.
Notice that you need to redo a configure (via "cmake .") in order to update the hybridcd list of files that get included into the hybridcd...
CORE-9069
svn path=/trunk/; revision=66052
Add basic Hybrid-CD generation to our build system.
Few changes were needed, especially in how we deal with the CD target "all": it's only for all the CD targets *BUT* the hybridcd. For the hybridcd you need to always specify the target manually (like in "... FOR all hybridcd" or "... FOR bootcd hybridcd" for example).
Since at the moment we cannot have the bootcd in RAMDISK, and I want to be able to either have the hybridcd booting livecd from within the CD (i.e. read/writes from the CD) or in RAMDISK, I need to also add the files that are going to be copied into the bootcd or livecd into the hybridcd.
CORE-9069 #resolve
svn path=/trunk/; revision=66051
* Fix a long-lived signed/unsigned mismatch that may or may not have caused a few issues when hot-tracking the menubar.
svn path=/trunk/; revision=66046
SepDuplicateToken: Do not allocate a new ModifiedId for the duplicated token. Use the ModifiedId of the source token instead. This fixes the DuplicateTokenEx test.
svn path=/trunk/; revision=66045
* Fix the notify window not resizing itself when the number of icons changes.
* Add error prints when AlignControls fails and exits early.
* Rename the Shell_NotifyIcon handler methods to something more appropriate.
CORE-9061 #resolve
svn path=/trunk/; revision=66040
- Remove hack to work around issue CORE-9039.
- Bypass two more DDE message calls from callback. Remove unneeded code.
svn path=/trunk/; revision=66032
* Overhaul the Popup method's position calculation. It now takes into account proper alignment preferences and exclusion rectangles in order to position menu popups better.
* Fix a small compatibility issue with windows shell objects.
* Use the item rectangle for the exclusion, so that the popup code can properly calculate how to flip the menu position if it doesn't fit downwards.
[EXPLORER]
* Fix the flags sent to Popup when showing the start menu. We have flags that say exactly what we want, and MPPF_ALIGN_LEFT/RIGHT were introduced with NT6 anyhow.
CORE-9004 #resolve #comment Should be fixed with trunk r66030.
svn path=/trunk/; revision=66030
Set directory creation date to creation date of its parent, and fix root directory creation date.
This fixes a off-by-one month if ISO was created between February and December,
and invalid dates if ISO was created in January.
svn path=/trunk/; revision=66029
Database Update. This fixes the now dead LibreOffice link, too.
I completely skipped MirandaIM because they suck by deciding to do the same shit, Filezilla did. SF Malware "optimized" installer!
svn path=/trunk/; revision=66026
- Fix DeviceRelations allocation bug
- Code style: Use sizeof(UNICODE_NULL) where needed; use sizeof(*ptr) for size of type pointed by ptr, when allocating space for ptr.
svn path=/trunk/; revision=66020
* Allow the result of the notify requests to return back to the caller. Fixes regressed shell32:systray winetests.
CORE-8840 #resolve #comment Should be properly fixed in r66019.
svn path=/trunk/; revision=66019
* Fix resource strings so they compile correctly.
* Make use of the resource strings for the tooltip.
* Implement a context menu for the volume icon, using resource strings.
NOTE: I have a strange issue where the cursor disappears while the popup is open. No idea if it's my fault or win32k.
svn path=/trunk/; revision=66015
- Whitespace fixes,
- Add braces for long "case blah: ..." code blocks,
- Add more informational messages when a feature is unimplemented (some control codes and cases happening when using ramdisk with bootcd).
svn path=/trunk/; revision=66013
Instead of keeping binary C arrays for FAT bootsectors (that by the way were completely out of date and were broken) in header files, just generate them out of our ASM-compiled bootsectors, with bin2c (as we do for PCI data for the HAL) and use them instead! So now we can use installfreeldr.exe to install e.g. a correct bootsector on a USB key that will work for loading freeldr! (and thus get rid of the Syslinux hack I presented in my video).
svn path=/trunk/; revision=66012
- Fix remaining DDE issues, re-sync DDE code from wine. Add QOS startup. Moved error debug prints to traces. Over all improvement with test results.
svn path=/trunk/; revision=66011
- Move directory enumeration into its own routine to prevent code duplication.
- Also, only take care of sub-node at the end of the enumeration. It doesn't make sense before.
- Supporting sub-nodes is still to be done.
svn path=/trunk/; revision=66009
Also retrieve $STANDARD_INFORMATION attribute on directory enumeration to get the right file attributes.
This fixes improper display in cmd & in explorer due to missing file attributes flags
svn path=/trunk/; revision=66007
- Implement DDE from wine. Leaving debug errors on the run and later move to trace. See CORE-7447.
- Use callbacks to User32 to convert the data and track it in Win32k.
- Add a new Quality of Service atom.
- Add things to class.c.
- Shell32 tests run now too, or only 4 run. This might be fixed too, since locating a lParam write back issue.
svn path=/trunk/; revision=66000
- Uppercase fixing for the english app title of Sound Recorder. From a suggestion by Jared.
- Fix some french translation.
- Fix some "reactos_sndrec32" thingie in other languages.
Translators, please review and fix the translations!
CORE-9029 #resolve #comment Corrected in revision 65986, thanks!
svn path=/trunk/; revision=65986
- Correctly append a backslash to the BootPath (if needed).
- Be able to specify relative boot paths (relative to the current boot device): as a consequence, remove the "LiveCD" hackish special value that was introduced long long ago.
- Fix BootPath retrieval in ReactOSSetup mode (via the SystemPath optional value), and use a better way to build the temporary txtsetup.sif full file names.
As a consequence we can now build hybrid cds with the following architecture:
\
--> loader\ (bootsectors + free/setupldr.sys)
--> myboot\ (contents of what_defaults_to_reactos directory for the bootcd)
--> mylive\ (contents of what_defaults_to_reactos directory for the livecd)
--> <regular_files>
and
freeldr.ini specifying the following values:
; The Setup entry
[Setup]
BootType=ReactOSSetup
SystemPath=\myboot
; The LiveCD entry
[LiveCD]
BootType=Windows2003
SystemPath=\mylive
Options=/MININT
Part 2/2
CORE-9023
svn path=/trunk/; revision=65982
- Some whitespace fixes in fs.h and code simplifications in fs.c
- Make FsOpenFile working correctly on non-ARC and ARC file names.
- Use FsOpenFile for opening ramdisks instead of ArcOpen (the file "handle" returned by FsOpenFile is just the FileId for ARC functions). Therefore we can open ramdisks files using Windows OSLOADER syntax, i.e. /RDPATH=the_image_file instead of being forced to append for example: net(0) (as in: /RDPATH=net(0)\the_image_file ): see http://lokniketan.org/index.php?title=PXE_booting_to_BARTPE#Work_with_files_in_the_TFTPBOOT_directory for an example of what I mean.
Part 1/2
CORE-9023
svn path=/trunk/; revision=65981
- Implement Ime (only) class support. This is for the new synced class tests. Recommending Developers choice for testing real Imm32.dll support. Should include registry Loading of IMM via Win32k.
- Based on patch by Piotr Caban : Move IME window procedure to user32.
svn path=/trunk/; revision=65977
- ARC disk functions return ARC_STATUS codes (that are ULONG btw, not LONG). Fix prototypes where needed.
- Rearrange a bit our arc.h header by putting together related structures.
[FREELDR]
- Remove arcemul/time.c (put functions back into machine.c). ARC functions should use some SYSTEM_PARAMETER_BLOCK firmware vector array instead...
svn path=/trunk/; revision=65964
Implement pre-install 'select format' and 'format' pages. These enable the user to re-format an existing install partitition.
CORE-9005 #resolve
svn path=/trunk/; revision=65962
Implement the FWAIT instruction.
Fix FPU exception handling. Implement exception masking.
Fix several other bugs and wrong definitions.
svn path=/trunk/; revision=65942
Split the D8/DC opcode handler into two handlers to eliminate the extra branch.
Implement opcode DF (New instructions: FBLD and FBSTP).
svn path=/trunk/; revision=65940
Fix several serious bugs in Fast486FpuToInteger.
Halfplement opcode 0xDD (everything except FRSTOR and FSAVE).
Cleanup the code a little bit.
svn path=/trunk/; revision=65935
Implement opcode 0xDE (New instructions: FADDP, FMULP, FCOMPP, FSUBRP, FSUBP, FDIVRP and FDIVP).
Fix a bug in the 0xD8/0xDC opcode handler.
svn path=/trunk/; revision=65934
"unfix" ROP_TO_ROP4, it was correct before, but the used ROP in NtGdiInvertRgn was not correct. Fixes display of shortcuts.
svn path=/trunk/; revision=65931
- Implement initializing themes as msdn suggests. We don't have shsvcs.dll yet but it doesn't harm to make our gina themes ready.
See http://support.microsoft.com/kb/KbView/322047
svn path=/trunk/; revision=65930
- Use a better icon for the bootcd.
- Replace the GUI ReactOS Setup program icon with a better one, copied from msiexec (just to note, the "setup" icon from shell32 and appwiz are the same as msiexec one). Inspired from CORE-8971.
svn path=/trunk/; revision=65925
[CMD]
Enhance the "ver" command, specifying the OS on which cmd.exe runs (that can be different from ReactOS!) and the reported OS version when using the $V prompt format specifier.
Patch by Lee Schroeder, with modifications by me, see the report for more details.
CORE-8970 #resolve #comment Committed in revision 65924, thanks!
svn path=/trunk/; revision=65924
You can install ReactOS on 'unpartitioned space' again. Usetup will create a primary partition that spans the whole unpartitioned space, format the partition and install ReactOS on that partition.
svn path=/trunk/; revision=65923
Fix calculation of the source point in EngCopyBits for complex clipping regions. One might assume that this function is so essential, that it would do at least the most basic stuff correctly, but ...
svn path=/trunk/; revision=65918
Display an error message with the file name in case we cannot get a file size over PXE.
This makes the error message "(../../boot/freeldr/freeldr/fs/pxe.c:107) err: PxeCall(0x25, 0000E8DE) failed with exit=1 status=0x1" in case of PXE boot less dramatic: it is expected not to find NTBOOTDD.SYS
svn path=/trunk/; revision=65917
Move the code that updates the partition type from FormatPartitionPage to a separate function (UpdatePartitionType) and call it from SelectPartitionPage. This fixes the creation of primary partitions.
svn path=/trunk/; revision=65916
- Fix definition of ROP_TO_ROP4
- Move some macros to intgdi.h
- Fix coordinate space mismatch in IntGdiBitBltRgn and IntGdiFillRgn
Fixes console window selection
svn path=/trunk/; revision=65914
InstallDirectoryPage1: Initialize DestinationRootPath. ReactOS can be installed on an existing partition again.
CORE-8984 #resolve
svn path=/trunk/; revision=65913
- Rewrite NtGdiInvertRgn to not violate locking order
- Remove DceUpdateVisRgn from DC_vPrepareDCsForBlit: It is not GDI's task to handle Window clipping, it violates locking order, it's slow, it's ugly to call USER functions from GDI internals, it's a hack. I couldn't see any clipping regression, if you find anything, let me know.
svn path=/trunk/; revision=65910
Use RegCreateKeyEx to be able to create the settings registry key in case it doesn't already exist.
Patch by Ricardo Hanke.
CORE-8986 #resolve #comment Fixed, thanks!
svn path=/trunk/; revision=65906
Implement RamdiskQueryDeviceRelations() when the device is a drive
According to Hervé, this allows booting ReactOS livecd using PXE (with one of his patch).
svn path=/trunk/; revision=65902
- Implement RamdiskQueryCapabilities() which is used in case of IRP_MJ_PNP + IRP_MN_QUERY_CAPABILITIES
- Implement RamdiskQueryDeviceText() which is used in case of IRP_MJ_PNP + IRP_MN_QUERY_DEVICE_TEXT
- Implement RamdiskQueryBusInformation() which is used in case of IRP_MJ_PNP + IRP_MN_QUERY_BUS_INFORMATION
- Implement RamdiskIoCompletionRoutine() which is the completion routine in case of IRP forwarding
- Also implement support for IRP_MJ_PNP + IRP_MN_START_DEVICE
- Define the RamdiskDiskInterface GUID
This slowly gets RamDisk driver PnP compliant...
svn path=/trunk/; revision=65900
Change the partition creation workflow, so that the user is forced to choose a file system type and format a partition after it has been created.
svn path=/trunk/; revision=65899
Wait for 1 min max but don't limit the number of acquire, ie: swap inverted args.
This fixes ASSERT on use.
Spotted by Hervé
svn path=/trunk/; revision=65898
Finish Japanese translation, fix by Ai Asano and reported by Marco Maria Emanuele Bartucci.
CORE-8983 #resolve #comment Fixed, thanks!
svn path=/trunk/; revision=65897
Use ANSI when printing to the console. Fix the logic of LookupPrivilegeDisplayNameW.
Patch by Ismael Ferreras Morezuelas.
CORE-8965 #resolve #comment Committed in revision r65894. Thanks!
svn path=/trunk/; revision=65894
Import metafile code from wine. The wine code is unmodified (please keep it that way) and used through a wrapper function dispatcher and some helpers. Fixes 1931 wine tests.
svn path=/trunk/; revision=65893
- Add global user heap (un)map helper functions that will be used in other portions of code.
- For consistency purpose also add the note about the mapping in desktop.c (see r65863 for what I mean).
- Temporarily add many trace messages.
svn path=/trunk/; revision=65891
In Escape() make use of GdiGetDcAttr(), GreatLordish -> English and fix copy-pasta in comments, improve formatting, remove some code that (attention euphemism) wasn't exactly correct.
svn path=/trunk/; revision=65889
- Implement GreCreateCompatibleDC, allowing to pass in a boolean value, specifying the DC type (normal or "alternative" DC, aka metafile DC)
- Properly implement NtGdiCreateMetafileDC around GreCreateCompatibleDC
svn path=/trunk/; revision=65885
Implement support for IOCTL_DISK_CHECK_VERIFY, IOCTL_STORAGE_CHECK_VERIFY, IOCTL_STORAGE_CHECK_VERIFY2, IOCTL_CDROM_CHECK_VERIFY
svn path=/trunk/; revision=65869
A bit of code reorganization:
- move a maximum of typedefs into their corresponding headers,
- move user heap functionality into a dedicated header,
- add a note in some functions that the first heap mapping entry in the W32 process info structure is dedicated for the global user heap mapping,
- remove extra-parenthesis in casts.
svn path=/trunk/; revision=65863
- In case of AssignSecurityDescriptor operation in IopGetSetSecurityObject(), put the security descriptor in cache before attempting the assignement
- In IopUnloadDevice(), don't attempt to free the security descriptor, let this to Ob by just derefencing it. Spotted & fixed by Thomas.
This unregresses VMware Tools installation.
CORE-7991
svn path=/trunk/; revision=65862
- Apply Wine commit f41ac94e (msi: Include the terminating null in the buffer size for decoded stream names.) by Hans Leidekker. Fixes a stack buffer overflow when installing VMware Tools.
svn path=/trunk/; revision=65859
- Implement IopGetDeviceAttachmentBase() which allows getting the base device of the device stack given any device object in it
- Implement IopGetDevicePDO() which returns the physical device object of the device stack given any device object in it
- Implement IopSetDeviceSecurityDescriptor() which will swap the old security descriptor of a device object with a new provided one
- Implement IopSetDeviceSecurityDescriptors() which will swap the old security descriptor with a new provided one in all the device objects from the lowest provided to the uppest provided one.
- Fix a fixme in IopGetSetSecurityObject(), the operation SetSecurityDescriptor is now fully implemented for both PDO & DO.
This is required by VMware driver vmci.sys.
Even though, the installation doesn't get any better; it just changes the BSOD, we now face a memory corruption (in SE).
CORE-7991
svn path=/trunk/; revision=65856
- Add another tiny text-editor Akelpad, which works "good enough" in ReactOS.
Suggested by sergeygraf@yandex.ru, patch created by rechitskiy@reactos.org
svn path=/trunk/; revision=65854
Also partly implement LsarpLookupPrivilegeDisplayName (currently, privilege description is the same as privilege name)
svn path=/trunk/; revision=65853
Partly implement the Provider class from WMI.
This allows VMware Tools installer to complain a bit less about imports not found.
The installation still fails and still ends with a BSOD though.
CORE-7991
svn path=/trunk/; revision=65849
- Re-enable the partition size check and display a warning if the install partition is too small.
- Update the required install partition size to 550MB.
svn path=/trunk/; revision=65847
- Add header for Ime information. Setup support for Ime types and hot keys.
- Finish keyboard processing changes and call Imm process key for callback to user mode.
svn path=/trunk/; revision=65845
- Add mod switch for SAS hotkey support.
- Add ImmProcessKey return flags, works the same as ImmProcessHotKey for WinCE.
svn path=/trunk/; revision=65843
- Move IME from stubs into its own file. Add flags and types to main header.
- Later, how to add Ime.h from mingw (tested it and works) and not effect VC++ ? VC SDK has Ime.h.
- Getting ready for Window Class update based on current wine tests.
svn path=/trunk/; revision=65842
Fix the following issues:
- Skip rotated font (font name starting with "@" char)
- Fix a comment (misspelled "Richedit")
- Fix enlarged preview font in font name is long (it truncated font name in 31 chars when copying)
- Fix 2 magic values (255 here is not meaningful, and it doesn't even entirely showing Unicode Plane 0)
Patch by Roy Tam.
CORE-8966 #resolve #comment Thanks. Commited in r65829.
svn path=/trunk/; revision=65829
Add French translation
It's totally broken though because the util directly writes Unicode to console. That should be fixed (see CORE-8965).
svn path=/trunk/; revision=65826
- CreateSystemThreads' parameter is unused, and the parameter of ONEPARAM_ROUTINE_CREATESYSTEMTHREADS win32k system call is set to TRUE when creating system threads in "remote processes", i.e. not CSRSS.
- Few code formatting fixes.
CORE-8949
svn path=/trunk/; revision=65825
* Do not make browseui an NT6 dll just because it has a missing include and it needs a few previously undocumented constants. We can just define them in an undoc header.
svn path=/trunk/; revision=65821
Fix NtUserProcessConnect to use the process handle we give to it, instead of the "current process"... This should fix the user32 CSR connection that I was failing to fix in previous revisions...
CORE-8949
svn path=/trunk/; revision=65820
Fix flags usage for LoadImage / CopyImage, that made network tray applet icons uglily being downscaled from 32px versions instead of their 16px counterparts.
svn path=/trunk/; revision=65819
Reintroduce CSR support for kernel mode, based on code from Ge that was wiped out in revision 58770, and by ntdll CSR code. Is needed for kernel to user-mode CSR callbacks.
For readers, I remind you the big callback picture in the Win32 subsystem:
- In Windows NT 3.1 and 3.51, USER and GDI was modeled against client/server model (USER32.DLL and WINSRV.DLL, and GDI32.DLL and GDISRV.DLL), all running in user mode (using the CSR API).
- Starting Windows NT 4.0 (and up), some USER and GDI parts were moved into kernel mode (in the WIN32K.SYS driver) to speedup communication. We get:
* GDI32.DLL as the client, doing win32k system calls (kernel-mode system calls to win32k),
* and USER32.DLL, WINSRV.DLL and WIN32K.SYS working in tandem, USER32.DLL being the client and {WINSRV.DLL, WIN32K.SYS} being the server.
USER32.DLL can do win32k system calls or CSR calls to WINSRV.DLL (client to server calls). For server-to-server calls, we have WINSRV.DLL
doing win32k system calls, or WIN32K.SYS doing CSR calls back to WINSRV.DLL . Also, there is the possibility for WIN32K.SYS to make user-mode
callbacks to USER32.DLL.
svn path=/trunk/; revision=65817
- Crash while in recursion through hook calls. Move fast calls to api. Placed safe guards for removing message queue structures. Lock threads while calling hooks. Just add paranoid code to prevent recursion freeing that will crash the kernel at some point. Fixes OpenMPT crashes, see CORE-8819. This might improve the same issues with CORE-6734.
svn path=/trunk/; revision=65815
Implement a virtualkd compatible kernel debugger transport DLL. I started this, because I didn't manage to get the original one working, but it turned out, the original one works, you only need to use the correct virtualkd version. Anyway, it's there now. A virtualkd version that works with VBox 4.3.16+ can be found here: http://forum.sysprogs.com/viewtopic.php?f=4&t=3370 or here: http://public.avast.com/~hnanicek/VirtualKd.zip
The folder is called kdvm, since I thought about adding support for VMWare as well, but here the original one probably works as well.
Also fix my email address in some files.
svn path=/trunk/; revision=65813
Reenable some disabled tests, while disabling some other calls, namely:
- code in ClientThreadStartup (that was moved in ClientThreadSetupHelper that is hackilly now called in Init() from DllMain),
- code in User32CallClientThreadSetupFromKernel,
- add two flag manual resets in Init() and the forced call to ClientThreadSetupHelper,
- and moreover the whole CSR call in DllMain, that seems to sometimes cause some user32 internal global pointers to remain NULL where they should not (more specifically some "pdi" thing).
Obviously all these problems need to be understood (why some things do not become initialized when they should, etc...). See r65799, revert r65810, and CORE-8949.
svn path=/trunk/; revision=65811
* Fix count of visible buttons getting out of sync when removing buttons. Fixes empty space at the end of the notification toolbar.
CORE-8840 #resolve #comment This should be fixed as of r65805.
svn path=/trunk/; revision=65805
* Improve an older change that I commited by mistake, with the improvbements based on a patch by Giannis.
* In Windows, fixes the taskbar having a size grip with the taskbar is themed and locked.
* In ReactOS, the size grip never seems to disappear, contrary to Giannis' concerns in the issue.
* Because of the above, I decided to commit the changes, and let the sizing edge inconsistency be a followup to the issue.
CORE-6966 #resolve #comment A modified version of the patch was commited in r65804. Thanks.
svn path=/trunk/; revision=65804
* Handle WM_CONTEXTMENU in the notification area so it does not spread upwards to the taskbar window.
* In theory, only one of the two handlers would be necessary, and it is true when testing in Windows, but in ReactOS, the handler in CSysPagerWnd was not enough. This may be worth a look by the win32k experts to see if it's a bug, or Windows was correcting my error.
CORE-8870 #resolve #comment Should be fixed in r65803. Thanks for reporting.
svn path=/trunk/; revision=65803
So far, totally disable VPB swapout on dismount. It appears to have brought more issues than it actually solves.
A more accurate implementation will be required.
CORE-8928 #comment Can you please retry with r65801
svn path=/trunk/; revision=65801
[USER32][USERSRV][WIN32K]
- Flag CSRSS threads as such.
- Each time a win32 thread is "created" (or a win32k system call is done) a PsConvertToGuiThread call is done, that makes a Win32ThreadCallout which calls UserCreateThreadInfo. We should call back ClientThreadSetup to set client-side info.
- Introduce a ClientThreadSetupHelper function to try to understand what happens when doing direct calls to ClientThreadSetup and via win32k callbacks.
- Reenable CSR call in user32::DllMain but add shame hacks in Init(..) to force NtUserProcessConnect callbacks (yet they should not be done there): see the code comment associated for more details.
- Temporarily disable ClientThreadSetupHelper call in ClientThreadSetup because it makes things fail, like console input thread failing and so on...
- ... and in ClientThreadSetupHelper, some correct code is commented out because it currently breaks other things (like menu initialization etc...), and HACKS ARE ADDED!! (see especially the "if (gpsi)" one, that should not exist, but if removed we fail sometimes in MenuInit because gpsi becomes NULL for some reason, if some other code that makes redundant calls to NtUserProcessConnect, is uncommented).
To sum up I tried to scaffold the thing as it should be, but with disabled code to not break everything.
CORE-8949 #comment Revision 65799 committed the patch v1.
svn path=/trunk/; revision=65799
- Reenable UserClientConnect callback, it's not the problematic code that made bots to fail at 3rd stage and caused r65716 to be committed.
- Put the system threads hack *after* having called NtUserInitialize (that really initializes user-kernel interface with win32k), and not before.
svn path=/trunk/; revision=65798
- Call NtGdiInit before initializing ourselves (ok, in ROS NtGdiInit does nothing interesting, but still do it to be call-compatible with win2k3 so everything initializes as it should).
- Do some cleanup on process detach.
svn path=/trunk/; revision=65797
- In German translation, replace erroneous \" to "" for putting quotes inside strings. Fixes resource compilation in GCC/MSVC.
- Make proper help string indentation in resource files. NOTE FOR TRANSLATORS: Please keep the identation correct!
svn path=/trunk/; revision=65790
Fix invalid memory usage, memory leaks, partial zeroes, big if blocks, ...
Would be nice also to check all the allocations which are not checked yet
CORE-8533
svn path=/trunk/; revision=65788
* Fix the fallback case when BCM_GETIDEALSIZE doesn't work.
* Take into account the size of the borders of the start button twice. Now the caption has enough space and doesn't hide part of the border and more importantly the button is vertically aligned to the tasks buttons.
svn path=/trunk/; revision=65780
Start implementing the recovery console: CLS, EXIT and HELP have been implemented. I also added a DUMPSECTOR command that enables us to dump disk sectors to the screen. For example "DUMPSECTOR 0 63" dumps disk 0 sector 63 to the screen.
svn path=/trunk/; revision=65778
Fix some translations as preparation to get this one fixed: CORE-5790
At least most languages now look sort of nicely. Next: apply the patch and check the non ResHacker compatible languages
svn path=/trunk/; revision=65776
* Forward focus to the defview window when the shell browser gets the focus.
* We can now navigate to the opened window with the keyboard right after it opens. That means that after opening from the desktop a window with the keyboard, we can navigate right away without any additional mouse clicks.
svn path=/trunk/; revision=65775
"No shortcut to the On Screen Keyboard in the start menu" by Jared
CORE-8883 #resolve #comment Committed with minor fix in German translation, thx for help.
svn path=/trunk/; revision=65773
* Do not enable the CExplorerBand wrapper by default. Avoids crashing due to a stack overflow.
CORE-8930 #resolve #comment Oops. Fixed in r65772. Thanks.
svn path=/trunk/; revision=65772
* Make the shell menus focus the parent before displaying themselves. Fixes keyboard focus when opening the start menu with the windows key.
NOTE: I put this in the focus manager for lack of a better place, but it may not be how Windows does it.
svn path=/trunk/; revision=65769
* Do not add two additional pixels at the top margin of the toolbar. This is the behaviour of comctl32 v6 and our explorer depends on that to appear properly. We don't have a proper solution for these differences in behavior and since we already opt to use the v6 behavior I think it is fine.
CORE-5483 #resolve #comment Committed a slightly different version of the patch, thanks.
svn path=/trunk/; revision=65766
* Halfplement IExtractIconAW support into the recycle bin. This is not fully correct as it always uses the fallback file icon, but it's better than nothing at all.
CORE-3938
svn path=/trunk/; revision=65759
* Move to shellext folder.
* Do not initialize the notification SSO, stobject will do so (like in Windows).
* Move some GUIDs to a shared header.
[STOBJECT]
* Initialize netshell's SSO the way Windows does it. Fixes network icon inconsistency.
* Move some GUIDs to a shared header.
CORE-8818 #resolve Fixed in trunk r65758.
svn path=/trunk/; revision=65758
Rename RGNOBJAPI_Lock to REGION_LockRgn and remove the 2nd argument, rename RGNOBJAPI_Unlock to REGION_UnlockRgn, remove the old inline lock/unlock functions. Do proper locking using GDIOBJ_bLockMultipleObjects in NtGdiEqualRgn.
svn path=/trunk/; revision=65746
- Crash is due to receiving an APC for the current sending thread. Prematurely freeing the data block and while the receiving thread did not have a chance to process it. Interception and calling back to user mode will allow thread to go away. What about the memory block, is it still allocated? A cleaver Hack can fix this, but still the application crashed leaving issues and trash laying about. See CORE-8779.
Reference:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff565592(v=vs.85).aspx
"Yes, for thread termination. No, for user APCs."
svn path=/trunk/; revision=65744
Add the NtfsMftZoneReservation registry key on installation
See http://support.microsoft.com/kb/174619 for more information
svn path=/trunk/; revision=65741
* Fix the focus manager to properly close the shell menus when clicking outside the menu area.
* Close the shell menus when activating a context menu action.
* Open the shell menus without activating. Fixes titlebar color changing to inactive for the Favorites menu.
[RSHELL]
[SHELL32]
[BROWSEUI]
* Remove a few DbgPrints and downgrade some others into TRACEs.
CORE-8836 #resolve
svn path=/trunk/; revision=65740
- Rename SetRectRgnEx to IntSetRectRgn and make it usermode only
- Implement IntSetNullRgn
- Improve SetRectRgn code and enable the usermode part
svn path=/trunk/; revision=65739
Rewrite CombineRgn, enabling full handling in usermode if the resulting region is either a rectangular or a NULL region.
svn path=/trunk/; revision=65738
- Make REGION_iOffsetRgn check the region for coordinate space overflow and fail, if the region cannot be moved
- Rename REGION_iOffsetRgn to REGION_bOffsetRgn and make it return BOOL instead of the complexity, since the majority of callers are not interested in the complexity. It's also more obvious that we need to check for an error.
svn path=/trunk/; revision=65733
- Rewrite NtGdiFillRgn and IntGdiPaintRgn
We now properly support painting regions on DCs with arbitrary world transforms, with pattern brushes and we respect the foreground ROP and mode of the DC. And we don't run into deadlocks due to having an exclusive region lock while trying to lock a DC. LOCKING MUST BE DONE IN PROPER ORDER!
svn path=/trunk/; revision=65730
- Rename IntSetPolyPolygonRgn to REGION_SetPolyPolygonRgn
- Implement GreCreatePolyPolygonRgn wrapper around it
- Fix iMode usage in NtGdiPolyPolyDraw
- Improve some variable naming
svn path=/trunk/; revision=65726
Rework GreCreateFrameRgn to return the new region. Implement the internal function REGION_bMakeFrameRegion doing the actual work. Fix frame calculation by moving the source region diagonal instead of only horizontal and vertical, use IntGdiOffsetRgn instead of manually fiddling with the rectangles.
svn path=/trunk/; revision=65725
More improvements to region.c:
- PROSRGNDATA -> REGION, void -> VOID, int -> INT, uppercase struct names
- do not put assignments into if statements
- !x -> x == NULL for pointers
- Add additional parentheses / curly braces
- rename RGN_ATTR::Flags to iComplexity
svn path=/trunk/; revision=65720
Temporarily disable UserClientConnect (in server side) and CSR client to server call (in client side), always set gfServerProcess to FALSE (that is normally almost true but when CSR itself does USER32 operations...), and comment again GetConnect() call in ClientThreadSetup, in an attempt to "fix" 3rd stage for bots (so that we don't assert in DesktopPtrToUser because some pdi is NULL...)
svn path=/trunk/; revision=65716
- Code formatting for NtUserProcessConnect.
[USER32]
- Hack a call to GetConnected in ClientThreadSetup in an attempt to temporarily "fix" a bug that makes the bots fail. Now we really need to fix user32 init!
svn path=/trunk/; revision=65714
- Set the process creation notify routine for BASE that needs to be called when a process is created.
Patch by Timo, see CORE-7505.
[BASESRV]
- Implement BaseSetProcessCreateNotify that just saves internally the notification function to be called when a process is created.
- Call the notification function where it should be.
CORE-7505
svn path=/trunk/; revision=65712
- Play around and declare USERSRV_API_CONNECTINFO (CSR-style-name connect info structure type) as an alias to USERCONNECT (win32k-style-name) structure that is used to perform... "connections" between user32 and winsrv/win32k subsystem.
[WIN32K]
- Make UserThreadCsrApiPort case of NtUserSetInformationThread return success to make usersrv happy (while saving CSR port handle in win32k is still not implemented).
[USER32]
- Clean up "a bit" DllMain, call CsrClientConnectToServer to connect to usersrv (copy-paste of what we do in kernel32 for base and console connection) and now determine properly whether we are doing server-to-server calls (i.e. properly set gfServerProcess).
- Reorganize GdiDllInitialize calls and put them all to the end of DllMain instead.
- No need to support DLL_THREAD_ATTACH/DETACH so call the magic DisableThreadLibraryCalls function.
[USERSRV]
- Implement UserClientConnect with the patch of Timo CORE-7505: it gives a CSR port handle to win32k (if not already done), then do process connection.
CORE-7505
svn path=/trunk/; revision=65710
* Remove internal IStartMenuSite interface that didn't serve any purpose.
* Stop using global instances of some core classes.
svn path=/trunk/; revision=65703
* Simplify a lot of methods my using helpers from shlwapi.
* Remove declarations for undocumented functions that are already declared in our headers.
* Move definitions of IID_IAugmentedShellFolder and CLSID_MergedFolder to our headers.
* Remove definitions of functions that are already implemented in shlwapi.
* Add CreateMergedFolder and CreateMenuBand functions in precomp.h in order to simplify creating these objects when using rshell.
svn path=/trunk/; revision=65698
* Implement handling of file associations marked as "NoOpen". Patch by Lee Schroeder, with a few tweaks.
CORE-8855 #resolve #comment Commited in trunk r65697. Thanks.
svn path=/trunk/; revision=65697
- Simplify NtUserInitialize: we can check whether gpepCSRSS is != NULL to see if we are initialized or not (instead of using gbInitialized).
- The UserInitialize helper doesn't need to take parameters. The two event handles (power and media, used when we receive a power event -- for sleep, etc... -- and a media event -- like USB key insertion and such --) just need to be used in the not-yet-implemented "Initialize Power Request List" and "Initialize Media Change" steps.
- Something that should be done is to bugcheck if the USER version reported is != 5.0 (as windows does).
[WINSRV]
- Collapse common inclusions from usersrv and consrv into the common header winsrv.h.
[USERSRV]
- _UserSoundSentry is NTAPI
- Stub UserClientConnect (Timo's patch contains more involved code. I will commit it later).
- Our NtUserInitialize(0, NULL, NULL); call (that made Windows BSOD) is wrong. It should be done with its first parameter correctly set to the USER version (5.0) and the two other parameters are handles to power and media events (see above). We should create them before.
This is part of patch by Timo Kreuzer.
CORE-7505 #comment UserClientConnect stubbed (it should be better implemented, I will commit the code from the patch later on); power&media events initialized; NtUserInitialize corrected.
svn path=/trunk/; revision=65696
Stubplement NtUserQueryInformationThread and NtUserSetInformationThread that will be used for:
- shutdown support: CORE-8322
- communicating a CSR Port handle to win32k: CORE-7505
CORE-7505 CORE-8322
svn path=/trunk/; revision=65693
On Windows 2k3, BASESRV_API_CONNECTINFO went under a slimming treatment and now is only 4 bytes. In fact all its information was already existing in the static base data structure (BaseStaticServerData). We should now be more 2k3-compatible :)
Fix also the testbots.
svn path=/trunk/; revision=65690
- Introduce BaseClientConnectRoutine and BaseClientDisconnectRoutine functions that do basesrv (de)initialization, and BaseSrvNlsConnect that may potentially init further NLS support in the future.
- BaseSrvDebugProcess is deprecated in Windows 2k3+.
- Few whitespace fixes.
Piece of patch by Timo Kreuzer.
CORE-7505 #comment Basesrv (dis)connect routines committed in r65684.
svn path=/trunk/; revision=65684
* Use PrivateExtractIconsW instead of PrivateExtractIconExW to obtain the icons for caching. Fixes small shell icons using large icons scaled down instead of the proper 16px icons. Patch by Ismael Ferreras Morezuelas (swyter).
CORE-8404 #resolve #comment Commited in r65683. Thanks.
svn path=/trunk/; revision=65683
- Cleanup a bit csrmsg.h (by me), the ObjectDirectory member of the CSR_API_CONNECTINFO structure becomes unused starting Windows 2k3 (add an informative comment about that fact).
- Remove now unneeded ObjectDirectory duplication code (by Timo).
- Fix some whitespace.
CORE-7505 #comment ObjectDirectory duplication code removed in r65682.
svn path=/trunk/; revision=65682
- Store the link count in FCB and return it in FileStandardInformation query
- Return the MFT index in NtfsGetInternalInformation query
svn path=/trunk/; revision=65679
Part 2 of a patch by Edijs.
CORE-5655 #comment Patch committed. When one of you will have a patch for the Windows-menu items disabled bug, please reopen the report. #resolve
svn path=/trunk/; revision=65677
Italian translation of user accounts (control panel) by nicoalta01 (Marco Maria Emanuele Bartucci as I hope his name is)
While I was at it... convert the rest to UTF8
CORE-8857 #resolve #comment Committed, thx for help.
svn path=/trunk/; revision=65665
TRANSLATION: Czech translation update
CORE-8499 #comment INF is UCS2 LE now and the Lang ID is corrected. Can you confirm that this is fixed now?
svn path=/trunk/; revision=65663
- Implement NtfsGrabFCBFromTableById() and NtfsGetFCBForFileById(). These two are responsible for opening and retrieving a file open by ID.
- Modified NtfsMakeFCBFromDirEntry() so that it supports openings by ID which come with less information than normal openings.
- Modified NtfsGrabFCBFromTable() so that it doesn't return a FCB which would have been opened by ID.
- Modified NtfsOpenFile() so that it allows opening a file by ID using the two FCB helpers functions defined upper.
- Modified NtfsCreateFile() so that it can validate input in case of opening by ID.
To make it short, all this implements file opening by ID in NTFS driver. I made the choice to separate FCB which are coming from "normal" opening and these from ID opening.
The reason is that a file opening with ID has less information than a normal opening, and may fail on these information retreival. This is due to the fact that if opening by ID can virtual open all the files, because it ignores authorizations, traverses checks, in the end for retrieving the information, such checks can be done and fail.
I also left all this disabled so far, because it appears to regress NFI. I will investigate this.
CORE-8725
svn path=/trunk/; revision=65652
Implement GetVolumeBitmap().
This allows NFI to find which file is at which LCN: http://www.heisspiter.net/~Pierre/rostests/NTFS_NFI_LCN.png
So far, NFI is not as verbose as it is on Windows in such cases, because FILE_OPEN_BY_FILE_ID is *still* unimplemented (you should consider implementing it Pierre ;-)).
I checked with Windows, the correct file is found though!
CORE-8725
svn path=/trunk/; revision=65645
- In the VCB, directly store the total number of clusters available in the volume, this will save a few recurrent divisions
- Use this everywhere it is possible
- Validate input in GetVolumeBitmap(): make sure we don't want bitmap beyond end of the volume
CORE-8725
svn path=/trunk/; revision=65639
- Implement NtfsGetUserBuffer() that will (attempt to) return the user output buffer for METHOD_NEITHER IOCTL.
- Implement parameters checking GetVolumeBitmap()
CORE-8725
svn path=/trunk/; revision=65638
Switch calc to using the registry for storing configuration values. Remove 9x codepath. Patch by Lee Schroeder. Cleaning up Ziliang Guo.
CORE-7746
svn path=/trunk/; revision=65633
Incorporate fixes provided by a patch from over three years ago that adds support for the additional compare options. Patch provided by kruntuid. Slight cleanup and reshuffling of some code to make it cleaner.
CORE-8484
svn path=/trunk/; revision=65629
Update the Event Detail Dialog to better match XP/2K3
Patch by Lee Schroeder.
I updated the remaining dialogs.
Translators: Please check the dialogs!
CORE_8904 #resolve
svn path=/trunk/; revision=65628
- Patch by Vincent Povirk : Allow EndMenu() calls from WM_ENTERMENULOOP.
- Patch by Akihiro Sagawa : Don't close a popup menu when clicking a sub-menu parent item twice.
- Move code to match wines. See CORE-8299.
svn path=/trunk/; revision=65622
Modify font enumeration code to deal with failure to read the registry key. Also change the registry key being queried to match the one used on Windows. Patch by Ricardo Hanke.
CORE-8203
svn path=/trunk/; revision=65621
* Followup to t65603. Fixes the start menu themeing regression (when running explorer in windows 2003).
CORE-8898 #resolve
svn path=/trunk/; revision=65618
Ach! Wir können noch nicht mit dem ID öffnen!
So far, bail out when we are requested to open a file with its MFT index instead of its name.
nfi triggers this a lot. Likely to be implemented ;-)
CORE-8725
svn path=/trunk/; revision=65613
My dear Pierre, in FSCTL_GET_NTFS_FILE_RECORD, you have METHOD_BUFFERED (yes, read well ;-)).
So if you want it to work, you HAVE to return the size of the data you wrote to the output buffer...
This makes FSCTL_GET_NTFS_FILE_RECORD finally working in ReactOS...
nfi.exe finally goes a bit farther, displays some files names and dies. Definitely still needs love.
CORE-8725
svn path=/trunk/; revision=65612
* Use LoadLibrary instead of GetModuleHandle in the wrapper of WinList_Init.
* Shdocvw was never loaded till that point so WinList_Init was not called.
* Should fix Opening link location in windows.
svn path=/trunk/; revision=65611
* Cleanup variable names and fix a few typos along the way.
* Refactor the start button code into a CStartButton class.
NOTE: There is a known regression with start button themeing, which I'm working on. The missing notification icons are not caused by this.
CORE-8898
svn path=/trunk/; revision=65603
Implement the downward fashion of FSCTL_GET_NTFS_FILE_RECORD and always return a file record which is in use
CORE-8725
svn path=/trunk/; revision=65601
* Make SetWindowStyle and SetWindowExStyle simple wrappers around SHSetWindowBits. There is no reason to reinvent the wheel.
svn path=/trunk/; revision=65599
THE oneliner....
Properly read the information from the IRP to get the reparse tag. This fixes the handling of reparse mount points in ReactOS.
To make it short and crystal clear: reparse points from NTFS now work in ReactOS.
Demonstration with a Windows 7 volume read inside ReactOS with our NTFS driver and the "Documents and Settings" directory pointing to Users.
IopDoNameTransmogrify() properly gets the reparse data and extracts the mount point:
(../../ntoskrnl/io/iomgr/file.c:178) IopDoNameTransmogrify(B074DB98, B022BC28, B0226068)
(../../ntoskrnl/io/iomgr/file.c:232) Old name: '\Documents and Settings\'
(../../ntoskrnl/io/iomgr/file.c:266) Reparsed name: '\??\C:\Users'
Then.... http://www.heisspiter.net/~Pierre/rostests/NTFS_Reparse.png
First, I attempt to open "Documents and Settings" on my NTFS volume, it fails as "C:\" drive is hardcoded in the reparse point.
So, I create the Users directory on C:\ and a dummy file in it.
Then, I cd again which works now.
And dir properly shows the dummy created file :-).
svn path=/trunk/; revision=65596
Fix the implementation of the reparse point handling. This takes into account our $FILE_NAME attribute not being aware it's a reparse point...
We now fully get into Io and fail miserably as it seems I forgot one place where reparse points support has to be added.
D'oh!
svn path=/trunk/; revision=65594
On FCB creation, merge file attributes from $FILE_NAME and from $STANDARD_INFORMATION
Not sure it's fully legal, but it allows us to catch them all!
svn path=/trunk/; revision=65592
- Use a timeout to send WM_COPYDATA.
- Recall reading, while being sent to a thread that is hung indefinitely or blocked, it will not return properly. This seems to be the case for CORE-8779. Play it safe and use a timeout.
svn path=/trunk/; revision=65589
- Implement NtfsReadFCBAttribute() which is responsible for reading an attribute from a file which is referenced by its FCB. It will first read the file record in the MFT and then read the attribute, if found.
- Use NtfsReadFCBAttribute() to implement support for reparse point in NtfsCreateFile(). Once a reparse point is found, we attempt to open its data. Given their layout, we directly hand them to the Io manager. Just make sure that we return something consistent on disk. Only handle IO_REPARSE_TAG_MOUNT_POINT so far.
Next question to answer is: what to do when a reparse point is encountered during path traversal?
svn path=/trunk/; revision=65586
Implement support for (some) reparse points in Io manager. Ob should be already fine.
- Implement the IopDoNameTransmogrify() function. This one is responsible for checking the correct data for the reparse point and to update the path name in the file object. It will also free the memory buffer allocated by the driver to communicate the reparse information.
- Fix the support for reparse points in IopCompleteRequest(). If we receive reparse status + reparse tag we know, we call IopDoNameTransmogrify() to update file objet.
- Fix the support for reparse points in IopParseDevice() (oh! you again? :-)). When we complete the IRP ourselves, act as in IopCompleteRequest(). Then, we properly update objects manipulated by Io for the create request and we return STATUS_REPARSE so that Ob can update and recall us afterwards so that we complete.
Some parts are left unimplemented when it comes to reparse tags which are not IO_REPARSE_TAG_MOUNT_POINT. But still less than previously ;-).
svn path=/trunk/; revision=65584
Replace the old "My Computer" icon with a new one.
New icon by: Ismael Ferreras Morezuelas.
CORE-8890 #resolve #comment Committed in revision r65583. Thanks!
svn path=/trunk/; revision=65583
- Add german resource file.
- Convert all others to UTF-8.
- Add manifest file and modify DOIALOG to DIALOGEX + changing default font to MS Shell Dlg. Hello themed keyboard ^^
TBD: Sizes are WAY too small IMO...
svn path=/trunk/; revision=65572
* Make the CBandSiteMenu class actually insert the Toolbars menu, even if it's not yet implemented. This fills the top of the taskbar context menu instead of leaving an ugly separator at the top.
svn path=/trunk/; revision=65566
* Reorganize a bit the CTrayWindowCtxMenu::QueryContextMenu method and do not error if AddContextMenus fails. Fixes the taskbar context menu not opening on right-click.
(No need to call it explorer-new now that it's the primary one!)
CORE-8838
svn path=/trunk/; revision=65560
- Implement handling accelerators for CDesktopBrowser. The only noticeable difference is that pressing alt+f4 in the desktop doesn't close it.
See issue #8864 for more details.
svn path=/trunk/; revision=65557
- Implement registering all hotkeys that explorer registers in windows. Not all of them are implemented. The ones that are implemented work fine in windows but most of them don't work on ros. Thankfully nothing regressed by doing things the same with windows .
svn path=/trunk/; revision=65556
- Handle TWM_DOEXITWINDOWS in CTrayWindow. This message is sent from CDesktopWindow when it handles alt+f4 as an accelerator.
- Also handle SC_CLOSE for WM_SYSCOMMAND by calling ExitWindowsDialog.
- Fixes pressing alt+f4 in xp
- Now we have to make CDesktopWindow send TWM_DOEXITWINDOWS to the tray
svn path=/trunk/; revision=65555
* Add a stubbed CExplorerBand, which I will be using to investigate how the windows shell implements the sidebar panels.
This will never be called in ReactOS because our shell view doesn't handle the buttons for opening the sidebars, so it never asks the shell browser to open one.
CORE-8815
svn path=/trunk/; revision=65554
* The windows menu classes hide the items when the callback returns S_OK, and show them on S_FALSE. Fix our implementation to match.
* The windows CMergedFolder uses its own internal SHITEMID structure, so using filesystem paths directly won't work for hiding the Programs folder.
* Also, because of the above, it's best to create the Programs menu object separately.
svn path=/trunk/; revision=65541
* Stop using ONEPARAM_ROUTINE_CSRSS_GUICHECK
[WIN32K]
* Move the manual gui check for console windows entirely in win32k
* This shouldn't cause any regressions to the ancient gui-on-demand feature
svn path=/trunk/; revision=65538
* Partially rewrite CMergedFolder to fix the invalid assumption that the results of enumerating a folder are ordered.
Fixes the folder merging on certain languages not working as expected, and also some other weaknesses of the previous implementation.
CORE-8835 #resolve #comment Should be fixed in r65537. Thanks for reporting.
svn path=/trunk/; revision=65537
- On Win2k3, the EXIT_(ROS)_EX csr message has 3 parameters, instead of 2 (as on win2k), and the dwReserved is in fact unused.
[USERSRV]
- Add CSR shutdown callback UserClientShutdown (stub).
[CONSRV|USERSRV]
- The CSR shutdown callbacks are just stubs currently.
Part 5/X
CORE-8322
svn path=/trunk/; revision=65528
- Add a flag to enable (or disable depends on your reading ;-)) the VPB swapout process for volume umount.
- By default, disable it for MSVC builds.
This *might* lolfix the MSVC builds.
Just for the record, we also have a bug in the GCC builds but it doesn't seem to show up.
The main issue is that after formatting, we close handle to the volume, and IRP_MJ_CLEANUP is properly received and initiates a bit of dismount.
But then, the IRP_MJ_CLOSE is never received (why????) and thus, dismount cannot properly end.
This is a real & serious issue.
svn path=/trunk/; revision=65527
Fix a FIXME in fastfat:
- Implement support for device buffers flush in VfatFlushVolume().
Unlike Windows SDK, we don't divert the current IRP to pass it to storage device. Here, we allocate a new IRP and call the device so that it flushes buffers.
svn path=/trunk/; revision=65526
If you decrease handles count on cleanup, don't forget to increase it on create.
This fixes sharing violation on ReactOS installation with IopParseDevice hack disabled.
svn path=/trunk/; revision=65525
* Make use of the resource IDs for all paths that need localizing. It was working in the past but was broken by re-synchronizing the code with WINE, which has unlocalized hardcoded strings instead.
This fixes the shortcuts not appearing in other languages.
* Fix the folder for Administrative tools in spanish language
[USERENV]
* Fix spanish folder names to match our shell32 and Windows.
TRANSLATORS: If your language is broken, ensure that the paths in userenv and shell32 resources match!
CORE-8834 #resolve #comment Should be fixed in trunk r65524, thanks for reporting. If this problem still happens, speak with your language's translator or provide your own patch.
svn path=/trunk/; revision=65524
* Brought to you by Ismael Ferreras Morezuelas (swyter) with consistency formatting changes by me.
CORE-8848 #resolve #comment Committed the changes in r65523. Gracias!
svn path=/trunk/; revision=65523
- Move to an appropriate file, and correctly implement (i.e. via CSR call to USERSRV) EndTask.
[USERSRV]
- Hackplement SrvEndTask using our old code.
Part 4/X
CORE-8322
svn path=/trunk/; revision=65521
So...
... first of all NtUserQueryInformationThread takes only 4 parameters in Win2k3 so do it as well...
... and since we claim at being compatible with Win2k3 (and not XP), one **MUST** review **ALL** our win32k exports, in win32ss/w32ksvc.db database first, and then in our w32kdll apitests !!!!!
But I won't do it !
svn path=/trunk/; revision=65519
- Revert 65431, it seems to be breaking more than it fixes. Process Explorer will break again, working on a better way to fix this. See CORE-7447.
svn path=/trunk/; revision=65514
- Call GetThreadConsoleDesktop of CONSRV if needed, in GetThreadDesktop (in case the process is a console app).
- Introduce two last-error helpers UserSetLast(NT)Error which work the same as the (Base)SetLast(NT)Error of kernel32, needed for CSR status errors etc...
[WINSRV]
- Improve the stub of SrvGetThreadConsoleDesktop (it needs to success, and atm. it always zeroes-out the returned console desktop handle).
svn path=/trunk/; revision=65513
- Move definitions for DrawCaptionTemp to userundoc.h as it shouldn't be defined in the psdk
- Add browseui_undoc.h and move there the undocumented definitions for browseui
- Add comctl32_undoc.h and move there the undocumented definitions for comctl32
- Move undocumented definitions for shlwapi to shlwapi_undoc.h
- Add shellutils.h to contain helper macros and definitions that are nor per se undocumented.
- Cleanup internal definitions of explorer. Remove several temporary hacks. They were added at a time that these features were not implemented at all.
svn path=/trunk/; revision=65507
- Stub ElfRegisterEventSourceW, ElfReportEventW and ElfDeregisterEventSource. These are needed by windows sxs.dll, and sxs.dll is needed by windows basesrv.dll.
svn path=/trunk/; revision=65503
- Test whether a driver is hidden or not by checking its status instead of the old hack of hiding certain classes which we deemed should be hidden.
- Add support for hiding devices and problem overlays when showing by connection.
- We now show and hide identical devices when run alongside the Win8 MS device manager in both by type and by connection.
- Update the radio buttons when selecting the menu type.
- Add a manifest and use Win7 arrows on the TreeView.
svn path=/trunk/; revision=65502
* Set 32bpp as default bit depth instead of 16bpp. Suggestion and patch provided by Ismael Ferreras Morezuelas (swyter).
CORE-8826 #resolve #comment Committed in r65498. Gracias!
svn path=/trunk/; revision=65498
* This merge is also a chance to thank every single person involved directly and indirectly in this epic work, among them: Martin Fuchs for ReactOS explorer which we are respectfully retiring now, as it served the project so well over all these years. Thomas Bluemel (Thomas Weidenmueller aka w3seek) for his brave work on the shell, mainly his explorer_new. Andrew Hill for advancing the shell bringup with some impressive work. David Quintana, Giannis Adamopoulos and Huw Campbell for working as a solid team on making this branch a huge success, allowing the shell rewrite dream to finally become a reality. Again, thank you all!
* Merging this branch is not the end.. it's the beginning of some serious bug fixing based hopefully on the Community's continuous feedback.
* Finally, here are *some* of the highlights of this branch (simply put):
[BROWSEUI] Halfplement the address bar. Mostly implement the Favorites menu. Implement handling most hotkeys that should be handled by CShellBrowser. Fix various bugs.
[EXPLORER_NEW] Convert to C++ and use several wtl-like classes to simplify it. Fix several bugs and implement misc missing features.
[FILEBROWSER] A small exe file that opens a new file browser window in its own process. Tested to work in windows. It can be used to test our browseui.dll in windows.
[FONTS] A new marlett font.
[MSGINA] Add a proper shutdown dialog that's used when the user selects shutdown from the start menu (this is how it's done in Windows).
[RSHELL] A temporary module that hosts the implementation of the following classes needed for the shell: CMenuBand, CMenuDeskBar, CMenuSite, CMergedFolder, CStartMenu. These were implemented and tested in windows and for that reason they are still there. Should be moved in shell32 in the future.
[SHELL32] Reorganize files to isolate the ones that are not yet forked from wine. Fix various problems. Simplify the implementation of some shell folders. Implement filling in the file menu in the file browser.
[STOBJECT] A shell extension responsible for misc taskbar notification icons. So far only the sound icon is implemented. Adding this is necessary as the old explorer had the sound icon built in and deprecating it needs a proper solution for these notification icons.
[WIN32K] Fix several bugs that prevented the new start menu (that was implemented and tested in Windows) from functioning properly in ReactOS, mostly due to focus issues. Fix several shell notifications to behave more like in Windows.
* Tonight! We shall feast!
* And tomorrow the US guys shall feast again, on turkey! :p
CORE-7330
svn path=/trunk/; revision=65496
- On refresh, recurse the tree and delete all the Device Ids attached to each node
- Fix SAL and a few missing comments
svn path=/trunk/; revision=65495
- Add a class for managing the device view, and a class for managing the device objects.
- Implement listing devices by type and by connection.
- Add support for showing hidden devices
- Add support for showing unknown devices with overlay icons.
- implement showing the device properties via dounle click or hitting enter
- Add support for both Win7/8 as well as XP
- Make the code much more readable and maintainable. and easier to move to an mmc snapin if we ever get one.
I forgot this existed until today. I had some spare time so I decided to have a quick go at finishing it. Stick with the original one for now though, I ran out of time....
svn path=/trunk/; revision=65493
- Implement FLOATOBJ_bConvertToLong inline function that converts a FLOATOBJ to a long or returns FALSE if the value would overflow a LONG
- Remove underscore prefixes from inline FLOATOBJ functions and use it only on those that already exist as non-inline versions.
- Remove duplicated FLOATOBJ defines for non-x86
- Fail on integer overflow in XFORMOBJ_bXformFixPoints to avoid creating bogus coordinates.
svn path=/trunk/; revision=65490
Move down MEMORY_MARGIN to 0x9A00 to fix boot on BIOSes with even larger EBDAs (see also r64945 and r65127), still leaving 48KB for the DISKREADBUFFER
CORE-8830 #resolve
svn path=/trunk/; revision=65485
Add back definitions that go lost in the last commit.
winnt.h is autogenerated, please do not modify it directly, but instead modify the related file in XDK and regenerate the headers from XDK.
svn path=/trunk/; revision=65481
When I wrote "the compiler can optimize this better" I was obviously referring to a sane compiler like MSVC. Optimize (U)Int32x32To64 on x86 GCC builds by using __emul(u), since the native math results in horribly inefficient code doing 3 multiplications and some shifts.
svn path=/trunk/; revision=65480
* Rename the new explorer to take the now-vacant folder name, to match the output filename. Change 2/2
svn path=/branches/shell-experiments/; revision=65477
* Although the output filename was changed for almost as long as this branch has existed, I never bothered to actually rename the folders to reflect the output name. Change 1/2
svn path=/branches/shell-experiments/; revision=65476
Warn about unimplemented sub-node browsing while looking into a MFT directory stream.
Might likely explain why we cannnot enumerate all the files on a Win7 volume.
svn path=/trunk/; revision=65474
- Show programs command line in taskmgr.
Patch by Ismael Ferreras Morezuelas with minor modifications by me.
- int nMaxCount --> ULONG nMaxCount (that makes everything clearer and removes MSVC warnings).
CORE-5467 #resolve #comment Feature committed in revision 65469, cheers ;)
svn path=/trunk/; revision=65469
- Implement NtfsGetPositionInformation(), NtfsGetBasicInformation()
- Add a fixme in NtfsGetStandardInformation() regarding the number of links
svn path=/trunk/; revision=65468
Improve formatting memory size usage in the status bar of Task Manager.
Patch by Ismael Ferreras Morezuelas (swyter).
CORE-8810 #resolve #comment Committed in r65466, thanks d:^D
svn path=/trunk/; revision=65466
- In NtfsQueryDirectory(), don't upcase name in dir search pattern, it can conflict with POSIX names.
- In CompareFileName(), handle the fact that for Win32 & DOS we do case insensitive comparisons by upcasing name before match. Don't do it for POSIX names!
This fixes name completion in cmd for POSIX. And doesn't break it for Win32 :-).
svn path=/trunk/; revision=65462
- Implement GetBestFileNameFromRecord() which will select the higher subsystem name available (POSIX -> Win32 -> DOS) and return it
- Replace the hand-made implementation of it in dirctl functions relying on it (NtfsGetDirectoryInformation(), NtfsGetFullDirectoryInformation(), NtfsGetBothDirectoryInformation())
- Use it in NtfsMakeFCBFromDirEntry()
This fixes browsing POSIX volume (and opening file) in cmd. Even though, explorer doesn't seem to be happy with such change...
This doesn't fix yet the autocompletion in cmd either.
svn path=/trunk/; revision=65456
- Fix a misspelling.
[NTDLL]
- Fix the prototypes of RtlFormatMessageEx(Ex), this fixes strange apps kills when they use FormatMessage[A/W] with win2k3 kernel32 (that uses internally RtlFormatMessage to do the job).
svn path=/trunk/; revision=65450
- Remove the USE_CONSOLE_INIT_HANDLES define since now we "support" the console initialization events.
- The events in the CONSOLE_START_INFO structure are console initialization events used for asynchronous console creation, that are set whenever console creation succeeds, or fails.
- Stubplement their usage in CONSRV.
Now we are able to fully use Windows 2k3 kernel32.dll and be able to run console programs with it.
svn path=/trunk/; revision=65449
- INT 15h offers some "OS hooks" that do nothing normally but return success.
- Stub "Switch to protected mode" INT 15h AH=89h function.
svn path=/trunk/; revision=65448
- Fix interrupts in V86 mode.
- CLI and STI should call Fast486GetCurrentPrivLevel in their IOPL check, since it
always returns 3 if the VM flag is set.
svn path=/trunk/; revision=65447
- In XFORMOBJ_bApplyXform do not overwrite the data in the input buffer
- Make XFORMOBJ_bXformFixPoints return VOID instead of BOOL
svn path=/trunk/; revision=65445
- Synchronize mouse messages. Best way to do this, just post the move message while it occurs and just update it with recurrent information. The other way was to check time stamps and that was a hackish headache. Then the scorn and reticule would erupt. So it was easier to just post to the queue, update and if a mouse down up was captured than it would be in the order as it was received.
- See CORE-8779 #resolve, CORE-8394, CORE-7797, CORE-7447.
svn path=/trunk/; revision=65440
Add few VDD API prototypes:
- VDDReserve/ReleaseIrqLine to get a "lock" on an IRQ line (so that VDDs can check whether some IRQs are free or not).
- Add DMA services.
svn path=/trunk/; revision=65436
Code organization:
- Create directory hardware/video where to put all video emulation (VGA currently, and maybe other things in the future);
- Create directory hardware/sound where to put all sound emulation (PC speaker currently, and maybe other things in the future);
- timer.c/h --> pit.c/h;
- Adjust the necessary includes and the cmakefiles;
- Remove unneeded includes;
- NTVDM is allowed to have its own VS project ^^
svn path=/trunk/; revision=65430
- Remove unneeded commented code;
- Fix few things related to committing the reserved low-memory VDM page by kernel32;
- Decommit this memory when we terminate NTVDM.
svn path=/trunk/; revision=65426
- Do not recalculate at each refresh the new resolution that usually does not change (if it changes because of a modification of some VGA register, we detect that, and we change the vga mode). So keep the current resolution and use it in paint functions.
- Really reenter a new text/graphic mode when needed (ie. when alphanumeric bit and computed resolution change), this avoids useless console screenbuffers recreations (and flickering), things go faster, yet the VGA registers are still updated (as expected). See r65379, r65018 and r65015 for more details.
svn path=/trunk/; revision=65424
- Remove some old comments (and commented DPRINTs);
- More support for Bda->VGAOptions;
- Improve implementation of VidBiosSetCursorShape (start some cursor emulation, and add a note about it);
- Implement few "Alternate Function Select" subfunctions.
svn path=/trunk/; revision=65421
Remove some explicit comparisons with TRUE and make desired explicit comparison more obvious.
Patch by Love Nystrom, modified by me. Fixes a bug in RtlUpcaseUnicodeString. Not committed: modifications to freetype, since this is 3rd party code.
CORE-8799
svn path=/trunk/; revision=65419
* Commit the folder location fixes. They are mostly untested due to being unable to boot to desktop, but looking at the contents of the HDD after syssetup runs seems that the shortcuts are all created in their rightful place. If anyone is able to boot, feel free to test.
svn path=/branches/shell-experiments/; revision=65415
CORE-7710 #resolve #comment Committed again from the same CORE report. Note to my self, next time this thing is being reopened, I will set it to WONTFIX! Open a NEW REPORT!
svn path=/trunk/; revision=65412
CORE-7493 #resolve #comment Added, but the more recent versions + changed the SF mirror to the generic one + skipped the translating of a application's english name. Thx
svn path=/trunk/; revision=65411
Close your eyes.
Really do it! I see you kept them open...
There are closed now?
OK... All fine.
You can open them again.
Nothing happened.
Source code always used to be like that. A commented was never left by mistake in it.
Never, ok?
svn path=/trunk/; revision=65402
Reenable tests for MCBs. They got fixed by Hervé in r65398.
ROSTESTS-106 #resolve #comment Fixed by Hervé in r65398. Thanks!
svn path=/trunk/; revision=65401
* Fix some icons not appearing. The desktop one for "Command Prompt" still appears on the SYSTEM folder instead of the Default User one somehow.
svn path=/branches/shell-experiments/; revision=65393
Round to nearest integer in FIX2LONG, used in XFORMOBJ APIs. Fixes rounding errors when doing coordinate transformation.
svn path=/trunk/; revision=65392
Remove explicit comparisons with TRUE
i.e. if (BooleanValue == TRUE) -> if (BooleanValue) (and not !BooleanValue as accidentally written in the previous commit message!)
Patch by Love Nystrom
CORE-8799
svn path=/trunk/; revision=65391
* Remove the unwanted "(Empty)" item from the static menu, the SF menu will add its own if needed.
[RSHELL]
* Load the "(Empty)" string from shell32 resources.
[SHELL32]
* Add the string resource for empty menus.
svn path=/branches/shell-experiments/; revision=65389
Allow arbitrary transforms in NtGdiExtCreateRegion.
Shearing and rotation are not handled correctly yet, but at least we do no longer fail on transforms that have scaling and an offset, which are classified as GX_GENERAL
svn path=/trunk/; revision=65382
- Store in bit 7 of Bda->VGAOptions (40:87) whether we needed to clear video memory (or not) when changing the video mode.
- When retrieving the current video mode, set this bit 7 as required.
- Improve a bit the DPRINT of VidBiosSetVideoMode for diagnostic purposes.
- Remove the temporary "fix" (read: hack, and it broke some apps) from r65015 / r65018 : I'm working on a real fix.
- Rework some subfunctions of the INT 10h, AH=11h function (font generator).
- Fix reporting "256 kb video memory" in the Bda->VGAOptions flag.
svn path=/trunk/; revision=65379
- Disable some DPRINTs and reenable some others (those concerning programs loading).
- INT 15h, AH=C2h calls a dedicated mouse bios function, which is stubplemented.
- Move part of the HW mouse / driver hack from the HW mouse module into the BIOS mouse.
- INT 33h: s/BiosMouseService/DosMouseService/, in this interrupt we need to check for function numbers in AL (not in AX :) fixes few apps).
- Reenable mouse user handler callbacks calls in CallMouseUserHandlers.
- Some apps (e.g. the demo from http://www.brackeen.com/vga/mouse.html ) draw by themselves the cursor and do not bother to call the INT 33h "Show cursor" function, but expects that moving the mouse we report its correct position. Fix DosMouseUpdatePosition so that it always updates the stored mouse position, but redraws it only when the cursor is shown.
svn path=/trunk/; revision=65374
* Make use of the CToolbar class here too.
* Fix the menubar logic for closing menus on a second click. Almost. There's some glitch when clicking too fast, that I will fix later.
svn path=/branches/shell-experiments/; revision=65373
- Implement VPB swapout in our FAT driver for dismout (see VfatCheckForDismount)
- Dereference volume handles on close (not on cleanup)
- Keep track of the VDO in our VCB
- Let VfatCheckForDismount() do the actual dismount, instead of VfatDismountVolume() which just initiates it
CORE-8732 #comment Can you retry?
svn path=/trunk/; revision=65372
Add a dummy application that will open first disk and check first sector for MBR and then will open first partition to check for something known (& not MBR)
svn path=/trunk/; revision=65367
* Work on the exports a bit to match native.
* There are still cases worth inspecting, marked as FIXME.
CORE-8174
svn path=/branches/shell-experiments/; revision=65307
* Another partial sync of pidl.c with Wine 1.7.27.
* Move some functions where they are used, and remove some unused ones.
* Mark some of our changes with history revisions.
CORE-8540
svn path=/branches/shell-experiments/; revision=65306
* Another partial sync of pidl.c with Wine 1.7.27.
* Move SHParseDisplayName where it belongs.
CORE-8540
svn path=/branches/shell-experiments/; revision=65305
* Another partial sync of clipboard.c with Wine 1.7.27.
* Move RenderPREFEREDDROPEFFECT to CIDLDataObj.cpp where it belongs.
CORE-8540
svn path=/branches/shell-experiments/; revision=65294
* Begin implementing TB_GETMETRICS/TB_SETMETRICS. Will send to wine once the button spacing setting works (after writing tests and whatever else may be necessary).
svn path=/branches/shell-experiments/; revision=65275
* Make use of the CToolbar<T> class to implement a CTaskToolbar.
* Change the CTaskSwitchWnd class to use CTaskToolbar instead of managing the HWND directly.
* Silence logspam in CTrayBandSite.
* Fix CNotifyToolbar to properly.
* Move the call to SetMetrics to be called only on initialization, instead of every time an icon changes.
* Make the start button a CContainedWindowT instead of a raw HWND. TODO: Make a CStartButton class to manage it.
[include/reactos/rosctrls.h]
* Some improvements needed by the taskbar.
svn path=/branches/shell-experiments/; revision=65274
- Simplify CMyDocsFolder folder to use a CFSFolder internally
- Note that while CAdminToolsFolder and CFontsFolder should aggregate CFSFolder, CMyDocsFolder shouldn't and this is implementation is much closer to windows.
svn path=/branches/shell-experiments/; revision=65243
- Begin improving our shell folders implementation
- CAdminToolsFolder is just a fancy CFSFolder so there is no need to reinvent the wheel
- Use a real CFSFolder to do all the work. When ATL aggregation works, we will be able to make this prettier
- Keep a small hack in CAdminToolsFolder::GetDisplayNameOf which returns the folder's name (I need to investigate if this is correct or not)
svn path=/branches/shell-experiments/; revision=65228
* Apply Wine commit e330a128 by Alexandre Julliard: Use Shell_GetImageLists to retrieve image lists instead of using a global variable.
CORE-8540
svn path=/branches/shell-experiments/; revision=65222
* Move shell32_main.cpp to the wine folder.
* Rename shell32_main.cpp to shell32_main.c.
* Partially sync shell32_main.c with Wine 1.7.27.
* Update the location of shell32_main.h in inclusions.
CORE-8540
svn path=/branches/shell-experiments/; revision=65217
* Mark _ILGetExtension and _ILGetFileType as EXTERN_C.
* __inline before return type.
* Some tiny style consistency fixes.
svn path=/branches/shell-experiments/; revision=65216
* Allow shdebugstr_guid() to be used from C code too.
* Move shellole.cpp to the wine folder.
* Rename shellole.cpp to shellole.c.
* Sync shellole.c with Wine 1.7.27.
CORE-8540
svn path=/branches/shell-experiments/; revision=65213
- Add shell32.cpp and move there CShell32Module, DllGetVersion, DllMain, DllCanUnloadNow, DllGetClassObject, DllRegisterServer, DllUnregisterServer, DllInstall, IDefClFImpl, IDefClF_fnConstructor and SHCreateDefClassObject
- Now shell32_main.cpp and shellole.cpp have code that can be converted back to C and synced to wine
svn path=/branches/shell-experiments/; revision=65212
* Rename a few I<x>Impl to C<x>
* Refactor the toolbar code of notification area into its own class.
* Also refactor away the code specific to the toolbar control into a CToolbar class. Todo: move the CToolbar class into some header file.
svn path=/branches/shell-experiments/; revision=65209
- Remove an old todo file that described the things that were implemented in the shell-experiments branch
svn path=/branches/shell-experiments/; revision=65208
* Refactor startmnu.cpp into three separate files. startctxmnu.cpp contains the context menu handler for the start button, and startmnusite.cpp contains the former IStartMenuSiteImpl, renamed to CStartMenuSite.
svn path=/branches/shell-experiments/; revision=65200
- Add an evil header that is going to simplify our C++ code in the shell a lot
- Use the new CListView in the implementation of CDefView to make it more readable and maintainable
svn path=/branches/shell-experiments/; revision=65176
- A HACK notice was more obvious than needed (I got what I asked after all).
- Reenable opening the printers folder since it works now
svn path=/branches/shell-experiments/; revision=65161
- Do not release the pointer to the ShellView that was just created
- Fixes a crash when showing the Printers shell folder
svn path=/branches/shell-experiments/; revision=65160
* Cleanup some window procs.
* Fix some redraw issues in the notification area due to misuse of themeing.
svn path=/branches/shell-experiments/; revision=65124
* Hopefully fix the start menu closing randomly. May have side-effects, but I think it's best to be conservative here and prefer the possibility of the menu staying open unexpectedly, rather than closing unexpectedly.
svn path=/branches/shell-experiments/; revision=65114
* Allow the static items in the Favorites menu to be received by the shell browse window.
* Handle the Organize Favorites menu item by opening either the USER favorites, or the COMMON version of the folder.
[RSHELL]
* Send the proper HWND together with the HMENU, when sending callbacks.
svn path=/branches/shell-experiments/; revision=65111
* Fix a 'pasta.
* Open something less stupid when clicking on "Is this copy legal?" in the Help menu.
svn path=/branches/shell-experiments/; revision=65099
* Fix assumption that the USER folder will always exist and only the COMMON folder may be missing. Allows the Start Menu to work in livecd.
[BROWSEUI]
* Apply the same fix to the Favorites folder, although the LiveCD does not currently have the folder so it will not work regardless.
svn path=/branches/shell-experiments/; revision=65098
* CMenuBand: Refcount before assigning a return pointer.
* CMenuDeskBar: Revert change and protect the refcounting in case I was wrong to assume there will be exactly one OnFinalMessage for each OnCreate.
* CMenuToolbars: Add a debug message.
* CStartMenu: Refcount correctly.
svn path=/branches/shell-experiments/; revision=65088
* Properly return the toolbar status on QueryStatus.
* Properly make use of the returned into from QueryStatus.
svn path=/branches/shell-experiments/; revision=65080
- Disable querying if audio is muted or not for now.
- Hides an assert that happened in wdmaud.drv
svn path=/branches/shell-experiments/; revision=65073
- Return a readable folder name when SHGDN_FORADDRESSBAR was specified
- We no longer show GUIDs in the address bar
svn path=/branches/shell-experiments/; revision=65072
- Actually give focus to the start menu when CMenuDeskBar::Popup is called
- Fixes opening and navigating the start menu with the keyboard
svn path=/branches/shell-experiments/; revision=65071
- Use IMenuPopup_OnSelect to close the start menu when the win key is pressed.
- Fixes closing the start menu (on windows and on reactos)
svn path=/branches/shell-experiments/; revision=65070
- Send the HSHELL_TASKMAN notification to the shell when the windows key is pressed
- Needed to open and close the start menu with the keyboard
svn path=/branches/shell-experiments/; revision=65069
* Fix some small things that were getting in the way of fixing the start menu (which was broken and no one noticed). The actual fix will come tomorrow since my brain is about to implode at this time.
svn path=/branches/shell-experiments/; revision=65065
- Revert a recent change in trunk that broke the new shell. Its a shame to see the new shell behave like crap because of win32k
svn path=/branches/shell-experiments/; revision=65057
- Rewrite the monstrosity that was supposed to open control panel items. Still not really correct but works.
svn path=/branches/shell-experiments/; revision=65051
- Fix CAddressBand::Invoke to correctly detect if an item exists in the list and select the correct item when it does.
- Improve CAddressEditBox::Execute to check if the passed pidl is the one that is being displayed.
- Also fix it to parse the path if needed.
- Directly call CAddressEditBox::Execute when enter is pressed or the Go button is pressed
- Should fix most issues with the address bar
svn path=/branches/shell-experiments/; revision=65036
- Improve CBaseBar::TranslateAcceleratorIO stub
- Returning always TRUE means that creating a basebar ended up eating all messages
- Fixes the hang that happened when we clicked on the folders button in the toolbar
svn path=/branches/shell-experiments/; revision=65020
- Properly notify the theme engine that the caption needs to be repainted on WM_SETICON
- Fixes a classic frame appearing when themes are enabled and we navigate to a different folder
svn path=/branches/shell-experiments/; revision=65001
* Fix HMENU leak.
[BROWSEUI]
* Work around for WM_SETICON not properly returning the old HICON.
[SHELL32]
* Fix HICON leak.
* Nitpick.
[WIN32K]
* Do not refcount the menus improperly.
svn path=/branches/shell-experiments/; revision=64986
* Fix icon leak of the returned old icon from WM_SETICON.
[RSHELL]
* Add two debug prints (not hit).
[FILEBROWSER]
[EXPLORER-NEW]
* Free PWSTR pointers after exiting.
svn path=/branches/shell-experiments/; revision=64940
* CMenuBand: Increase the refcount of m_smc before returning it.
* CMenuBand: Improve the closing logic so that the object is reusable when it needs to be, and can still be released properly.
* CMenuDeskBar: Protect self against unexpected termination.
* CMenuFocusManager: Refcount objects that are being used.
* CStartMenu: Properly release the created objects after it's done using them (by using CComPtr instead of raw pointers).
[BROWSEUI]
* AddressBand: Release the addressband site when closing the band.
* InternetToolbar: Do not filter away ALL the items of the favorites folder.
* InternetToolbar: Do not AddRef a CComPtr that already did the refcounting itself.
CORE-8690
svn path=/branches/shell-experiments/; revision=64929
* Fix wrong array length passed to GetClassNameW. CID 716222
* Replace other instances of explicit array length to GetWindowTextW with _countof(x).
Based on a patch by Christoph von Wittich.
svn path=/branches/shell-experiments/; revision=64866
* Cleanup in case of error. CID 1248426
[RSHELL]
* Add uninitialized class fields. CID 1248477
* Avoid leaking memory. CID 1248438
[BROWSEUI]
* Fix potential overwriting of a variable. CID 716363
* Save the rshell handle instead of loading it every time. CID 1248435
* Fix leaked PIDL. CID 1248418
[SHELL32]
* Fix GCC build. And one small nickpick that has been bothering me for a long time.
svn path=/branches/shell-experiments/; revision=64864
* SHOnCWMCommandLine: Fix IETHREADPARAM leak.
[SHELL32]
* Fix HMENU leak of the popup used in the view mode button of the toolbar.
[RSHELL]
* Undo a previous change to help debug the leaks.
* Remove child submenus when closing a menu band.
* Add some extra verification for debugging purposes.
[BROWSEUI]
[RSHELL]
[SHELL32]
* Move ReleaseCComPtrExpectZero to the shared header.
svn path=/branches/shell-experiments/; revision=64858
[SHELL32]
[BROWSEUI]
* Move undocshell.h to a shared location, and move some shared utility functions into it.
* Replace all the COM object constructor functions with generic equivalents.
* Fixes a big bunch of "problems" found by Coverity Scan, but I don't have the list of CID at the moment.
svn path=/branches/shell-experiments/; revision=64854
* Actually send an OnSelect message right before executing the menu items. Fixes the problem where going to start->shutdown would keep the start menu open in the background.
svn path=/branches/shell-experiments/; revision=64727
* Fix another comment.
* Fix a cch/cb bug.
* Make use of the DSA_DestroyCallback function instead of messing around with the internals of the DSA.
CORE-8564
svn path=/branches/shell-experiments/; revision=64646
* Work around shellexecute not handling GUID path components by giving them to explorer as a cmdline parameter.
* NOTE: The Printers and Faxes option is temporarily disabled because it CRASHES explorer-new.
svn path=/branches/shell-experiments/; revision=64579
* Always open separate.
[BROWSEUI]
* Use the threadref IUnknown for reference counting in the browser threads.
svn path=/branches/shell-experiments/; revision=64578
* We don't keep changelogs in the file headers anymore. That's what the SVN commit history is for.
CORE-7559
svn path=/branches/shell-experiments/; revision=64406
[SHELL32]
* Implement shell shutdown using a proper shutdown dialog. Patch by Lee Schroeder with a small change to fix MSVC build.
CORE-7559 #comment Commited into shell-experiments branch r64403.
svn path=/branches/shell-experiments/; revision=64403
* Implement skeleton shell dde parser.
[SHELL32]
* Copy over the skeleton from rshell, and fill in the handlers for ViewFolder and ExploreFolder, with rudimentary implementations.
CORE-7552
svn path=/branches/shell-experiments/; revision=64395
* Implement SHCreateFromDesktop and supporting functions, and move those implementations to their own file.
[SHELL32]
* Handle message 1035 from the desktop window.
[SHLWAPI]
* Fix a bug in SHAllocShared, where source and destination parameters were reversed.
[EXPLORER-NEW]
* Use SHCreateFromDesktop to open the new window.
NOTE: There appears to be some more problems with the SH*Shared implementation, beyond the swapped parameters, which prevent the opening of the new windows. These functions will have to be revised and the corrected implementation sent to WINE.
svn path=/branches/shell-experiments/; revision=64314
* Implement Taskbar auto-hide. The setting dialog does not work, though, so in order to enable it you need to change the StuckRects2 registry key so that the Settings value has the right bit set to 1 (or import from a Windows installation).
svn path=/branches/shell-experiments/; revision=64089
* Make shlwapi_undoc.h compatible with C code.
[EXPLORER-NEW]
* Link with browseui.
* Use SHOpenNewFrame linked from browseui instead of explicitly loaded.
* Make use of SHExplorerParseCmdLine. Does not yet open windows in an existing process when used through commandline.
svn path=/branches/shell-experiments/; revision=64083
* Make use of the wine debug functions and turn DbgPrints into TRACE/WARN/ERR.
[SHELL32]
* Turn some DbgPrints into TRACEs.
svn path=/branches/shell-experiments/; revision=63912
* Stop using the C defines LPSHELLFOLDER, LPSHELLVIEW and LPUNKNOWN, and use the respective C++ interfaces instead.
* Change one batch of COM interface pointers into CComPtr-based pointers, and remove associated Release calls (including at least one that was not supposed to be there at all).
* Remove a couple (repeated multiple times) pointless casts.
svn path=/branches/shell-experiments/; revision=63908
* Populate edit and view menu on first activation. TODO: enable/disable edit menu items in OnInitMenuPopup.
* Add Edit menu to resources (en-US only, other langs TODO)
* Repurpose BuildFileMenu to build the menu for the selection. This needs improvements as it uses all the items from the context menu at the moment.
* Add items to the File menu when shown.
svn path=/branches/shell-experiments/; revision=63836
* Improve the view menu handler a bit. Now the view menu properly marks the current view as expected.
svn path=/branches/shell-experiments/; revision=63811
* Find the menu index so that the forwarded WM_INITMENUPOPUP has all the info shell32 needs.
[SHELL32]
* Begin implementing dynamic menu editing, which is used by the shell views in order to change, add or remove items from the filebrowser menus. Some menu items may be temporarily lost until this is finished.
svn path=/branches/shell-experiments/; revision=63809
* Fix DllMain not being called when building with gcc. Apparently msvc makes DllMain extern "C" even if you didn't ask for it, unlike gcc.
* Simplify some code.
svn path=/branches/shell-experiments/; revision=63791
* Shell service object DLLs expect the ShellServiceObjectDelayLoad key to exist.
[SYSSETUP.INF]
* Mark stobject.dll to be registered during setup.
[STOBJECT]
* Implement icon handling.
* Implement rudimentary volume icon handler.
* Allow the volume icon to show the mute status of the primary audio device.
svn path=/branches/shell-experiments/; revision=63750
* Create skeleton for the SysTray shell service object DLL. No tray icons are created yet.
* Tranks Robert Naumann for providing the icon resources, and some file templates.
svn path=/branches/shell-experiments/; revision=63732
* Notify the parent menu popup when the deskbar is closing.
[EXPLORER-NEW]
* Set the button pressed when the start menu gets displayed.
* Set the button released when the start menu notifies it was closed.
svn path=/branches/shell-experiments/; revision=63710
* Use the IAugmentedShellFolder methods instead of the old constructor.
[SHELL32]
* Fix gcc compilation.
svn path=/branches/shell-experiments/; revision=63708
* Now that CMergedFolder works, try to make it more like windows.
* CMergedFolder: Declare and expose the undocumented IAugmentedShellFolder2 (all methods unimplemented yet). It will require major changes to the way I implemented it, but it will be for the best.
* CStartMenu: Make use of the real CMergedFolder in Windows 2003 (does not exist in win7).
svn path=/branches/shell-experiments/; revision=63703
* CFocusManager: Try to fix some weird behaviour.
* CMergedFolder: Downgrade some prints to TRACEs, and implement a couple methods needed by some debugging code.
* Activate merged folders by default. TODO: implement the filtering of the "Programs" submenu, and use it for the real Programs menu item.
[SHELL32]
* defcontextmenu.cpp: Make a copy of the apidl array before storing it for later, since it may be a pointer to the stack which may not be available later. Fixes the merged folders not working on clicks and context menu.
* shlmenu.cpp: While debugging, I made Shell_MergeMenus closer to WINE's.
svn path=/branches/shell-experiments/; revision=63702
* Revert debugging change that shouldn't have been commited.
* Implement rudimentary tooltip support for tray icons. Does not yet work exactly like the windows does it.
svn path=/branches/shell-experiments/; revision=63685
* Fix a typo that broke tray notify icons.
* Implement loading of Shell Service Objects. Works in win2003 but no idea if it works in ros since we don't have any SSO implemented yet ;P
svn path=/branches/shell-experiments/; revision=63684
* Handle SMSET_BOTTOM on SetShellFolder so the shell items show below the static menu.
* Downgrade some DbgPrints to TRACEs (reduces log spam).
* Add some extra debugging messages to CMergedFolder.
* Export the CMergedFolder constructor so it can be used from browseui.
[BROWSEUI]
* Use merged folders for the Favorites menu.
svn path=/branches/shell-experiments/; revision=63683
* Change the way the menu items are activated. Now the menubar activates on mouse down, and the other items activate on mouse up. Not everything works perfectly yet, but it will eventually allow proper usage of the shell menus by keeping the mouse button down. I believe this is also the way to go to avoid the "instant reopening" of the menus when trying to close them.
svn path=/branches/shell-experiments/; revision=63671
* Added IPersistFolder2 interface to CMergedFolder, per MSDN suggestion.
* Changed the way the pidl info is stored to be more clean and readable.
svn path=/branches/shell-experiments/; revision=63669
* Implement a rudimentary but mostly functional (for start menu purposes) CMergedFolder class. It's still disabled by default because clicking on an item in a merged folder appears to fail to execute it.
svn path=/branches/shell-experiments/; revision=63658
* Disregard the restricted setting and always remove the Search menu from the start menu. When Search is implemented, it can be reenabled.
svn path=/branches/shell-experiments/; revision=63639
* Implement a rudimentary "Help and Support" start menu item by launching the default browser with http://reactos.org/ as the URL.
svn path=/branches/shell-experiments/; revision=63638
* Notify the focus manager that we are about to open a context menu, so that it doesn't mess with the menu popup.
svn path=/branches/shell-experiments/; revision=63634
* Use a struct like the comment suggested. May not fix anything, but it's one FIXME less in ReactOS.
svn path=/branches/shell-experiments/; revision=63623
* Copy basic path parsing from explorer-new, so filebrowser.exe can load with a different folder active.
svn path=/branches/shell-experiments/; revision=63622
* Process ParseNow on the CBEN_ENDEDIT notification.
* Call SHAutoComplete to ask the edit control to have autocomplete functionality. I need to figure out the flag or whatever is needed to make it show "Search 'string'" when entering something that's not a valid path.
svn path=/branches/shell-experiments/; revision=63621
* Turn off spammy log.
* A small themeing tweak for the menubar.
[BROWSEUI]
* Turn off spammy log.
* A small tweak to a function.
svn path=/branches/shell-experiments/; revision=63620
[TASKMGR]
Set a proper shutdown level (with SetProcessShutdownParameters) so that explorer and taskmgr are terminated the very last when one shutdowns ReactOS.
See Windows Internals 4th page 286 (section "Shutdown") which gives the values (that I've cross-checked on Windows 2k3 too).
svn path=/branches/shell-experiments/; revision=63601
* Fix stack corruption in VS2010 builds. No idea why it doesn't crash with other compilers.
[EXPLORER-NEW]
* Fix a similar bug that does not appear to cause any issue, but is a bug regardless.
svn path=/branches/shell-experiments/; revision=63548
* Use the debugging class to track COM refcounting of the CMenuBand.
* CMenuSite: Remove an useless line.
[BROWSEUI]
* Refactor the CreateMenuBar method in an attempt to figure out a seemingly magic crash with VS2010 (not yet solved).
* Begin fixing some unused-but-set warnings.
[SHELL32]
* Fix some small bugs spotted by Victor.
svn path=/branches/shell-experiments/; revision=63546
* Fix gcc compilation.
[BROWSEUI/RSHELL]
* Use virtual destructors and cleanup with delete in the creator functions.
* Try to fix a bit the "close" flow, so that less circular references remain when the filebrowser windows are closed.
svn path=/branches/shell-experiments/; revision=63539
* Plug a few menu leaks. In Windows, it brings down the leaked menus from 20 per navigation, to only 1-2. In ReactOS, from 60 to 20.
[RSHELL,SHELL32]
* Code tweaks that shouldn't change the actual behaviour.
svn path=/branches/shell-experiments/; revision=63537
* Begin fixing the process of destroying the related objects when closing the window, so that eventually the filebrowser/explorer process will properly exit cleanly when no more windows are open.
svn path=/branches/shell-experiments/; revision=63535
* This shouldn't have been commited. The browse windows were freezing because it was trying to use the menu from shell32 instead of rshell.
svn path=/branches/shell-experiments/; revision=63533
* The CDefView should not process the backspace key directly. It's already handled by the accelerators.
[BROWSEUI]
* Allow the docked toolbars to translate accelerators.
* CAddressEditBox: Cancel accelerators without modifiers while focused.
[RSHELL]
* Cancel accelerators while a popup is open, and ignore them otherwise.
svn path=/branches/shell-experiments/; revision=63504
* Remove a call that shouldn't even be working in Windows, and was completely unnecessary. Fixes explorer-new navigation history in ReactOS.
* Added some debug traces.
CORE-8173
svn path=/branches/shell-experiments/; revision=63479
* Close menu on right click too.
[BROWSEUI]
* Check/uncheck the lock toolbar item based on the lock state. The view menu does not update yet.
[SHELL32]
* Destroy the menu when the view window is destroyed.
svn path=/branches/shell-experiments/; revision=63461
* Reuse the same menu instead of recreating it every time something changes. Fixes the menus not showing, but it's not the right way to do it. A better implementation should come later.
[BROWSEUI]
* Add a german version of the toolbar strings, by Christoph von Wittich.
svn path=/branches/shell-experiments/; revision=63426
* Keep the call to TranslateAcceleratorSB within the shell browser, since it appears the windows CDefView does not call it.
* "Hackplement" the backspace key as being the same as the "go up one level" menu item. This does not seem to be exactly true in Windows, but it does the job.
svn path=/branches/shell-experiments/; revision=63415
* Improve the message loop to allow processing of accelerators.
[SHELL32]
* Return the accelerator to the shell browser if the view doesn't handle it.
svn path=/branches/shell-experiments/; revision=63397
* Do not swap the big and small imagelist pointers. Fixes the explorer windows not having an icon in the taskbar.
Note: the underlying issue preventing the taskbar from showing a 32x32 icon in the buttons still exists, so other apps with the same behaviour will still fail to draw.
svn path=/branches/shell-experiments/; revision=63383
* Implement ParseNow to allow navigating to the current address in the editbox.
[SHELL32]
* Set the focus to the listview if the browser is requesting it.
CORE-7330
svn path=/branches/shell-experiments/; revision=63371
* Disable the brandband again, since it doesn't look right in ros.
* Fix the browse window styles so that it can properly open with system-provided default size.
* Change the default view mode of the file list to Icons.
CORE-7330
svn path=/branches/shell-experiments/; revision=63370
* Default to always-on-top if the registry setting is not found.
* Reload and apply settings on display change. Fixes taskbar not repositioning on resolution changes.
CORE-7330
svn path=/branches/shell-experiments/; revision=63369
* Fix the fallback for when rshell functions are not exported or rshell is not present.
* While at it, avoid unnecessary calls to LoadLibrary.
svn path=/branches/shell-experiments/; revision=63357
* Turn back some DbgPrints into TRACEs.
* Remove the desktop from the rshell exports, as it works better in ros that way, and it's only needed for debugging in windows 8.
svn path=/branches/shell-experiments/; revision=63352
* Allow WM_ACTIVATEAPP to be sent to the deactivated windows. Fixes the start menu not closing when clicking outside the taskbar. Patch by Huw (Frontier).
CORE-8235 #resolve #comment Included in shell-experiments branch. Thanks.
svn path=/branches/shell-experiments/; revision=63350
* HSHELL_WINDOWCREATED should only be sent for visible windows.
CORE-8226 #resolve #comment Fixed in the latest commit. Thanks for reporting.
svn path=/branches/shell-experiments/; revision=63316
* Fix handling of taskbar items.
* Filter out the desktop and taskbar from the button list.
* Fixes minimizing from the taskbar in Windows (something else is preventing it from working in ros).
[NTUSER]
* Improve filtering of windows before calling HSHELL_WINDOWCREATED.
[USER32]
* Menus are supposed to be WS_EX_TOOLWINDOW so they don't show up in the taskbar.
[ATL]
[BROWSEUI]
[SHELL32]
* Include ATL aggregation patch by Huw (Frontier) (with Amine's changes).
CORE-8175
svn path=/branches/shell-experiments/; revision=63304
* AddressBand: Create a combobox item to hold the info of the current folder, and keep it selected. This will in the future be improved to show a pseudo-tree including all the parent folders up to the Desktop, with the Desktop and My Computer expanded.
CORE-8220
svn path=/branches/shell-experiments/; revision=63270
* Fix gcc build.
* Also, undo a change that wasn't as useful as I first thought it would be.
CORE-8183 #resolve #comment Here you go. Thanks for reporting.
svn path=/branches/shell-experiments/; revision=63196
CORE-8176 #resolve #comment Trunk commit r63174 should fix this issue. I merged from trunk to bring it into Shell-experiments.
svn path=/branches/shell-experiments/; revision=63175
* Begin implementing resizing of the rebar.
* Begin implementing the addressbar function. For now, the current folder path is displayed. No icon, no parsing support, no combo dropdown list.
CORE-8173
svn path=/branches/shell-experiments/; revision=63156
* Fix redundant clauses by converting the code to a switch block. Adapted from a patch by Victor Martinez.
CORE-8161 #resolve #comment Fixed in the shell-experiments branch. Thanks.
svn path=/branches/shell-experiments/; revision=63115
* Do not set the imagelist if the bitmap wasn't loaded.
* Fix the flags that caused the toolbar not to relocate when toggling the lock mode.
svn path=/branches/shell-experiments/; revision=63114
* I forgot a cast and a couple IID_PPV_ARG uncommited.
[BROWSEUI]
* Fixed rebar flags to match windows. Adds the missing border around the toolbars.
* Fix some calculations of the rebar size.
* Fetch the icon of the current folder and assign it to the browse window.
CORE-7330
svn path=/branches/shell-experiments/; revision=63103
[SHELL32]
* Move the IID_NULL_PPV_ARG macro to the shobj_undoc header, next to the (also ros-specific) IID_PPV_ARG macro, so that it can be used elsewhere.
[SHELL32]
* Make use of IID_NULL_PPV_ARG in all the calls to GetUIObjectOf, and fix one instance of mismatched riid/pointer.
CORE-7330
svn path=/branches/shell-experiments/; revision=63044
* Make use of the IID_PPV_ARG for typesafe interface return pointers, and a few other cosmetic changes.
CORE-7330
svn path=/branches/shell-experiments/; revision=63033
* Reenable the brand box on file browser windows.
* Fix an invalid usage of a null HWND.
* Implement size calculation of the standard toolbar.
CORE-7330
svn path=/branches/shell-experiments/; revision=62961
* Implement selecting the first/last item, and make the menu system choose to select the first item when opening a submenu with the keyboard.
svn path=/branches/shell-experiments/; revision=62959
* Fix stack overflow when pressing enter with a menu item selected. Executing with enter now works correctly.
CORE-7586
svn path=/branches/shell-experiments/; revision=62957
* Prevent the focused window from receiving keyboard events while a shell menu is open.
CORE-7586
svn path=/branches/shell-experiments/; revision=62935
* Almost working keyboard navigation on horizontal menu bar. It does not yet switch between menus when a submenu of the shell menu is currently open and you press [right].
CORE-7586
svn path=/branches/shell-experiments/; revision=62891
* Implemented horizontal keyboard navigation on the menubar. Does not yet work for the Favorites menu, which is a shell popup and not a tracked popup. Also missing the system menu in the rotation.
svn path=/branches/shell-experiments/; revision=62757
* Fix keyboard navigation on vertical popup menus. Navigating through the menubar does not work yet.
CORE-7586
svn path=/branches/shell-experiments/; revision=62753
* Fixed the context menu for shell items.
* Some more code style improvements.
* Moved the toggles between using system classes and rshell classes into the constructor functions, so the code is easier to read.
CORE-7586
svn path=/branches/shell-experiments/; revision=62752
* Code cleanups and formatting.
* Remove the logging wrappers. If I need them again I'll bring them back.
* Try to fix a few "glitches" in the hot-tracking.
svn path=/branches/shell-experiments/; revision=62693
* Some code improvements, refactoring, and commenting.
* Using alternative method of handling hot-tracking, which does not break in win2003.
CORE-7586
svn path=/branches/shell-experiments/; revision=62681
* Improvements on the focus manager. The menus work better, but still not fully. Commiting for backup/history purposes.
CORE-7586
svn path=/branches/shell-experiments/; revision=62601
* Redesigned large portions of the focus manager. All the mouse interactions seem to work now
CORE-7586.
svn path=/branches/shell-experiments/; revision=62567
* Improve behaviour when hovering and clicking on the menubar. It's still somewhat glitchy though.
CORE-7586
svn path=/branches/shell-experiments/; revision=62539
* Improve mouse navigation of the menubar.
* Fix the menus.
* Fix the case for system includes (hopefully fixes).
CORE-7586
svn path=/branches/shell-experiments/; revision=62537
* Implement WH_MSGFILTER hooking to handle the popup menus from the horizontal menubar. Switching between menu items wby moving the mouse now works, but at the moment, the non-menu popups (including the start menu) are somewhat glitchy.
CORE-7586
svn path=/branches/shell-experiments/; revision=62534
* Begin work in improving the behaviour of the horizontal mode menuband. There's still a lot of work to do, and some things are temporarily worse than before, but in other places it has improved already.
CORE-7586
svn path=/branches/shell-experiments/; revision=62520
* Fix the hot tracking on the filebrowser menubar. Still does not handle switching menus while hovering, though.
CORE-7586
svn path=/branches/shell-experiments/; revision=62514
* Fix keyboard navigation and hottracking behaviour. One glitch remains where quickly moving the mouse to a parent's toolbar item, and returning to the submenu before it closes, won't restore the parent's hot item to the one with the submenu.
svn path=/branches/shell-experiments/; revision=62509
* Fix some null dereferences.
* Fix positioning of submenus of an horizontal menu toolbar.
[BROWSEUI]
* Fix some null dereferences.
CORE-7586
svn path=/branches/shell-experiments/; revision=62492
* Added partial implementation of the IShellFolderView interface to CFolderView. Patch by Ivan Rodionov.
CORE-7976 #resolve #comment Applied to shell-experiments branch. Thanks.
svn path=/branches/shell-experiments/; revision=62489
* Use the correct icon for the "My Computer" item. Patch by Robert Naumann.
CORE-7979 #resolve #comment Applied to shell-experiments branch. Thanks.
svn path=/branches/shell-experiments/; revision=62488
* SHGetImageList should not return a duplicated ImageList. In Windows the pointers returned by Shell_GetImageLists match the pointers returned by SHGetImageList for SHIL_SMALL and SHIL_LARGE.
[RSHELL]
* Remove two obsolete debug prints.
svn path=/branches/shell-experiments/; revision=62483
* Workaround for the exec issue. Ros currently seems to send a bogus WM_ACTIVATE message when clicking while the window is already active. Proper fix may come later if I can figure out why this happens.
CORE-7586
svn path=/branches/shell-experiments/; revision=62475
* Fix reusing the same toolbar when SetMenu is called multiple times.
* Avoid some null dereferences.
[BROWSEUI]
* Temporarily (?) disable the logo band.
The browser window's "coolbar" and menubar now display and work properly in both Windows and ReactOS.
CORE-7586
svn path=/branches/shell-experiments/; revision=62472
* Give TrackPopupMenuEx the top-level window. Need to figure out how Windows does this, it probably does not simply use the top-level window that way.
* Give TrackPopupMenuEx better flags and a better exclude rect.
CORE-7586
svn path=/branches/shell-experiments/; revision=62469
* Rename the output to explorer_old
[EXPLORER-NEW]
* Rename the output to explorer
* Launch a browseui window when explorer is run with an existing shell process.
Shell-experiments will now be running the new shell by default.
This allows me to test the shell classes under more accurate conditions, so I was using it locally for a while.
I decided to commit because of two reasons:
1. It was making me temporarily revert some changes done to some files when I wanted to commit, and
2. It lets everyone see the results of the shell-experiments project without having to mess with the task manager.
Keep in mind that, as the branch name implies, it STILL is an experiment.
CORE-7586
svn path=/branches/shell-experiments/; revision=62449
* Load and use rshell for the menubar.
* Properly forward WM_NOTIFY and WM_COMMAND messages to the toolbars.
[RSHELL]
* Improve behaviour of horizontal menubands.
* Clicking on submenu items does not work yet.
CORE-7586
svn path=/branches/shell-experiments/; revision=62448
* Revert a change that removed too much. Unbreaks the "New..." menu, and anywhere else that required this, although the code feels like a workaround for a bug elsewhere.
svn path=/branches/shell-experiments/; revision=62436
* I don't know what this may fix, but it was wrong. On the upside, now there's less spam in the log.
svn path=/branches/shell-experiments/; revision=62433
* CMenuSite: Reworked the code to avoid SHIsSameObject, since newer versions of windows do not implement that function. The code should be equivalent, and does less unnecessary calls to QueryInterface.
CORE-7879
svn path=/branches/shell-experiments/; revision=62432
* CMenuSFToolbar: Keep the m_shellFolder pointer in a CComPtr, so that it doesn't get deleted and possibly reused for something else.
CORE-7586
svn path=/branches/shell-experiments/; revision=62429
* Make horizontal separators of vertical toolbars draw.
* Apply the same padding to separators as the rest of the buttons.
* Fixup some tabs into spaces, for consistency.
* Needs to be sent to wine.
svn path=/branches/shell-experiments/; revision=62426
* SHInvokeDefaultCommand is supposed to invoke the DEFAULT command, so why was bInvokeDefault given FALSE?!
[RSHELL]
* A couple of trivial fixes.
[NTUSER/USER32]
* I missed two bits. See CORE-7966 for more info on the menu issue.
CORE-7586
svn path=/branches/shell-experiments/; revision=62420
* I was telling AddButton that all the items were the last, except the last. Now the submenus display properly. Some of them at least. Others get an exception, it seems.
CORE-7881
svn path=/branches/shell-experiments/; revision=62416
[USER32]
* Fix what I think is a wrong behaviour of storing MF_POPUP in the fType of the menu. Now it relies on hSubMenu being != NULL as an indicator of the presence of a submenu.
* Resource submenus are not supposed to get the hSubMenu as a wID, as far as I can tell.
* From the user point of view, it matches Windows better. Needs review and testing, as I don't know if I updated everything correctly.
svn path=/branches/shell-experiments/; revision=62415
* Improve logging in case of unexpected failures, and trace the creation of toolbar (menu) items.
CORE-7586
svn path=/branches/shell-experiments/; revision=62414
* Move the copying back where it belongs. CMake may generate the dependencies the wrong way around (explorer-new should depend on rshell), but at least the copying works as expected, even if I always have to "build solution".
* Allow toggling between TBSTYLE_EX_VERTICAL and the manual TBSTATE_WRAP setting by (un)definiting TBSTYLE_EX_VERTICAL.
CORE-7881
svn path=/branches/shell-experiments/; revision=62412
* Improve encapsulation of the CMenuToolbarBase by avoiding unnecessary usages of the window handle from the derived classes.
CORE-7881
svn path=/branches/shell-experiments/; revision=62411
* CMenuToolbarBase: Use TBSTATE_BREAK on every button instead of TBSTYLE_EX_VERTICAL. This allows the vertical alignment to work on ros, although the separators are neither sized nor drawn correctly, and the arrow alignment is wrong.
NOTE: It's still not functional. Second level submenus don't show up, and clicking on items does nothing.
CORE-7881
svn path=/branches/shell-experiments/; revision=62382
* Move dependency copying to the target script, so that the target properly depends on the source and not the other way around.
* Make all the custom constructors WINAPI.
* Add all the custom constructors to the spec file.
CORE-7596
svn path=/branches/shell-experiments/; revision=62365
* Add a new logging wrapper to record calls from the start menu back to the explorer site.
CORE-7586
svn path=/branches/shell-experiments/; revision=62335
* Show the start menu at the same position and alignment Windows uses.
[RSHELL]
* Use IShellFolder methods instead of SHCreateShellItem.
* Handle toolbar window events from the toolbar class.
* Improve the positioning calculations.
* TODO: How to tell the submenus of the start menu to show towards the left? For when the taskbar is ABE_RIGHT.
CORE-7596
svn path=/branches/shell-experiments/; revision=62334
* Some menu style improvements.
* Some code style improvements.
* Added a skeleton CMergedFolder, as a base towards showing items from both the user and the common start menus. It does not work yet.
CORE-7586
svn path=/branches/shell-experiments/; revision=62330
* CStartMenu: Update the icon resource IDs to the IDs with the smaller images. This causes the images not to show. Need help figuring out why.
* Misc changes.
CORE-7586
svn path=/branches/shell-experiments/; revision=62328
* CMenuBand: Fix the keyboard navigation a bit. Still not fully working yet.
* Show submenus a bit closer to the arrow, as Windows does.
CORE-7881
svn path=/branches/shell-experiments/; revision=62323
* CMenuBand:
- Use a Pager control on top of the SF Toolbar, like Windows does.
- Cache the ideal size of the toolbars to reuse it next time the start menu shows.
- Draw the dropdown arrows on items with dropdowns.
- Cancel the timer and open a submenu immediately if the item is clicked.
- Draw the selected background color on the item with a popup if there is no other item being hovered.
- Add some space for the dropdown arrows in the size calculations (hardcoded).
- Simplify the size calculation and positioning.
CORE-7881
svn path=/branches/shell-experiments/; revision=62317
* Revert change from r62307. Will do a proper merge instead.
[RSHELL]
* CMenuBand: Use SHGetImageList instead of Shell_GetImageLists.
* CMenuBand: Remove minwidth in the size calculation.
svn path=/branches/shell-experiments/; revision=62308
* CMenuBand: Send timer notifications for all items, so we can hide a previous submenu when the user hovers an item without submenu.
* CMenuBand: Avoid a stack overflow in some versions of windows by relying on the stored value instead of asking for it in the middle of a changed event.
CORE-7881
svn path=/branches/shell-experiments/; revision=62303
* CMenuDeskBar: Actually use the Popup flags to decide on the relative position of the submenus.
CORE-7886
svn path=/branches/shell-experiments/; revision=62296
* Take "DbgPrint" function from explorer-new.
* CMenuBand: Show placeholder if the band gets an empty IShellFolder. Added what I guess is a hack, to allow CMenuDeskBar to get the submenu popup from the band.
* CMenuDeskBar: Use WM_ACTIVATE and WM_ACTIVATEAPP to detect when the menu should be closed. Uses the hack above for the exception of showing a submenu.
CORE-7886
svn path=/branches/shell-experiments/; revision=62295
* CMenuBand, CMenuDeskBar: Improve the SubMenu hierarchy and OnSelect flow. Now the menu will spread a FullCancel or Execute upwards and close the whole start menu.
CORE-7881
svn path=/branches/shell-experiments/; revision=62280
* Improve the layout of the class definitions to make the important details easier to find.
* Rename private (non-COM) class methods to more appropriate names, including a prefix.
* CMenuBand: Make one submenu close before showing another one. This may not be happening in the same exact way windows does it.
CORE-7881
svn path=/branches/shell-experiments/; revision=62263
* CMenuBand: Implement rudimentary support for changing the hot item with the keyboard (up/down). The code can probable be simpler, and some corner cases need to be fixed, but it works.
* CMenuDeskBar: Attempt to redesign OnSelect to better match the windows behaviour, which is still mostly unknown.
* Make the log results more readable.
CORE-7881
svn path=/branches/shell-experiments/; revision=62262
* CMenuDeskBar: Use the submenu pointer to pass on the cancel events. Windows appears to call this with code=2 (cancellevel).
* CMenuBand: Begin implementing a focus manager for the menu windows. This class will take care of handling mouse and keyboard interactions, including closing the start menu and submenus when the user clicks outside the menu window.
CORE-7881
svn path=/branches/shell-experiments/; revision=62259
* Improve the logging system to allow using the same logger for both windows classes and rshell classes.
* Add a wrapper for CMenuSite.
* CMenuDeskBar: Reduce the log differences by keeping a cached copy of the client HWND.
* CMenuBand: Reduce the log differences by keeping a copy of the top level HWND. Will be used later.
CORE-7586
svn path=/branches/shell-experiments/; revision=62253
* Fix some more C-style casts, and misc coding style changes.
* CMenuBand: Create a skeleton of the functions that would handle SMIF_TRACKPOPUP submenus.
* CMenuDeskBar: Fix the redraw issue that prevented submenus from working as expected.
CORE-7886
svn path=/branches/shell-experiments/; revision=62248
* CMenuBand: Improve wrapper logging to get a better picture. Handle more SIDs on QueryService. Send selection messages on hot item changed and on execute.
* CMenuDeskBar: Improve wrapper logging to get a better picture. Handle more SIDs on QueryService. Begin handling more cases in OnSelect.
CORE-7881
svn path=/branches/shell-experiments/; revision=62243
* CMenuBand: Fix display of icons for the static toolbar.
* CMenuDeskBar: Fix positioning of the window not to cross the top edge.
CORE-7881
svn path=/branches/shell-experiments/; revision=62242
* Change C-style casts to static_cast where possible, and reinterpret_cast elsewhere.
* Make coding style and formatting more consistent.
svn path=/branches/shell-experiments/; revision=62239
- CStartMenu: add a test flag that makes the start menu show its submenus using SMIF_TRACKPOPUP in order to show how CMenuBand can use TrackPopupMenu
svn path=/branches/shell-experiments/; revision=62238
* CMenuBand: Improve the code structure.
* Make the class selection better managed.
Thanks Giannis.
CORE-7881
svn path=/branches/shell-experiments/; revision=62231
* CMenuDeskBar: Use the proper value for style in AdjustWindowRect.
* CMenuBand: Implement submenu hot-tracking timer. Not functional yet (submenu creation not implemented).
CORE-7881
svn path=/branches/shell-experiments/; revision=62227
- CMenuDeskBar: Implement showing a shadow. Implement closing the menu when it loses focus (this only works with the stock menu band for now)
svn path=/branches/shell-experiments/; revision=62225
- CMenuBand: Fix the size of the separators by setting iBitmap to 0 (which acts as the width of the separator).
- CMenuDeskBar:
Create the window only in CMenuDeskBar::SetClient and not in SetSite.
Greatly simplify SetSite.
Make sure that WS_EX_TOPMOST isn't removed when we call SetWindowPos
Do not forward requests for the SID_SMenuPopup service to the taskbar as this causes the menu band to capture the mouse for the taskbar and not the desk bar
svn path=/branches/shell-experiments/; revision=62223
* A couple small fixes before I go to bed.
* Add to CD, so explorer_new can be run in ros, with the custom classes.
CORE-7886
svn path=/branches/shell-experiments/; revision=62156
* Add more missing code. The custom CMenuDeskBand is now able to show the contents of a CMenuSite/CMenuBand in the right size, including the banner (not yet fully functional).
* Organize the method list in CMenuSite by interface.
[EXPLORER-NEW]
* Revert the hacks from r62134.
[PSDK]
* Add IUnknown_QueryServiceExec to shlwapi_undoc.h
svn path=/branches/shell-experiments/; revision=62149
* Port the implementation of CMenuDeskBar to rshell (still disabled by default).
* Begin implementing missing features:
- Notify the band of the icon size change from SetIconSize.
svn path=/branches/shell-experiments/; revision=62138
* Remove from build while it hangs VS2013.
[EXPLORER-NEW]
* Hack it to work on Windows 7, even if an existing explorer is already running.
* Move start menu popup to its own function, for easier debugging.
* Maybe-fix a drawing issue if no theme is selected.
[RSHELL]
* Added wrapper for CMenuBand
* The cmake script should not use a hardcoded path
* Better name for the log file.
CORE-7886
svn path=/branches/shell-experiments/; revision=62134
* Separate the wrapper logging code to its own file, to facilitate further debugging in other classes.
svn path=/branches/shell-experiments/; revision=62133
* Implemented a class that wraps CMenuBand, for the purpose of logging the calls, with parameters and returned values (disabled, set WRAP_LOG to 1).
* Partial (WIP) implementation of CMenuBand.
[ATL]
* VirtualAlloc can not have a non-zero size while using MEM_RELEASE.
svn path=/branches/shell-experiments/; revision=62132
- Add a tiny hack in browseui that allows it to browse properly when the user tries to open a folder in win8
svn path=/branches/shell-experiments/; revision=62082
- Do not embed a manifest in the resources in order to allow three different scenarios that can be accomplished by using two manifests
- In the first scenario we have filebrowser.exe + filebrowser.exe.manifest in the same folder. This should work only in windows xp, 2003 and reactos as it depends on the browseui that exists in windows
- The second scenario is to have filebrowser.exe + filebrowser.exe.manifest + browseui.dll in the same folder. This should also work in the same platforms as above but the core of the file browser will be used from the supplied browseui. However browseui will also request to instantiate some com objects implemented in browse and as a result some objects will be used from the browseui that exists in windows
- The third scenario is to have filebrowser.exe + filebrowser.exe.regfree.manifest + browseui.dll + browseui.sxs.manifest. This scenario should work in windows xp and all later versions. Note that filebrowser.exe.regfree.manifest must be renamed to filebrowser.exe.manifest. In this scenario all the functionality of the file browser window is used from the supplied browseui.dll
svn path=/branches/shell-experiments/; revision=62081
- Fix atl thunks to be allocated in executable memory and not from the stack in order to run libraries that use atl (such as browseui) in windows with DEP enabled
svn path=/branches/shell-experiments/; revision=62011
- Implement showing and closing the start menu by pressing the WIN key
- Implement handling WM_KLUDGEMINRECT message that informs the window manager the place of an application in the taskbar in order to show the minimization or maximization animation of a window
- Implement showing taskbar settings when the user selects to show the taskbar settings from the settings menu in start menu
- Implement hiding the Favorites menu in the start menu when needed
svn path=/branches/shell-experiments/; revision=62010
- Add an experimental module called FileBrowser.exe. This program works standalone in windows xp and windows 2003 and opens a new file browser window in its own process. If our browseui.dll is in the same folder, filebrowser will use the implementation of our file browser in windows. That means that standalone it works only in xp and 2003 but with our own browseui it will work on all windows versions (but doesn't work on all for now). This can be used for both testing the implementation of our file browser in windows and as a host process for new file browser windows for explorer_new.exe + rshell.dll
svn path=/branches/shell-experiments/; revision=61974
- Commit a great experiment for explorer. Our explorer will try to load a library called rshell.dll which will provide an alternative implementation of some functions that are built in in windows shell. These functions are CStartMenu_Constructor, SHCreateDesktop, SHDesktopMessageLoop, WinList_Init and ShellDDEInit. Providing our own implementation for these functions will allow us to make it run in all windows versions up to windows 8 and also test the implementation of our own components that will be placed temporarily in rshell.dll while they are developed and debugged in windows.
svn path=/branches/shell-experiments/; revision=61971
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmî olmayan çevirisidir. Çeviri metniyle özgün metin arasında ayrım olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu izlence özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Umûmî Kamu Ruhsatı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (Orası size bağlı.) koşulları altında yeniden dağıtabilir veyâ değiştirebilirsiniz.\r\n\r\nBu izlence, kullanışlı olabileceği beklentisiyle dağıtılmıştır ancak bu izlencenin HİÇBİR GÜVENCESİ YOKTUR, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN demek istenilen güvencesi bile. Daha çok bilgi için GNU Umûmî Kamu Ruhsatı'na bakınız.\r\n\r\nBu izlenceyle birlikte GNU Umûmî Kamu Ruhsatı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmî olmayan çevirisidir. Çeviri metniyle özgün metin arasında ayrım olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu izlence özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Umûmî Kamu Ruhsatı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (Orası size bağlı.) şartları altında yeniden dağıtabilir veyâ değiştirebilirsiniz.\r\n\r\nBu izlence, kullanışlı olabileceği beklentisiyle dağıtılmıştır ancak bu izlencenin HİÇBİR GÜVENCESİ YOKTUR, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN demek istenilen güvencesi bile. Daha çok bilgi için GNU Umûmî Kamu Ruhsatı'na bakınız.\r\n\r\nBu izlenceyle birlikte GNU Umûmî Kamu Ruhsatı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ERROR_UPN "FEHLER: Der UPN (User Principal Name) konnte nicht abgerufen werden, da\nder aktuelle Benutzer kein Domänenbenutzer ist.\n"
IDS_ERROR_FQDN "FEHLER: Der FQDN (Fully Qualified Distinguished Name) konnte nicht\nabgerufen werden, da der aktuelle Benutzer kein Domänenbenutzer ist.\n"
IDS_ERROR_VALUEXPECTED "FEHLER: Ungültige Syntax. Wert für '/fo' erwartet.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_ERROR_VALUENOTALLOWED "FEHLER: Das angegebene Format (/FO) ist ungültig.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_ERROR_1TIMES "FEHLER: Ungültige Syntax. Option ""%s"" darf nicht mehr als '1' Mal verwendet werden.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_ERROR_INVALIDSYNTAX "FEHLER: Ungültige Syntax.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_ERROR_INVALIDARG "FEHLER: Argument/Option ungültig - '%s'.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_ERROR_NH_LIST "FEHLER: Option /NH kann nicht mit Format LIST verwendet werden.\nGeben Sie ""WHOAMI /?"" ein, um die Syntax anzuzeigen.\n"
IDS_HELP "BESCHREIBUNG:\n\
Ermittelt Benutzername, Gruppen und Berechtigungen für den aktuellen Benutzer auf dem lokalen System.\n\
Ohne Parameterangabe werden die aktuelle Domäne und Benutzername angezeigt.\n\
\n\
Gültige Ausgabeformate für den '/fo' Parameter sind 'CSV', 'LIST' und 'TABLE'.\n\
'/nh' legt fest, dass der Spaltenheader nicht in der Ausgabe angezeigt wird. Standardmäßig werden diese in einer TABLE angezeigt.\n\
/* [!] important note from the programmer: the program tries to remove
the last ', ' after concatenating, so keep than in mind when translating.
you can test your translation of these attributes by using 'whoami /groups' */
IDS_ATTR_GROUP_MANDATORY "Grupo obligatorio, "
IDS_ATTR_GROUP_ENABLED_BY_DEFAULT "Habilitado de manera predeterminada, "
IDS_ATTR_GROUP_ENABLED "Grupo habilitado, "
IDS_ATTR_GROUP_OWNER "Propietario de grupo, "
IDS_UNKNOWN_DESCRIPTION "¿?"
IDS_STATE_ENABLED "Habilitada"
IDS_STATE_DISABLED "Deshabilitado"
IDS_ERROR_UPN "ERROR: no se puede obtener el nombre principal de usuario (UPN) porque el\nusuario que ha iniciado sesión no es un usuario de dominio.\n"
IDS_ERROR_FQDN "ERROR: no se puede obtener el nombre distintivo completo (FQDN) porque el usuario\nque ha iniciado sesión no es un usuario de dominio.\n"
IDS_ERROR_VALUEXPECTED "ERROR: Sintaxis no válida. Se esperaba un valor para ""/fo"".\nEscriba ""WHOAMI /?"" para su uso.\n"
IDS_ERROR_VALUENOTALLOWED "ERROR: Sintaxis no válida. El valor ""%s"" no está permitido para la opción ""/fo"".\nEscriba ""WHOAMI /?"" para su uso.\n"
IDS_ERROR_1TIMES "ERROR: Sintaxis no válida. La opción ""%s"" no está permitida más de ""1"" veces.\nEscriba ""WHOAMI /?"" para su uso.\n"
IDS_ERROR_INVALIDSYNTAX "ERROR: sintaxis no válida.\nEscriba ""WHOAMI /?"" para obtener detalles de uso.\n"
IDS_ERROR_INVALIDARG "ERROR: Argumento u opción no válido - ""%s"".\nEscriba ""WHOAMI /?"" para su uso.\n"
IDS_ERROR_NH_LIST "ERROR: no se puede usar el modificador /NH con el formato LIST.\nEscriba ""WHOAMI /?"" para obtener detalles de uso.\n"
IDS_HELP "DESCRIPCIÓN:\n\
Muestra información sobre el usuario local, sus privilegios y grupos.\n\
Si no se añaden argumentos se mostrará el usuario y dominio actual.\n\
\n\
Los formatos disponibles para '/fo' son 'csv', 'list' y 'table'.\n\
Por defecto los datos se muestran en una tabla (opción 'table').\n\
Puedes utilizar '/nh' para ocultar los encabezados. \n\
/* [!] important note from the programmer: the program tries to remove
the last ', ' after concatenating, so keep than in mind when translating.
you can test your translation of these attributes by using 'whoami /groups' */
IDS_ATTR_GROUP_MANDATORY "Groupe obligatoire, "
IDS_ATTR_GROUP_ENABLED_BY_DEFAULT "Activé par défaut, "
IDS_ATTR_GROUP_ENABLED "Groupe activé, "
IDS_ATTR_GROUP_OWNER "Propriétaire du groupe, "
IDS_UNKNOWN_DESCRIPTION "???"
IDS_STATE_ENABLED "Activé"
IDS_STATE_DISABLED "Désactivé"
IDS_ERROR_UPN "Erreur : impossible de récupérer le nom d'utilisateur principal (UPN) étant donné que l'utilisateur actuel\nn'est pas un utilisateur du domaine.\n"
IDS_ERROR_FQDN "Errur : impossible de récupérer Fully Qualified Distinguished Name (FQDN) as the current\nlogged-on user is not a domain user.\n"
IDS_ERROR_VALUEXPECTED "Erreur : syntaxe incorrecte. Une valeur est attendue pour '/fo'.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_ERROR_VALUENOTALLOWED "Erreur : syntaxe incorrecte. La valeur '%s' n'est pas autorisée pour l'option '/fo'.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_ERROR_1TIMES "Erreur : syntaxe incorrecte. L'option '%s' n'est pas autorisée plus de '1' fois.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_ERROR_INVALIDSYNTAX "Erreur : syntaxe incorrecte.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_ERROR_INVALIDARG "Erreur : Argument/option non valide - '%s'.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_ERROR_NH_LIST "Erreur : l'argument /NH ne peut pas être utilisé avec le format LIST.\nTapez ""WHOAMI /?"" pour l'aide.\n"
IDS_HELP "DESCRIPTION:\n\
Affiche les informations sur l'utilisateur, les groupes et les privilèges pour l'utilisateur actuellement connecté.\n\
Si aucun argument n'est fourni, affiche le domaine et le nom d'utilisateur en cours d'usage.\n\
\n\
Les formats de sortie disponibles pour l'option '/fo' sont 'csv', 'list' et 'table'.\n\
Utilisez '/nh' pour cacher les entêtes. Par défaut, les données sont affichées dans un tableau.\n\
IDS_ERROR_UPN "EROARE: Nu se poate obține Numele Principal al Utilizatorului (UPN) deoarece\n utilizatorul actualmente autentificat nu este un un utilizator de domeniu.\n"
IDS_ERROR_FQDN "EROARE: Nu se poate obține Numele Complet Distinctiv Calificat (FQDN) deoarece\nutilizatorul actualmente autentificat nu este un un utilizator de domeniu.\n"
IDS_ERROR_VALUEXPECTED "EROARE: Sintaxă eronată. Este așteptată o valoare pentru «/fo».\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_ERROR_VALUENOTALLOWED "EROARE: Sintaxă eronată. Valoarea «%s» nu este permisă pentru opțiunea «/fo».\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_ERROR_1TIMES "EROARE: Sintaxă eronată. Utilizarea opțiunii «%s» nu este permisă mai mult de o\nsingură dată.\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_ERROR_INVALIDSYNTAX "EROARE: Sintaxă eronată.\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_ERROR_INVALIDARG "EROARE: Argument/opțiune eronat(ă) - «%s».\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_ERROR_NH_LIST "EROARE: Opțiunea /NH nu poate fi utilizată în formatul LIST.\nTastați ""WHOAMI /?"" pentru informații de utilizare.\n"
IDS_HELP "DESCRIERE:\n\
Afișează informațiile de utilizator, de grup, și de privilegii pentru un\n\
utilizator autentificat local. Dacă nu sunt furnizate argumente, se vor afișa\n\
numele și domeniul utilizatorului curent.\n\
\n\
Formatele disponibile pentru opțiunea «/fo» sunt «csv», «list», și «table».\n\
Argumentul «/nh» ascunde anteturile. Datele sunt implicit afișate tabelar.\n\
/* Russian language resource file by Kudratov Olimjon (olim98@bk.ru) */
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
IDS_USER_HEADER "Сведения о пользователе"
IDS_GROU_HEADER "Сведения о группах"
IDS_PRIV_HEADER "Сведения о привилегиях"
IDS_COL_USER_NAME "Пользователь"
IDS_COL_GROUP_NAME "Группа"
IDS_COL_TYPE "Тип"
IDS_COL_SID "SID"
IDS_COL_ATTRIB "Атрибуты"
IDS_COL_PRIV_NAME "Имя привилегии"
IDS_COL_DESCRIPTION "Описание"
IDS_COL_STATE "Состояние"
IDS_TP_WELL_KNOWN_GROUP "Хорошо известная группа"
IDS_TP_ALIAS "Псевдоним"
IDS_TP_LABEL "Метка"
/* [!] important note from the programmer: the program tries to remove
the last ', ' after concatenating, so keep than in mind when translating.
you can test your translation of these attributes by using 'whoami /groups' */
IDS_ATTR_GROUP_MANDATORY "Обязательная группа, "
IDS_ATTR_GROUP_ENABLED_BY_DEFAULT "Включена по умолчанию, "
IDS_ATTR_GROUP_ENABLED "Включенная группа, "
IDS_ATTR_GROUP_OWNER "Владелец группы, "
IDS_UNKNOWN_DESCRIPTION "???"
IDS_STATE_ENABLED "Включен"
IDS_STATE_DISABLED "Отключен"
IDS_ERROR_UPN "ОШИБКА: Не удается получить имя участника-пользователя (UPN), поскольку текущий\nвошедший пользователь не является пользователем домена.\n"
IDS_ERROR_FQDN "ОШИБКА: Не удается получить полное доменное имя (FQDN), поскольку текущий\nвошедший пользователь не является пользователем домена.\n"
IDS_ERROR_VALUEXPECTED "ОШИБКА: Указан недопустимый формат (/FO).\nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_ERROR_VALUENOTALLOWED "ОШИБКА: Неверный синтаксис. Значение '%s' запрещено для параметра '/fo'.\nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_ERROR_1TIMES "ОШИБКА: Неверный синтаксис. Запрещено использовать параметр '%s' более '1' раз(а).\nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_ERROR_INVALIDSYNTAX "ОШИБКА: Синтаксическая ошибка. \nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_ERROR_INVALIDARG "ОШИБКА: Неправильный параметр или аргумент - '%s'.\nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_ERROR_NH_LIST "ОШИБКА: Параметр /NH нельзя использовать с форматом LIST.\nВведите ""WHOAMI /?"" для получения справки по использованию.\n"
IDS_HELP "Описание:\n\
Отображает информацию об пользователе, группе и привилегиях для локально вошедших пользователей.\n\
Если не указано аргументов, то отображает текущий домен и текущего пользователя (домен/пользователь).\n\
\n\
Доступные форматы для параметра '/fo' - 'csv', 'list' и 'table'.\n\
Используйте '/nh' чтобы скрыть заголовки. По умолчанию данные отображаются в таблице.\n\
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "Este programa es software libre; puedes redistribuirlo y/o modificarlo bajo los términos de la GNU General Public License tal y como fueron publicados por la Free Software Foundation; ya sea la versión 2 de la Licencia, o (bajo tu discreción) cualquier versión posterior.\r\n\r\nEste programa se distribuye con el fin de ser útil, pero viene SIN NINGUNA GARANTÍA; sin tan siquiera la garantía implícita de COMERCIALIZACIÓN o la de IDONEIDAD PARA UN PROPÓSITO CONCRETO. Para más información lee la GNU General Public License.\r\n\r\nDeberías de haber recibido una copia de la GNU General Public License con el programa; si no, puedes escribir a la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 EE.UU."
END
STRINGTABLE
@@ -72,17 +73,17 @@ END
/* Hints */
STRINGTABLE
BEGIN
IDS_APPNAME "Gestor de Dispositivos de ReactOS"
IDS_APPNAME "Administrador de dispositivos de ReactOS"
IDS_HINT_BLANK " "
IDS_HINT_EXIT " Cerrar el programa."
IDS_HINT_EXIT " Cierra el programa."
IDS_HINT_REFRESH " Actualizar la lista de servicios."
IDS_HINT_PROP " Abre la pestaña de propiedades de la selección actual."
IDS_HINT_HELP " Mostrar la ventana de ayuda."
IDS_HINT_ABOUT " Acerca del Gestor de Dispositivos de ReactOS."
IDS_HINT_ABOUT " Acerca del Administrador de dispositivos de ReactOS."
IDS_HINT_SYS_RESTORE " Devuelve esta ventana al tamaño normal."
IDS_HINT_SYS_MOVE " Mueve esta ventana."
IDS_HINT_SYS_SIZE " Redimensiona esta ventana."
IDS_HINT_SYS_MINIMIZE " Colapsa esta ventana a un icono."
IDS_HINT_SYS_MAXIMIZE " Expande esta ventana hasta llenar esta pantalla."
IDS_HINT_SYS_CLOSE " Cerrar esta ventana."
IDS_HINT_SYS_MINIMIZE " Contrae esta ventana en un icono."
IDS_HINT_SYS_MAXIMIZE " Expande esta ventana hasta ocupar la pantalla."
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmî olmayan çevirisidir. Çeviri metniyle özgün metin arasında ayrım olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu izlence özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Umûmî Kamu Ruhsatı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (Orası size bağlı.) koşulları altında yeniden dağıtabilir veyâ değiştirebilirsiniz.\r\n\r\nBu izlence, kullanışlı olabileceği beklentisiyle dağıtılmıştır ancak bu izlencenin HİÇBİR GÜVENCESİ YOKTUR, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN demek istenilen güvencesi bile. Daha çok bilgi için GNU Umûmî Kamu Ruhsatı'na bakınız.\r\n\r\nBu izlenceyle birlikte GNU Umûmî Kamu Ruhsatı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmî olmayan çevirisidir. Çeviri metniyle özgün metin arasında ayrım olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu izlence özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Umûmî Kamu Ruhsatı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (Orası size bağlı.) şartları altında yeniden dağıtabilir veyâ değiştirebilirsiniz.\r\n\r\nBu izlence, kullanışlı olabileceği beklentisiyle dağıtılmıştır ancak bu izlencenin HİÇBİR GÜVENCESİ YOKTUR, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN demek istenilen güvencesi bile. Daha çok bilgi için GNU Umûmî Kamu Ruhsatı'na bakınız.\r\n\r\nBu izlenceyle birlikte GNU Umûmî Kamu Ruhsatı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
END
STRINGTABLE
@@ -73,13 +73,13 @@ BEGIN
IDS_HINT_BLANK " "
IDS_HINT_EXIT " İzlenceden çıkar."
IDS_HINT_REFRESH " Hizmet dizelgesini yeniler."
IDS_HINT_PROP " Seçilen için husûsiyetler penceresini açar."
IDS_HINT_HELP " Yardım penceresini açar."
IDS_HINT_PROP " Şimdiki seçilen için husûsiyet penceresini açar."
IDS_HINT_HELP " Yardım penceresini görüntüler."
IDS_HINT_ABOUT " Aygıt Yöneticisi üzerine."
IDS_HINT_SYS_RESTORE " Bu pencereyi eski boyutlarına döndürür."
IDS_HINT_SYS_RESTORE " Bu pencereyi düzgülük boyutlarına döndürür."
IDS_HINT_SYS_MOVE " Bu pencereyi devindirir."
IDS_HINT_SYS_SIZE " Bu pencerenin boyutlarını değiştirir."
IDS_HINT_SYS_MINIMIZE " Bu pencereyi simge durumuna küçültür."
IDS_HINT_SYS_SIZE " Bu pencereyi yeniden boyutlandırır."
IDS_HINT_SYS_MINIMIZE " Bu pencereyi bir simgeye küçültür."
IDS_HINT_SYS_MAXIMIZE " Bu pencereyi, bu görüntülüğü kaplatana dek genişletir."
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "Dieses Programm ist kostenlos; Sie k<EFBFBD>nnen es frei verteilen mit od. ohne <EFBFBD>nderungen unter der GNU Lesser General Public License, wie es von der Free Software Foundation ver<EFBFBD>ffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine sp<EFBFBD>tere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License, wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
END
STRINGTABLE
STRINGTABLE DISCARDABLE
BEGIN
IDS_TOOLTIP_PROP "Eigenschaften"
IDS_TOOLTIP_REFRESH "Aktualisieren"
@@ -58,20 +58,20 @@ BEGIN
END
/* Hints */
STRINGTABLE
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME "ReactOS Ger<EFBFBD>te-Manager"
IDS_APPNAME "ReactOS Geräte-Manager"
IDS_HINT_BLANK " "
IDS_HINT_EXIT " Das Programm beenden."
IDS_HINT_REFRESH " Die Service-Liste aktualisieren."
IDS_HINT_PROP " Eigenschaften-Seite f<EFBFBD>r die aktuelle Auswahl anzeigen."
IDS_HINT_PROP " Eigenschaften-Seite für die aktuelle Auswahl anzeigen."
IDS_HINT_SYS_RESTORE " Dieses Fenster auf normale Gr<EFBFBD><EFBFBD>e wiederherstellen."
IDS_HINT_SYS_RESTORE " Dieses Fenster auf normale Größe wiederherstellen."
IDS_HINT_SYS_MOVE " Dieses Fenster verschieben."
IDS_HINT_SYS_SIZE " Gr<EFBFBD><EFBFBD>e dieses Fensters <EFBFBD>ndern."
IDS_HINT_SYS_SIZE " Größe dieses Fensters ändern."
IDS_HINT_SYS_MINIMIZE " Dieses Fenster zu einem Symbol verkleinern."
IDS_HINT_SYS_MAXIMIZE " Dieses Fenster auf Bildschirmgr<EFBFBD><EFBFBD>e vergr<EFBFBD><EFBFBD>ern."
IDS_HINT_SYS_CLOSE " Dieses Fenster schlie<EFBFBD>en."
IDS_HINT_SYS_MAXIMIZE " Dieses Fenster auf Bildschirmgröße vergrößern."
IDS_HINT_SYS_CLOSE " Dieses Fenster schließen."
END
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.