Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
7534d47b
Commit
7534d47b
authored
Dec 06, 2011
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
gdi32: Pass the total visible region in the SetDeviceClipping driver entry point.
parent
5a1a6e93
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
14 additions
and
13 deletions
+14
-13
clipping.c
dlls/gdi32/clipping.c
+1
-1
dc.c
dlls/gdi32/dibdrv/dc.c
+5
-4
driver.c
dlls/gdi32/driver.c
+1
-1
graphics.c
dlls/winex11.drv/graphics.c
+2
-2
x11drv.h
dlls/winex11.drv/x11drv.h
+1
-1
xrender.c
dlls/winex11.drv/xrender.c
+2
-2
gdi_driver.h
include/wine/gdi_driver.h
+2
-2
No files found.
dlls/gdi32/clipping.c
View file @
7534d47b
...
...
@@ -101,7 +101,7 @@ void CLIPPING_UpdateGCRegion( DC * dc )
if
(
dc
->
region
)
DeleteObject
(
dc
->
region
);
dc
->
region
=
0
;
}
physdev
->
funcs
->
pSetDeviceClipping
(
physdev
,
dc
->
hVisRgn
,
clip_rg
n
);
physdev
->
funcs
->
pSetDeviceClipping
(
physdev
,
dc
->
regio
n
);
}
/***********************************************************************
...
...
dlls/gdi32/dibdrv/dc.c
View file @
7534d47b
...
...
@@ -475,14 +475,15 @@ static INT dibdrv_SetBkMode( PHYSDEV dev, INT mode )
/***********************************************************************
* dibdrv_SetDeviceClipping
*/
static
void
dibdrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
vis_rgn
,
HRGN
clip_
rgn
)
static
void
dibdrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
rgn
)
{
PHYSDEV
next
=
GET_NEXT_PHYSDEV
(
dev
,
pSetDeviceClipping
);
dibdrv_physdev
*
pdev
=
get_dibdrv_pdev
(
dev
);
TRACE
(
"(%p, %p
, %p)
\n
"
,
dev
,
vis_rgn
,
clip_
rgn
);
TRACE
(
"(%p, %p
)
\n
"
,
dev
,
rgn
);
CombineRgn
(
pdev
->
clip
,
vis_rgn
,
clip_rgn
,
clip_rgn
?
RGN_AND
:
RGN_COPY
);
return
next
->
funcs
->
pSetDeviceClipping
(
next
,
vis_rgn
,
clip_rgn
);
SetRectRgn
(
pdev
->
clip
,
0
,
0
,
pdev
->
dib
.
width
,
pdev
->
dib
.
height
);
if
(
rgn
)
CombineRgn
(
pdev
->
clip
,
pdev
->
clip
,
rgn
,
RGN_AND
);
return
next
->
funcs
->
pSetDeviceClipping
(
next
,
rgn
);
}
/***********************************************************************
...
...
dlls/gdi32/driver.c
View file @
7534d47b
...
...
@@ -582,7 +582,7 @@ static UINT nulldrv_SetDIBColorTable( PHYSDEV dev, UINT pos, UINT count, const R
return
0
;
}
static
void
nulldrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
vis_rgn
,
HRGN
clip_
rgn
)
static
void
nulldrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
rgn
)
{
}
...
...
dlls/winex11.drv/graphics.c
View file @
7534d47b
...
...
@@ -239,12 +239,12 @@ void restore_clipping_region( X11DRV_PDEVICE *dev, RGNDATA *data )
/***********************************************************************
* X11DRV_SetDeviceClipping
*/
void
X11DRV_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
vis_rgn
,
HRGN
clip_
rgn
)
void
X11DRV_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
rgn
)
{
RGNDATA
*
data
;
X11DRV_PDEVICE
*
physDev
=
get_x11drv_dev
(
dev
);
CombineRgn
(
physDev
->
region
,
vis_rgn
,
clip_rgn
,
clip_rgn
?
RGN_AND
:
RGN_COPY
);
CombineRgn
(
physDev
->
region
,
rgn
,
0
,
RGN_COPY
);
if
((
data
=
X11DRV_GetRegionData
(
physDev
->
region
,
0
)))
update_x11_clipping
(
physDev
,
data
);
HeapFree
(
GetProcessHeap
(),
0
,
data
);
...
...
dlls/winex11.drv/x11drv.h
View file @
7534d47b
...
...
@@ -230,7 +230,7 @@ extern HPEN X11DRV_SelectPen( PHYSDEV dev, HPEN hpen ) DECLSPEC_HIDDEN;
extern
COLORREF
X11DRV_SetBkColor
(
PHYSDEV
dev
,
COLORREF
color
)
DECLSPEC_HIDDEN
;
extern
COLORREF
X11DRV_SetDCBrushColor
(
PHYSDEV
dev
,
COLORREF
crColor
)
DECLSPEC_HIDDEN
;
extern
COLORREF
X11DRV_SetDCPenColor
(
PHYSDEV
dev
,
COLORREF
crColor
)
DECLSPEC_HIDDEN
;
extern
void
X11DRV_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
vis_rgn
,
HRGN
clip_
rgn
)
DECLSPEC_HIDDEN
;
extern
void
X11DRV_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
rgn
)
DECLSPEC_HIDDEN
;
extern
BOOL
X11DRV_SetDeviceGammaRamp
(
PHYSDEV
dev
,
LPVOID
ramp
)
DECLSPEC_HIDDEN
;
extern
UINT
X11DRV_SetDIBColorTable
(
PHYSDEV
dev
,
UINT
start
,
UINT
count
,
const
RGBQUAD
*
colors
)
DECLSPEC_HIDDEN
;
extern
COLORREF
X11DRV_SetPixel
(
PHYSDEV
dev
,
INT
x
,
INT
y
,
COLORREF
color
)
DECLSPEC_HIDDEN
;
...
...
dlls/winex11.drv/xrender.c
View file @
7534d47b
...
...
@@ -1337,14 +1337,14 @@ static DWORD xrenderdrv_GetImage( PHYSDEV dev, HBITMAP hbitmap, BITMAPINFO *info
/***********************************************************************
* xrenderdrv_SetDeviceClipping
*/
static
void
xrenderdrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
vis_rgn
,
HRGN
clip_
rgn
)
static
void
xrenderdrv_SetDeviceClipping
(
PHYSDEV
dev
,
HRGN
rgn
)
{
struct
xrender_physdev
*
physdev
=
get_xrender_dev
(
dev
);
physdev
->
update_clip
=
TRUE
;
dev
=
GET_NEXT_PHYSDEV
(
dev
,
pSetDeviceClipping
);
dev
->
funcs
->
pSetDeviceClipping
(
dev
,
vis_rgn
,
clip_
rgn
);
dev
->
funcs
->
pSetDeviceClipping
(
dev
,
rgn
);
}
...
...
include/wine/gdi_driver.h
View file @
7534d47b
...
...
@@ -159,7 +159,7 @@ struct gdi_dc_funcs
COLORREF
(
*
pSetDCPenColor
)(
PHYSDEV
,
COLORREF
);
UINT
(
*
pSetDIBColorTable
)(
PHYSDEV
,
UINT
,
UINT
,
const
RGBQUAD
*
);
INT
(
*
pSetDIBitsToDevice
)(
PHYSDEV
,
INT
,
INT
,
DWORD
,
DWORD
,
INT
,
INT
,
UINT
,
UINT
,
LPCVOID
,
BITMAPINFO
*
,
UINT
);
VOID
(
*
pSetDeviceClipping
)(
PHYSDEV
,
HRGN
,
HRGN
);
VOID
(
*
pSetDeviceClipping
)(
PHYSDEV
,
HRGN
);
BOOL
(
*
pSetDeviceGammaRamp
)(
PHYSDEV
,
LPVOID
);
DWORD
(
*
pSetLayout
)(
PHYSDEV
,
DWORD
);
INT
(
*
pSetMapMode
)(
PHYSDEV
,
INT
);
...
...
@@ -205,7 +205,7 @@ struct gdi_dc_funcs
};
/* increment this when you change the DC function table */
#define WINE_GDI_DRIVER_VERSION
19
#define WINE_GDI_DRIVER_VERSION
20
static
inline
PHYSDEV
get_physdev_entry_point
(
PHYSDEV
dev
,
size_t
offset
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment