| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6594091
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76584 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=carnitas
TEST=compiles; existing unit tests.
Review URL: http://codereview.chromium.org/6602049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76467 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=added them as dependencies to a real target and verified they were built successfully
BUG=none
Review URL: http://codereview.chromium.org/6591079
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76438 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The possible feature values are:
RenderMode=Auto
RenderMode=2D
RenderMode=3D
The default if no feature is specified is 3D for
backwards compatibility.
Review URL: http://codereview.chromium.org/6576007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75895 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
generated:
- They had a small chance of colliding. e.g., message queue 41 for process 4 and message queue 1 for process 44 would both attempt to acquire the name "o3d441", and whichever one came second would fail since it was already in use. The fix is to separate the PID and instance number with a hypen. This way the names in such a case become "o3d4-41" and "o3d41-4", which are distinct.
- The PID in the name was truncated if it was greater than 65535 (possible in some edge cases on Windows and Linux).
- Incrementing of the per-process id was not thread-safe.
TEST=loaded o3d on Linux and verified IPC still works
BUG=none
Review URL: http://codereview.chromium.org/6578008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75810 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
fails for any reason. This is still only supported on linux for GL renderer. o2d mode can still be forced at compile time via the force_cairo=1 GYP_DEFINE.
Verified on Linux in o3d and o2d mode and on Mac. Unit tests are still passing 100%. Also confirmed o2d fall-back using NX on Linux.
Review URL: http://codereview.chromium.org/6538102
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75776 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
browser plugin. This step rolls the o2d renderer and the gl renderer
into the same linux plugin. Unfortunately the code path for which one
gets used is still controlled by a compile time switch. That switch is
force_cairo which is set to 0 by default (meaning o3d) in common.gypi.
Review URL: http://codereview.chromium.org/6532010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75614 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
help JS app developers find leaks.
TEST=used it in a JS app to help identify a leak
BUG=none
Review URL: http://codereview.chromium.org/6542028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75441 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Mac so that we can build them as static libraries.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/6473001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74468 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
area. JavaScript will use this to paint a custom background colour using a Pattern created by Pattern::CreateRgbPattern(). (In principle JavaScript could already do this by setting (x, y) = (0, 0) and (width, height) = resolution of the display area, but this is simpler.) Also delete the code implementing the hard-coded black background.
TEST=loaded O2D and verified that a background can be created as described above
BUG=none
Review URL: http://codereview.chromium.org/6349032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73511 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=pending: loaded O2D and verified the API functions
BUG=none
Review URL: http://codereview.chromium.org/6409019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73243 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=loaded O2D and verified that choosing different filters gives different results
BUG=none
Review URL: http://codereview.chromium.org/6254021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72859 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=built in Debug and Release mode on Lucid 64-bit
BUG=none
Review URL: http://codereview.chromium.org/6379008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72740 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
non-premultiplied alpha ARGB images as if they were premultiplied alpha ARGB. This caused the transparent parts of images to be too bright (and in some cases fully opaque). Cairo only supports premultiplied alpha, but O3D calls SetRect() with non-premultiplied alpha, so we have to convert.
TEST=loaded O2D and verified transparent images look correct now
BUG=none
Review URL: http://codereview.chromium.org/6309007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72658 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
points too. This makes no difference right now because we currently don't gate Linux crash uploading on HANDLE_CRASHES, but once we change that we'll want these in all the right places.
TEST=loaded O2D on Linux, verified it works
BUG=none
Review URL: http://codereview.chromium.org/6348018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72388 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
other code to be simpler.
TEST=loaded O2D and verified COPY_WITH_FADING works
BUG=none
Review URL: http://codereview.chromium.org/6298011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72194 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- New APIs:
- Add a "visible" property to the Layer class to mimick the visible property of the Transform class.
- Add a method to set an affine transform on Pattern objects so that texture patterns can be transformed independently from the Layers that use them.
- Add a "paint operators" API for Layers and define four operators (currently only three of them implemented). The previous hard-coded behaviour was equivalent to the BLEND_WITH_TRANSPARENCY operator.
- Fixes:
- Replace the "mask" nomenclature with "clip", which is a more standard name.
- Don't clip alpha-blended layers.
- Restrict Layer painting to the rectangle defined by the attributes.
- Set default alpha value to 0.0 instead of 1.0 to match what JavaScript expects.
TEST=loaded O2D and verified all new functionality is working
BUG=none
Review URL: http://codereview.chromium.org/6255003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72006 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Fix graphical artifacting for images downloaded from the Internet caused by overwriting them with their own mip-maps. This resulted in each image being rendered with copies of itself of decreasing size in one of the corners. Cairo does not support/need mip-maps, so we now just ignore the calls to set the mip-maps.
- Do not alpha-blend new texture content with the old texture content, which is wrong and would have been wasting a bit of CPU too.
TEST=loaded O2D and verified the artifacting is fixed
BUG=none
Review URL: http://codereview.chromium.org/6268006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71819 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Use Cairo double-buffering (prevents flickering when there is translucency).
- Add an API to allow JS to indicate the stacking order of layers. (Previously it was the arbitrary order of their creation!)
- Delete layer objects that have been discarded by the JS via Pack::RemoveObject().
TEST=loaded O2D and verified no significant change in perf as a result of double-buffering (~70% of a core before and ~72% of a core after)
BUG=none
Review URL: http://codereview.chromium.org/6320002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71475 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-Wbool-conversion warns about EXPECT_EQ(false, blah), so replace
that with EXPECT_FALSE(blah). Do the same with EXPECT_EQ(true, blah)
for good measure (even though that doesn't generate warnings).
Also remove the one instance of an unused variable.
BUG=69421
TEST=buildbots all compile and all tests pass
Review URL: http://codereview.chromium.org/6300001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71431 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
According to Bardley Nelson, o3d uses a pinned (stale) version of base,
and one must not update o3d to reflect new base changes.
BUG=None
TEST=None
TBR=bradnelson
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70985 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Made --enable-dcheck a parameter to InitLogging() and fixed up all
callsites.
BUG=62736
TEST=Manual
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=70782
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=70920
Review URL: http://codereview.chromium.org/6070006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70977 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=trybots
Review URL: http://codereview.chromium.org/5991010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70956 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=68593
TEST=use google talk video in opera 11. Should work without warning if you enable labs 'Google Talk Enhancements'
Review URL: http://codereview.chromium.org/6066009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70537 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
O3D is frozen on an old version of base, so I believe you want to avoid
updating it in future base changes.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/6075009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70450 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
I kept a base/lock.h in place with a using statement to avoid updating
all callers in one CL.
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/6018013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70363 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/6028009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70345 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Fix users of this file to use the new location.
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/6019004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70009 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts the changes did on http://src.chromium.org/viewvc/chrome?view=rev&revision=69785
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/5970006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69793 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=trybots
Review URL: http://codereview.chromium.org/6055003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69785 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Submitting on behalf of pthatcher@google.com
Review URL: http://codereview.chromium.org/5843001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69197 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=built and ran on Linux
BUG=none
Review URL: http://codereview.chromium.org/5766001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68799 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=loaded O3D in Safari on Mac and verified that debug.log is created and used
BUG=none
Review URL: http://codereview.chromium.org/5651002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68520 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
dynamic textures.
TEST=loaded O3D on a test page on Linux and used the new API to display the framerate
BUG=none
Review URL: http://codereview.chromium.org/5591006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68379 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
prevents O3D from loading.
TEST=loaded O3D several times in Chrome until the problem repro'ed and verified that O3D loaded and worked anyway
BUG=none
Review URL: http://codereview.chromium.org/5615001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68078 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) De-couple the Layer abstraction from the implementations details of Texture, giving JavaScript more control over the scene:
- Create a Pattern class backed by Cairo's cairo_pattern_t types (which we were already using implicitly) to represent a particular pattern to paint on a layer (think of it like a brush in PhotoShop/GIMP). A Pattern can be created from either a Texture or a solid colour. This will later allow us to move the PaintBackground() method out in to JS-space.
- Axe the overloaded Layer scaling parameters (which were used to represent both the width/height of the Layer and the scaling applied to the Texture), and replace them with separate width/height parameters to describe the Layer dimensions and scale_x/scale_y parameters to describe the scaling applied to the Pattern.
(2) Code clean-up:
- Use properties instead of functions in the Layer class.
- Use double instead of float.
- Get rid of unnecessary inheritance of Layer from ParamObject.
- Get rid of many unnecessary #include directives in layer.h.
- Get rid of super-spammy log message in RendererCairo::Paint().
- Improve comments.
TEST=compiled and loaded on Linux in both GL mode and Cairo mode with simple test scenes
BUG=none
Review URL: http://codereview.chromium.org/5276006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67335 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=pending: build and load in IE
BUG=none
Review URL: http://codereview.chromium.org/5325002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67296 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Save textures in memory rather than reading them directly from the SetRect() source, which is an unsafe hack. This fixes a crash when a texture was painted after the shared memory was unregistered, or if a texture was painted that was created from a static image downloaded from the net. This is a perf regression due to the extra copy, but we can add a special shared memory texture class later. This also regresses the functionality because SetRect() updates only a portion of the texture but RendererCairo paints the entire texture. An upcoming CL will add an API to define the region to paint.
- Remove unused weak pointer tracker from Layer class.
- Create textures of the requested image format rather than hard-coding ARGB8, and fail for formats not supported by Cairo.
- Fix a couple crashes caused by missing refcounts.
- Fix crash when trying to render a Layer that has no assigned texture.
TEST=loaded O2D many times
BUG=none
Review URL: http://codereview.chromium.org/5134005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66807 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/5147002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66523 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NPVariant instead of a string, causing us to construct a std::string from an invalid pointer and length. This may have previously been "hidden" by a coincidence of stack layout that made the uninitialized length be 0, but it is now very reproducible.
Also fix a leaked ref count on the location object.
TEST=repro'ed the void location.href issue in Chrome 8.0.552.200 on Windows and verified no crash
BUG=none
Review URL: http://codereview.chromium.org/5092005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66522 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
crash in Chrome where the browser foolishly calls NPP_SetWindow with instance->pdata == NULL.
- Factor out obscene amounts of redundancy from main_<platform>.(cc|mm) into main.cc. This makes no change to the functionality, except that NP_Initialize on Linux now has HANDLE_CRASHES whereas before it did not.
TEST=built on Linux, Mac, and Windows; installed and loaded O3D on each platform and made sure it worked; repeatedly loaded on Mac & Win in Chrome 8.0.552.200 and verified no crashes; inspected "svn diff" output manually and verified that the code and order of execution of that code is unchanded for each platform
BUG=none
Review URL: http://codereview.chromium.org/4957002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66344 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/4592001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65266 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
amount of memory reserved for properties and Windows doesn't always
automatically free up the memory if the window is deleted without an
explicit remove. For the time being I've made it easier to track
SetProp leaks, but we may want to move to using something other than
SetProp in the future that isn't as fragile.
I didn't fix a couple of places that were trickier. I'm going to file
separate bugs on them.
BUG=44991
TEST=none
Review URL: http://codereview.chromium.org/4195003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64619 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=built and ran O3D on Linux (64-bit)
Review URL: http://codereview.chromium.org/3978003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63452 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=built on Linux; Win & Mac trybots
Review URL: http://codereview.chromium.org/4014004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63443 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
uninitialized variable. (It's actually guaranteed to be initialized, but the code made that hard for the compiler to infer.)
TEST=built on Linux with GCC 4.3.4
BUG=none
Review URL: http://codereview.chromium.org/3750019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62994 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
failures on slow or heavily loaded machines (specifically the Windows build slaves). The default is 1 second, which is too low for our grammar. 30 seconds should be plenty.
See http://www.antlr.org/pipermail/antlr-interest/2009-September/035955.html
BUG=none
TEST=built on my Linux workstation with timeout of 150ms and verified that it reproduces the same error as seen on the Windows build slaves, then changed to 30000 and verified the problem goes away
Review URL: http://codereview.chromium.org/3784007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62985 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
NPAPI booleans.
BUG=none
TEST=ran O3D on Linux with nspluginwrapper
Review URL: http://codereview.chromium.org/3801007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62970 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also ensures all NPN_PluginThreadAsyncCall() uses are guarded by IsPluginThreadAsyncCallSupported().
Also fix-up indenting in o3d_layer.mm.
BUG=none
TEST=repeated loading of O3D in Safari 5.0.2 on Mac
Review URL: http://codereview.chromium.org/3677002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62969 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/3769001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62680 0039d316-1c4b-4281-b951-d872f2087c98
|