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
40957d02
Commit
40957d02
authored
Sep 12, 2011
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winex11: Create a separate graphics driver for XRender.
parent
faa23d2a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
195 additions
and
9 deletions
+195
-9
init.c
dlls/winex11.drv/init.c
+7
-3
x11drv.h
dlls/winex11.drv/x11drv.h
+1
-1
xrender.c
dlls/winex11.drv/xrender.c
+187
-5
No files found.
dlls/winex11.drv/init.c
View file @
40957d02
...
...
@@ -52,6 +52,7 @@ static const WCHAR dpi_key_name[] = {'S','o','f','t','w','a','r','e','\\','F','o
static
const
WCHAR
dpi_value_name
[]
=
{
'L'
,
'o'
,
'g'
,
'P'
,
'i'
,
'x'
,
'e'
,
'l'
,
's'
,
'\0'
};
static
const
struct
gdi_dc_funcs
x11drv_funcs
;
static
const
struct
gdi_dc_funcs
*
xrender_funcs
;
/******************************************************************************
* get_dpi
...
...
@@ -88,7 +89,7 @@ static void device_init(void)
device_init_done
=
TRUE
;
/* Initialize XRender */
X11DRV_XRender_Init
();
xrender_funcs
=
X11DRV_XRender_Init
();
/* Init Xcursor */
X11DRV_Xcursor_Init
();
...
...
@@ -157,7 +158,8 @@ static BOOL X11DRV_CreateDC( PHYSDEV *pdev, LPCWSTR driver, LPCWSTR device,
SetRect
(
&
physDev
->
dc_rect
,
0
,
0
,
virtual_screen_rect
.
right
-
virtual_screen_rect
.
left
,
virtual_screen_rect
.
bottom
-
virtual_screen_rect
.
top
);
push_dc_driver
(
pdev
,
&
physDev
->
dev
,
&
x11drv_funcs
);
return
TRUE
;
if
(
!
xrender_funcs
)
return
TRUE
;
return
xrender_funcs
->
pCreateDC
(
pdev
,
driver
,
device
,
output
,
initData
);
}
...
...
@@ -178,7 +180,9 @@ static BOOL X11DRV_CreateCompatibleDC( PHYSDEV orig, PHYSDEV *pdev )
SetRect
(
&
physDev
->
drawable_rect
,
0
,
0
,
1
,
1
);
physDev
->
dc_rect
=
physDev
->
drawable_rect
;
push_dc_driver
(
pdev
,
&
physDev
->
dev
,
&
x11drv_funcs
);
return
TRUE
;
if
(
orig
)
return
TRUE
;
/* we already went through Xrender if we have an orig device */
if
(
!
xrender_funcs
)
return
TRUE
;
return
xrender_funcs
->
pCreateCompatibleDC
(
NULL
,
pdev
);
}
...
...
dlls/winex11.drv/x11drv.h
View file @
40957d02
...
...
@@ -301,7 +301,7 @@ extern int client_side_with_render DECLSPEC_HIDDEN;
extern
int
client_side_antialias_with_core
DECLSPEC_HIDDEN
;
extern
int
client_side_antialias_with_render
DECLSPEC_HIDDEN
;
extern
int
using_client_side_fonts
DECLSPEC_HIDDEN
;
extern
void
X11DRV_XRender_Init
(
void
)
DECLSPEC_HIDDEN
;
extern
const
struct
gdi_dc_funcs
*
X11DRV_XRender_Init
(
void
)
DECLSPEC_HIDDEN
;
extern
void
X11DRV_XRender_Finalize
(
void
)
DECLSPEC_HIDDEN
;
extern
BOOL
X11DRV_XRender_SelectFont
(
X11DRV_PDEVICE
*
,
HFONT
)
DECLSPEC_HIDDEN
;
extern
void
X11DRV_XRender_SetDeviceClipping
(
X11DRV_PDEVICE
*
physDev
,
const
RGNDATA
*
data
)
DECLSPEC_HIDDEN
;
...
...
dlls/winex11.drv/xrender.c
View file @
40957d02
This diff is collapsed.
Click to expand it.
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