Commit graph

29 commits

Author SHA1 Message Date
Jérôme Gardou 88c9e7c6e8 Sync with trunk (r47116), hopefully without breaking anything.
svn path=/branches/reactos-yarotows/; revision=47117
2010-05-07 07:41:13 +00:00
Jérôme Gardou 56da974d0c [WIN32K]
- Assign a correct pdevmode to the pdevobj when creating it.

svn path=/branches/reactos-yarotows/; revision=47114
2010-05-06 11:46:48 +00:00
Jérôme Gardou 1b5e323072 [GDI32]
- Use device string when given one in IntCreateDIC
[WIN32K]
  - Exchange pdevmode when excahnging PDEVOBJ pointers
  - Update Globals gdi devcaps when switching mode if ppdev is the primary surface

svn path=/branches/reactos-yarotows/; revision=47044
2010-04-26 21:49:09 +00:00
Timo Kreuzer 2250e691f1 [WIN32K]
- move IntEngMovePointer code into GreMovePointer
- Delete the mouse cursor before mode switch, to force setting a new one after a mode switch. Fixes cursor artifacts after mode change.
- Update TODO.txt

svn path=/branches/reactos-yarotows/; revision=46976
2010-04-21 13:44:06 +00:00
Timo Kreuzer 634c608726 [WIN32K]
- Remove an ASSERT in DC_Cleanup
- Improve code in PDEVOBJ_vSwitchPdev (code shamelessly stolen from Jerome's earlier commit)
- Fix up GDIINFO in PDEVOBJ_bEnablePDEV instead of EngpCreatePDEV
- Update TODO.txt

svn path=/branches/reactos-yarotows/; revision=46975
2010-04-21 12:21:53 +00:00
Jérôme Gardou 0988b6c773 Grotesque mistake...
svn path=/branches/reactos-yarotows/; revision=46943
2010-04-19 16:04:59 +00:00
Jérôme Gardou 14be9f22bd [WIN32K]
- HW accelerated StretchBlt when possible in EngAlphaBlend

svn path=/branches/reactos-yarotows/; revision=46941
2010-04-19 15:15:17 +00:00
Jérôme Gardou 82ad88f1ab [WIN32K]
- Get rid of IntEngBitBltEx, it's Exness isn't needed anymore

svn path=/branches/reactos-yarotows/; revision=46940
2010-04-19 15:08:03 +00:00
Jérôme Gardou 75108218f7 [WIN32K]
- move mouse related ppdev locking to Gre* functions
Spotted by Physicus

svn path=/branches/reactos-yarotows/; revision=46939
2010-04-19 14:17:26 +00:00
Jérôme Gardou e918eb7c29 [WIN32K]
- Update direct DCs surface before blit if needed
  - call directly ppdev in MouseSafetyOnDraw{Start,End}
  - use directly the PDEVOBJ surface in mouse operations
  - Add some mouse-related sanity checks

svn path=/branches/reactos-yarotows/; revision=46937
2010-04-19 13:52:37 +00:00
Jérôme Gardou 083f2b4f4a [WIN32K]
- Finally get rid of SURFACE::BitsLock

svn path=/branches/reactos-yarotows/; revision=46935
2010-04-19 00:56:25 +00:00
Jérôme Gardou a98902ef25 [WIN32K]
- Do not draw mouse when it has intentionnally been put away.
Fixes some mouse-related graphical glitches

svn path=/branches/reactos-yarotows/; revision=46933
2010-04-19 00:11:30 +00:00
Jérôme Gardou 4cc8e60093 [WIN32K]
- The last DC_vPrepareForBlit/DC_vFinishBlit commit

svn path=/branches/reactos-yarotows/; revision=46925
2010-04-18 17:33:03 +00:00
Jérôme Gardou 11131896db [WIN32K]
- More DC_vPrepareDCsForBlit/DC_vFinishBlit with assorted MouseSafetyOnDrawEnd removals

svn path=/branches/reactos-yarotows/; revision=46923
2010-04-18 17:19:36 +00:00
Jérôme Gardou 53222b46da [WIN32K]
- Use DC_vPrepareForBlit, DC_vFinishBlit in GreTextOutputW
  - So we can get rid of MouseSafetyOnDraw{Start,End} in IntEngMaskBlt

svn path=/branches/reactos-yarotows/; revision=46911
2010-04-17 22:48:44 +00:00
Jérôme Gardou d2655f9e72 [WIN32K]
- Now we welcome GreStretchBltMask into the fabulous world of GDIOBJ_LockMultipleObjects, DC_vPrepareDCsForBlit and DC_vFinishBlit
  - With the assorted MouseSafetyOnDraw{Start,End} removal

svn path=/branches/reactos-yarotows/; revision=46908
2010-04-17 20:27:32 +00:00
Jérôme Gardou 663acbc064 [WIN32K]
- For now, limit DC_UnlockDc to a simple GDIOBJ_LockObj
  - More GDIOBJ_LockMultipleObj, DC_vPrepareDCsForBlit and DC_vFinishBlit fun

svn path=/branches/reactos-yarotows/; revision=46906
2010-04-17 15:24:10 +00:00
Jérôme Gardou 42073050d4 [WIN32K]
-Use GDIOBJ_LockMultipleObjs, DC_vPrepareDCsForBlit and DC_vFinishBlit in NtGdiTransparentBlt
  -Get rid of MouseSafetyOnDraw{End,Start} in IntEngTransparentBlt

svn path=/branches/reactos-yarotows/; revision=46905
2010-04-17 14:46:05 +00:00
Jérôme Gardou 0cdfd4399d [WIN32K]
- Introduce DC_vPrepareDCsForBlit and DC_vFinishBlit and use them in NtGdiAlphaBlend
  - Get rid of now unnecessary call for MouseSafetyOnDraw{Start,End} in IntEngAlphaBlend
  - Yet Another Rewrite of GDIOBJ_LockMultipleObjs :-/ and use it in NtGdiAlphaBlend

svn path=/branches/reactos-yarotows/; revision=46902
2010-04-17 14:20:48 +00:00
Jérôme Gardou 47cbf8f46d [WIN32K]
Partially revert 46733
  Silence some debug output

svn path=/branches/reactos-yarotows/; revision=46734
2010-04-05 11:53:36 +00:00
Jérôme Gardou 243eeb574a [WIN32K]
-Make direct DC release shared lock on surface each time they're unlocked.
  -Now they don't hold it unless they're locked themselves.
  -Do not create the device surface when switching modes, this is inconsistent with the PDEVOBJ creation, which does not.

*No more "you are freeing a surface which is still hold" debug message when switching modes*

svn path=/branches/reactos-yarotows/; revision=46733
2010-04-05 10:58:43 +00:00
Jérôme Gardou 6638a5b899 Sync with trunk (aka 'I want my virtualbox mouse integration too')
svn path=/branches/reactos-yarotows/; revision=46732
2010-04-05 09:59:21 +00:00
Timo Kreuzer 705ea2a9c3 [WIN32K]
- EngAcquireSemaphoreShared: update dwEngAcquireCount
- DC_LockDc/DC_UnlockDc: Acquire PDEV lock only for direct DCs, in that case also update the pSurface pointer
- When copying DC states, copy the surface only for memory dcs
- after switching the mode, update system metrics and redraw the desktop window.
- Remove testdraw code.

svn path=/branches/reactos-yarotows/; revision=46658
2010-04-01 22:36:40 +00:00
Timo Kreuzer ac6192b1b0 [WIN32K]
Just dereference the PDEV's surface and let the driver free it.

svn path=/branches/reactos-yarotows/; revision=46638
2010-04-01 05:44:09 +00:00
Jérôme Gardou 6b19e6defc [WIN32K]
Free the surface instead of unlocking it

svn path=/branches/reactos-yarotows/; revision=46573
2010-03-29 19:50:49 +00:00
Jérôme Gardou 2bfb2d80b4 [WIN32K]
Implement releasing PDEVOBJs

svn path=/branches/reactos-yarotows/; revision=46572
2010-03-29 18:56:02 +00:00
Jérôme Gardou c16ad873a6 sync with trunk (r46275)
svn path=/branches/reactos-yarotows/; revision=46279
2010-03-19 21:09:21 +00:00
Timo Kreuzer 74ef03da5c Commit the stuff. Lots of changes. I'll write a proper list of changes when it's done.
svn path=/branches/reactos-yarotows/; revision=45355
2010-01-30 21:12:42 +00:00
Timo Kreuzer 6afbc8f483 Hopefully create a branch and not destroy the svn repository.
svn path=/branches/reactos-yarotows/; revision=45219
2010-01-23 23:25:04 +00:00