Commit graph

56317 commits

Author SHA1 Message Date
David Quintana 7529c9897c [RSHELL]
* 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
2014-03-05 12:34:30 +00:00
David Quintana 42bdf3b30f [COMCTL32]
* 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
2014-03-05 11:48:55 +00:00
David Quintana 1cfa05918e [SHLWAPI]
* Fix the fix... better. Needs to be sent to Wine. Thanks Thomas.

svn path=/branches/shell-experiments/; revision=62422
2014-03-05 10:20:06 +00:00
David Quintana d77fcfc8c8 [SHLWAPI]
* Fix the right thing.

svn path=/branches/shell-experiments/; revision=62421
2014-03-05 09:48:32 +00:00
David Quintana 11e4273379 [SHLWAPI]
* 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
2014-03-05 09:12:40 +00:00
David Quintana d1e5c6a2b9 [RSHELL]
* 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
2014-03-03 17:55:43 +00:00
David Quintana d21bce9206 [NTUSER]
[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
2014-03-03 16:12:39 +00:00
David Quintana 7fe9315c7e [RSHELL]
* Improve logging in case of unexpected failures, and trace the creation of toolbar (menu) items.
CORE-7586

svn path=/branches/shell-experiments/; revision=62414
2014-03-03 16:11:47 +00:00
David Quintana 612d72cb58 [RSHELL]
* 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
2014-03-03 11:14:04 +00:00
David Quintana 9304a4e45f [RSHELL]
* 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
2014-03-03 10:19:35 +00:00
David Quintana c3b293c4b2 [RSHELL]
* 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
2014-03-02 19:35:13 +00:00
David Quintana 28bf05e265 [RSHELL]
* 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
2014-03-01 11:46:04 +00:00
David Quintana b35ff38428 [RSHELL]
* Improve hot-tracking behaviour.
CORE-7881

svn path=/branches/shell-experiments/; revision=62347
2014-02-27 11:56:28 +00:00
David Quintana 107ae8ee41 [RSHELL]
* 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
2014-02-26 14:05:55 +00:00
David Quintana 8b06cd6325 [EXPLORER-NEW]
* 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
2014-02-26 11:13:23 +00:00
David Quintana 58931088c3 [RSHELL]
* 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
2014-02-25 18:23:02 +00:00
David Quintana 53f74feb2d [RSHELL]
* CStartMenu: Now THESE are the right IDs. The previous ones were icon indices within the file.

svn path=/branches/shell-experiments/; revision=62329
2014-02-25 11:47:29 +00:00
David Quintana 5ee1aff4f5 [RSHELL]
* 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
2014-02-25 10:44:28 +00:00
David Quintana 2902b1cf0c [RSHELL]
* 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
2014-02-24 23:10:12 +00:00
David Quintana 9cf711a73f [RSHELL]
* CMenuBand: Fix menu colors.
CORE-7881

svn path=/branches/shell-experiments/; revision=62320
2014-02-24 13:05:24 +00:00
David Quintana b62a6757ee [RSHELL]
* Move some classes to separate files.
* Move class declarations to .h files.
CORE-7586

svn path=/branches/shell-experiments/; revision=62319
2014-02-24 11:59:34 +00:00
David Quintana 8c18269e39 [RSHELL]
* Undo a test change that shouldn't have reached the commit. ;P

svn path=/branches/shell-experiments/; revision=62318
2014-02-24 11:20:16 +00:00
David Quintana eee3377ec9 [RSHELL]
* 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
2014-02-24 11:07:16 +00:00
Amine Khaldi 56bf9b6dbd * Sync up to trunk HEAD (r62309).
svn path=/branches/shell-experiments/; revision=62310
2014-02-23 18:28:37 +00:00
David Quintana 9877002e5c [CMAKE]
* Actually do what I said.

svn path=/branches/shell-experiments/; revision=62309
2014-02-23 18:15:20 +00:00
David Quintana b6d033175c [CMAKE]
* 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
2014-02-23 18:13:43 +00:00
David Quintana 04a3726c09 [CMAKE]
* Take MSVC workaround from trunk.

[RSHELL]
* Fix GCC build.
* Add a couple error checks.

svn path=/branches/shell-experiments/; revision=62307
2014-02-23 16:44:54 +00:00
David Quintana d0f3e72c8e [RSHELL]
* 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
2014-02-23 15:02:02 +00:00
David Quintana dcbd65feca [RSHELL]
* CMenuDeskBar: Actually use the Popup flags to decide on the relative position of the submenus.
CORE-7886

svn path=/branches/shell-experiments/; revision=62296
2014-02-23 00:15:27 +00:00
David Quintana 905ab8ebba [RSHELL]
* 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
2014-02-22 22:59:28 +00:00
Amine Khaldi ddb3d908c9 * Sync up to trunk HEAD (r62285). Branch guys deserve the significant speedups too ;)
svn path=/branches/shell-experiments/; revision=62286
2014-02-22 10:31:26 +00:00
Hermès Bélusca-Maïto f71a826f2c [FONTVIEW]
Unescaped use of percent character in a format string causes percent glyph not to be displayed.
Patch by André Guibert de Bruet.
CORE-7934 #resolve #comment Fixed in revision 62281, thanks ;)

svn path=/trunk/; revision=62281
2014-02-21 15:49:06 +00:00
David Quintana 07467c9e06 [RSHELL]
* 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
2014-02-21 10:00:00 +00:00
Timo Kreuzer d996e6a34d [NTOSKRNL]
Improve some DPRINTs

svn path=/trunk/; revision=62276
2014-02-20 23:05:06 +00:00
Timo Kreuzer 9b07458c4d [NTOSKRNL]
Implement MmAdjustWorkingSetSize

svn path=/trunk/; revision=62275
2014-02-20 23:03:04 +00:00
Eric Kohl feedae2fff [MSGINA]
CORE-7559
Implement the shutdown dialog. Based on a patch by Lee Schroeder. Thank you very much!

svn path=/trunk/; revision=62274
2014-02-20 22:00:30 +00:00
Timo Kreuzer 9e44277466 [AFD]
Fix potentially uninitialized variable.

svn path=/trunk/; revision=62273
2014-02-20 21:47:02 +00:00
Timo Kreuzer ca142ab065 [AfD]
In AfdBindSocket, open a usermode handle and return that to the caller, instead of returning the kernel mode handle.

svn path=/trunk/; revision=62272
2014-02-20 21:41:33 +00:00
Timo Kreuzer 130b0bd77f [HOST_TOOLS]
Move pecoff.h from the tools roto dir to the include/host

svn path=/trunk/; revision=62271
2014-02-20 21:20:47 +00:00
Timo Kreuzer 6b2e326be9 [NTDLL_APITEST]
Add a few more tests for NtAllocateVirtualMemory

svn path=/trunk/; revision=62270
2014-02-20 21:19:16 +00:00
Timo Kreuzer 86d2e8f543 [DLLEXPORT_TEST]
Add a test that checks the ability to link to function and data exports with cdecl, stdcall and c++ mangled names, including forwarders. It just prints "done". Feel free to convert it into a proper rostests, if you think it's required.

svn path=/trunk/; revision=62269
2014-02-20 20:29:51 +00:00
Timo Kreuzer fe029c9c69 [PSEH2_TEST]
Add another test for non-volatile values. Note that PSEH does NOT work like real SEH here, but this is expected and can not be fixed without special compiler support. Do NEVER DO this kind of stuff inside SEH blocks! Use volatile variables in this case.

svn path=/trunk/; revision=62268
2014-02-20 20:20:26 +00:00
Hermès Bélusca-Maïto 6ca8f89b8b [KERNEL32]
Revert r62264.
Reason: all APIs set the last error when a CSR* call doesn't return STATUS_SUCCESS. If some winetests fail because of this, this is because we do not correctly do what's needed here (normally the TRUE or FALSE value is returned by the console server, and is not retrieved by a success or failure of a CSR call contrary to what's done here).

svn path=/trunk/; revision=62267
2014-02-20 20:17:53 +00:00
Thomas Faber 76d29a732a [CRT]
- Force the use of memory operands in bit test intrinsics. Bit offsets above 31 (or 63) can't behave correctly with registers (the constant case is fine because it ensures low offsets). Thanks to Timo Kreuzer and Alex Radocea.

svn path=/trunk/; revision=62266
2014-02-20 19:28:27 +00:00
Thomas Faber ef678077bf [KMTESTS]
- Disable Example test since it has intentional failures. Dedicated to Christoph

svn path=/trunk/; revision=62265
2014-02-20 19:26:24 +00:00
Christoph von Wittich 2dd48fec56 [kernel32]
don't set LastError in VerifyConsoleIoHandle

svn path=/trunk/; revision=62264
2014-02-20 19:15:54 +00:00
David Quintana 9f9be3f9bb [RSHELL]
* 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
2014-02-20 16:18:49 +00:00
David Quintana b1290e6ab0 [RSHELL]
* 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
2014-02-20 12:12:42 +00:00
Amine Khaldi 39d63d1624 [GETUNAME][TAPIUI]
* Add Albanian translation. By Ardit Dani, corrected by me.
CORE-7924 #resolve #comment Committed in r62261. Thanks !

svn path=/trunk/; revision=62261
2014-02-20 11:05:27 +00:00
Christoph von Wittich db6ca1c353 [kernel32]
sync TIME_CompTimeZoneID with wine 1.7.11

svn path=/trunk/; revision=62260
2014-02-19 21:01:25 +00:00