Commit Graph

59 Commits

Author SHA1 Message Date
Markus Mohrhard
7eb4c69218 remove all traces of old device code
Change-Id: I792749951f11e99504c708bf27bec56c2d98019e
Reviewed-on: https://gerrit.libreoffice.org/16331
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-06-17 12:46:26 +00:00
Markus Mohrhard
72dca3022d support multiple devices in the blacklist
Change-Id: Ief0118d0845009bd8fd9cb1c7d51b76c09cc23b5
Reviewed-on: https://gerrit.libreoffice.org/16329
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-06-17 12:45:10 +00:00
Markus Mohrhard
37ee25a7f4 first part for server based blacklist
We are now switching from ahrd coding the blacklist in the source code
to using a xml file. In a second step that xml file will be fetched from
a TDF server.

Change-Id: I1c67d366c77b2f4185bedaa552fa655cc8ddb047
Reviewed-on: https://gerrit.libreoffice.org/16327
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-06-17 12:43:43 +00:00
Markus Mohrhard
12b73697ed in general this seems to make more sense
Change-Id: I00dfbaa9971e3ee589672e51bca07e8eddfdc167
Reviewed-on: https://gerrit.libreoffice.org/16238
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-06-12 13:20:04 +00:00
Jan Holesovsky
b0cd381de1 rendercontext: Initialize X11SalVirtualDevice with appropriate SalGraphics.
Change-Id: I4230412ccc389b8ba6768229b569d7075e7ac466
2015-05-24 02:12:00 +02:00
Noel Grandin
b13fbd19b7 convert BMP_SCALE constant to scoped enum
Change-Id: Ibc9f88d2588c028cd71aa86c26d970a73025ef22
2015-05-06 09:01:30 +02:00
Michael Meeks
873b6d9d47 Use deleted function macro.
Change-Id: Id1c7efc5af7ba335466ff637eac637d7a6c41ed5
2015-05-03 22:35:10 +02:00
Michael Meeks
e774a6ffd0 Use shared_ptr for OpenGLPrograms, and hide its copy constructor.
Change-Id: Ia1352105acef1ededaf876a224ebc277121d6942
2015-04-23 14:45:52 +01:00
Noel Grandin
3e672693e3 loplugin:staticfunction
Change-Id: I909cf7e77f9d7194575636248196fda311fffdb6
2015-04-01 10:37:02 +02:00
Caolán McNamara
924b2923b8 V801: Decreased performance
Change-Id: I9e9a00acf9503980f0c6c7cd0a20378e5ca7390d
2015-03-09 20:56:26 +00:00
Michael Meeks
4530643175 tdf#89482 - return size of system virtual device resource at construction.
Change-Id: I832a5626b52935180f24857e56297840667eec2a
Reviewed-on: https://gerrit.libreoffice.org/14678
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2015-02-28 14:23:31 +00:00
Luboš Luňák
df290c6345 make it possible to easily have variants of glsl programs
Now it's possible to add a preamble to the compiled program, so there can
be just one program with #ifdef's inside and the small variants can be
selected using #define in the preamble instead of having several almost
identical programs.

Change-Id: I6c5112313b91b6269ebdecdfc896e0f96209ea2b
2015-01-27 18:42:48 +01:00
Caolán McNamara
b5f607a4aa callcatcher: update unused code
Change-Id: I225cbb3a4a66a8f20bec91c4770ad78e72b663b1
2015-01-21 09:40:33 +00:00
Luboš Luňák
ab65925b40 "area" scaling for opengl that has good results for downscaling
Change-Id: I0e4ad776cbf31f9a130aedf0f9741927560b5ac1
2015-01-19 12:17:51 +01:00
Caolán McNamara
fd1372ba8b boost::unordered_map->std::unordered_map
you can get debug stl this way

Change-Id: Ia70a3e7c7c452390e8bee34975d296c9318e4a19
2015-01-02 16:14:36 +00:00
Louis-Francis Ratté-Boulianne
b9c25fcc0d vcl: Don't keep a reference to the texture in the FBO object
Change-Id: I240d2b44e77d28af3cd5952b6d666a1709c4c54a
2014-12-11 07:57:34 +01:00
Louis-Francis Ratté-Boulianne
01bed8089a vcl: Re-use a framebuffer of the same size when possible
Conflicts:
	include/vcl/opengl/OpenGLContext.hxx

Change-Id: Id9c7932976ce9d9282776c20d93d9cca4d290056
2014-12-11 07:57:33 +01:00
Louis-Francis Ratté-Boulianne
83861ce123 vcl: Add BitmapInfoAccess for bitmaps' metadata access
Change-Id: Iec9f8c7d8f7cded0aef9e017373e44387dc0b05c
2014-12-11 07:57:27 +01:00
Louis-Francis Ratté-Boulianne
edbdaf07d9 vcl: Implement bitmap color replacement operation in OpenGL backend
Change-Id: Ia86b67e92985eeb4fb2a5f6cd74c65fab2ac5566
2014-12-03 14:05:36 +01:00
Louis-Francis Ratté-Boulianne
cf3ba35615 vcl: Add dummy Replace to SalBitmap implementations
Change-Id: I2f8b11a3f7cb8872a1d8f6eeeae8ce3f30223496
2014-12-03 14:05:36 +01:00
Matúš Kukan
58824d6f55 Add dummy Erase to SalBitmap implementations
Change-Id: I5790deb9ab5af6f8678c964af5321264d3bce733
2014-12-03 14:05:35 +01:00
Louis-Francis Ratté-Boulianne
0a04ceca6c vcl: Don't create new contexts for Virtual Devices on Windows
Change-Id: I561a8142f986aca89e796ce2c4a0902fae41f9e6
2014-12-03 14:05:34 +01:00
Stephan Bergmann
0edcbd6852 Missing include
Change-Id: I4df2b0bb114b8a375d3557c8e33487af737957f4
2014-12-02 14:16:10 +01:00
Tor Lillqvist
724bc1ac11 WaE: private field 'mnAttribIndex' is not used
Change-Id: I939e184f6706fc0135f6906f0c183e5166aba5bb
2014-12-02 13:25:03 +02:00
Louis-Francis Ratté-Boulianne
99ade27b04 vcl: Only load OpenGL shaders once for each context
Change-Id: Idbf9026c5e64ef41d4c913153dfddf36923ff7de
2014-12-02 11:58:45 +01:00
Michael Meeks
5dcaefdae5 vcl: Consolidate size information around the GeometryProvider.
Conflicts:
	vcl/inc/openglgdiimpl.hxx

Change-Id: I1d764a8dba1850d2475f08e1014a085846f336c3
2014-12-02 08:34:52 +01:00
Michael Meeks
c31ed7004d vcl: create a GeometryProvider interface.
Implemented by both SalFrame and SalVirtualDevice, to help us to
un-tangle code that needs to operate on resources associated with
both of these without special cases.

Change-Id: If681a002647e20c57186577fe039d4ac85bba872
2014-12-02 08:34:52 +01:00
Michael Meeks
c22d5338fa vcl: remove SalVirtualDevice::GetWidth
It is presumed that #i59315# is fixed already, and that this is no
longer necessary.

Change-Id: Ifb2f6550fac2481c4fec269b38d6e806753cb53e
2014-12-02 08:34:51 +01:00
Louis-Francis Ratté-Boulianne
d6b51a87b4 vcl: Use the current OpenGL context for VirtualDevice and Bitmap if possible
Conflicts:
	include/vcl/opengl/OpenGLContext.hxx
	vcl/inc/openglgdiimpl.hxx
	vcl/opengl/gdiimpl.cxx
	vcl/opengl/x11/gdiimpl.cxx
	vcl/source/opengl/OpenGLContext.cxx

Change-Id: I17f6ce66fb8b5bc027d35b4016ae56c24ee0a738
2014-12-02 08:34:51 +01:00
Kohei Yoshida
57998c406f Fix Windows build.
Change-Id: I9ddd1a9bf572ffa570e23193b01176af8df6f8ed
2014-12-01 21:49:29 -05:00
Markus Mohrhard
82d767a506 whitelist some drivers
Especially the ones from our developer machines as they are better tested than anything else.

Change-Id: Id6ff6bcae314c03453d82ee4e64aaef1bd5ed84a
2014-11-30 21:01:35 +01:00
Jan Holesovsky
9ec885872b windows opengl: We should actually use Init() from OpenGLSalGraphicsImpl.
Change-Id: I524883b0f0bbce9a8b6f893771f144feeee49934
2014-11-30 00:47:31 +01:00
Miklos Vajna
ef8610851b error C2061: syntax error : identifier 'uint64_t'
Change-Id: I78af18a1df98920a235c22c2f1875f0ac43a8e27
2014-11-28 16:41:07 +01:00
Miklos Vajna
a29ace4143 error C2039: 'vector' : is not a member of 'std'
Change-Id: I4a6d7a384daf00eb8841ea742187e38eafe98e8b
2014-11-28 16:41:06 +01:00
Markus Mohrhard
5b5d154d0b connect all pieces for OpenGL windows blacklist, part 3
Change-Id: Iaaafe7da8e717f7b127ab5806773a5a5d75b82d5
2014-11-27 21:18:46 +01:00
Markus Mohrhard
d8abf4ee54 port blacklist from mozilla code to LibreOffice, part2
Change-Id: Ia5810aa5f9e1e169b5f0217f6f176a253dc1439d
2014-11-27 21:18:38 +01:00
Markus Mohrhard
40ad9eea88 implement windows OpenGL blacklist, first step
Change-Id: I408b76855693c64473dba3bb3fa94374fff01fae
2014-11-27 21:18:29 +01:00
Louis-Francis Ratté-Boulianne
e26237f6cb vcl: Always use the same OpenGL context when drawing in a window
Change-Id: Ief0e947149c133aaa8e81973e088c4df6432bfdc
2014-11-22 20:14:19 +01:00
Louis-Francis Ratté-Boulianne
3149cc341b vcl: Draw native widgets twice on black/white background to synthesize alpha
Change-Id: Ic4c073360070a559855732d2de41ae9085d7d51b
2014-11-22 20:14:18 +01:00
Tor Lillqvist
0145e05a2e WaE: overriding virtual function declaration not marked 'override'
Change-Id: Ieb8da224e02a9c8e19eabb4c5bcbd81120900245
2014-11-20 15:11:19 +02:00
Markus Mohrhard
a55f740045 include the unx part for getting OpenGL driver & device information
desktop/unx/source/glxtest.cxx is taken directly from the Mozilla
project.

THe whole concept is taken from Mozilla and is based on starting an
early process that creates an OpenGL context. This prevents crashing
drivers to crash Libreoffice.

We read the information from the pipe as soon as we create the first vcl
Window. In that place we then decide if the device/driver combination is
blacklisted.

Change-Id: I2624d4ce06d503281a4459cf3174f57cf1f7b733
2014-11-20 13:50:51 +01:00
Matúš Kukan
72f1d57b86 Add dummy Crop to SalBitmap implementations
Change-Id: Ib402395f5523a980c9ca098dcd2d8e1ecbbfa7c0
2014-11-19 07:52:55 +01:00
Michael Meeks
fa6a174b50 vcl: since we share Bitmaps across all GLContexts simplify lifecycle.
~X11SalVirtualDevice() was destroying X resources referred to by
OpenGLSalBitmap's mpContext, which were subsequently accessed by
Bitmap::AcquireReadAccess on the floating Bitmap. Better to use the
default window's GLContext for all bitmap operations.

Change-Id: I9009980e791cff1a1f36d626592d72c7a32efd39
2014-11-18 21:26:23 +00:00
Jan Holesovsky
878cea9134 windows opengl: Provide the context to textures everywhere where we have it.
Change-Id: Ib820326fdc752d0893840bad3eb7f1369469f796
2014-11-18 15:44:04 +01:00
Louis-Francis Ratté-Boulianne
89ec42e1d1 vcl: Execute pending operations on source when copying bitmap
Change-Id: I8a6a5ffe71c9e5f16533fd1f0944d4fd2a051c73
2014-11-18 15:44:02 +01:00
Michael Meeks
bd14a48e41 vcl: always use the default windows' GL Context for now to create bitmaps.
Change-Id: Ie20b10656788113709b0b0720d3cae2653639d78
2014-11-17 22:39:03 +00:00
Michael Meeks
dfeaee01a3 vcl: copyBits should operate on mrParent if no context supplied.
eg. OutputDevice::DrawOutDev:
            mpGraphics->CopyBits( aPosAry, NULL, this, NULL );

Change-Id: I0b041bb5aa6aba573b9f589842084722481cb438
2014-11-17 22:38:58 +00:00
Louis-Francis Ratté-Boulianne
dce9610afe vcl: Improve OpenGLTexture implementation by allowing implicit sharing
Conflicts:
	vcl/opengl/gdiimpl.cxx

Change-Id: I6421265325e72023d1affe671d75488185772786
2014-11-15 12:17:43 +01:00
Louis-Francis Ratté-Boulianne
ec5fa3c907 vcl: Replace GetPixmapFromScreen by FillPixmapFromScreen
Conflicts:
	vcl/unx/generic/gdi/gdiimpl.cxx
	vcl/unx/generic/gdi/salgdi2.cxx

Change-Id: I2cb960d194ee5bc38beece97e8b21cc6fa3b3fbc
2014-11-15 12:17:42 +01:00
Jan Holesovsky
19ad91f7bc windows opengl: Proof-of-concept text rendering.
We don't have a method that would paint a texture with transparency yet.  We
also need to limit the size of the DIBSection exactly to what we are going to
paint, no point in creating a huge bitmap that is mostly empty (but the part
where is the text being drawn).

Change-Id: Ice0bf325743d08e19e636be73cef6aff3cde5704
2014-11-14 00:07:49 +01:00