summaryrefslogtreecommitdiffstats
path: root/gfx
Commit message (Collapse)AuthorAgeFilesLines
* This CL add a GetInstance() method to singleton classes instead of relying ↵satish@chromium.org2010-12-041-1/+5
| | | | | | | | | | | | | | | | | on the callers to use Singleton<T>. In some cases I have used the LazyInstance<T> pattern as that was simpler. This is a small step towards making all singleton classes use the Singleton<T> pattern within their code and not expect the callers to know about it. I have selected all files under src/app and src/base which use Singleton<T> in this CL. Once this CL goes in I'll work on the rest of the files. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5527004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68300 0039d316-1c4b-4281-b951-d872f2087c98
* ChromeOS status text halo polish.xiyuan@chromium.org2010-12-041-0/+1
| | | | | | | | | | | | | - Fix the spikes on text of certain font by using round line join instead of default mitter join; - Use the same 0.7 black as other icons instead of 1.0 black; BUG=chromium-os:9787 TEST=Verify fix for chromium-os:9787 Review URL: http://codereview.chromium.org/5522007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68255 0039d316-1c4b-4281-b951-d872f2087c98
* Defer window destruction until GPU finished drawing.backer@chromium.org2010-11-303-7/+87
| | | | | | | | | | | | | | | | | When a tab is closed, it takes a while before the GPU stops drawing into the window. Destroying the window before the GPU has flushed its drawing pipeline causes unsightly X11 errors. The custom widget class that we use for drawing tab contents has a lock that is set when the GPU process is drawing to that widget. We use this lock to determine who should delete the associated window: - if the lock is clear at the time of widget destruction, the widget destroys the window - if the lock is set, the GPU process signals to the browser to destroy the widget (it has to be done in the browser process b/c the X window is wrapped in a GdkWindow that resides in the browser address space) Most the management is done in GtkNativeViewManager. I've added another map from XID to GtkWidget to facilitate this management. BUG=55158 TEST=Open two windows with http://webkit.org/blog-files/3d-transforms/poster-circle.html Close one of them. There should be no X11 errors generated. Review URL: http://codereview.chromium.org/5275009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67719 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 67662 - FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-302-9/+6
| | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 TBR=thestig@chromium.org Review URL: http://codereview.chromium.org/5270010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67674 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-302-6/+9
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67662 0039d316-1c4b-4281-b951-d872f2087c98
* Resize synchronization for Linux.backer@chromium.org2010-11-252-3/+39
| | | | | | | | | | | | | | | | | | | | | | | This patch makes synchronous calls from the GPU to the Browser process to resize windows. It must be synchronous because we must be sure when the resize happens, it must be initiated by the GPU because we have to time the resize with GL drawing, and the resize must be done by the Browser because of how GDK/GTK is structured. Specifically, when a window that a GL context is associated with is resized, the back buffer gets blanked. So it is important that we synchronize the resize with the drawing to the back buffer. On Linux, the X window that we are drawing to is wrapped in a GdkWindow inside the Browser process. GDK/GTK assumes that all changes to the window happen via GDK calls. In particular, the size of the window is cached inside the GdkWindow object so that it does not have to make a call to the X server in order to get window geometry. Unfortunately, this necessitates resizing the window inside of the Browser process. For more discussion of this approach and (some unsuccessfully attempted) alternatives see https://docs.google.com/a/google.com/document/d/1ZNouL-X_Ml1x8sqy-sofz63pDAeo36VWi_yQihaE2YI/edit?hl=en This patch set uncovered another bug: - open in two separate windows http://webkit.org/blog/386/3d-transforms/ and http://webkit.org/blog-files/3d-transforms/poster-circle.html - resize the former until it is smallish - watch the root layer of the former show up as the root layer of the later. To my knowledge, this is first trigger of this bug. If and when this patch is accepted, I will file the bug. BUG=http://code.google.com/p/chromium/issues/detail?id=54430 TEST=Go to http://peter.sh/2010/06/chromium-now-features-gpu-acceleration-and-css-3d-transforms/ . Rotate Z with the slider to trigger the compositor. Resize the window. The resize may be janky (we're uploading large textures), but it should display properly. Contributed by backer@chromium.org Review URL: http://codereview.chromium.org/5105006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67416 0039d316-1c4b-4281-b951-d872f2087c98
* Replace TabContentsViewGtk with TabContentsViewViews as part of the ongoinganicolao@chromium.org2010-11-245-1/+22
| | | | | | | | | | | effort to eliminate GTK for TOUCH_UI. BUG=none TEST=manually tested Review URL: http://codereview.chromium.org/4319003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67291 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup AdjustStringForLocaleDirection() to modify input parameter in place.jeremy@chromium.org2010-11-241-7/+8
| | | | | | | | | | | As described in the bug, the current behavior is confusing and bug-prone. BUG=47194 TEST=Check that there are no visible regressions in RTL and LTR language UIs on Linux & Windows. Review URL: http://codereview.chromium.org/5154009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67237 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring of cursor usage (primarily for linux).sadrul@chromium.org2010-11-232-0/+44
| | | | | | | | | | | | | | Add API to WebCursor to return a native-cursor, and implementation for windows, linux and mac. For linux: Move gtk_util::GetCursor into gfx:: namespace. Also, get rid of ref/unref'ing the cursors from everywhere. Instead, do almost all of it in one place (in gfx). Also, show proper cursors for web-pages with touchui=1 (i.e. add support for updating cursor in RenderWidgetHostViewViews). Review URL: http://codereview.chromium.org/5110010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67034 0039d316-1c4b-4281-b951-d872f2087c98
* Convert SizeStringInt from taking a wstring to a string16.tony@chromium.org2010-11-226-10/+17
| | | | | | | | BUG=23581 Review URL: http://codereview.chromium.org/5158006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66973 0039d316-1c4b-4281-b951-d872f2087c98
* Add 1px black border for ChromeOS status button.xiyuan@chromium.org2010-11-182-69/+180
| | | | | | | | | | | | | | - Move Linux's CanvasSkia::DrawStringInt into DrawStringWithHalo and added code to support text halo and change DrawStringInt to use it; - Make views::TextButton support text halo; - Use the text halo for chromeos::StatusButton; BUG=chromium-os:8657 TEST=Verify 1px black border is added to ChromeOS status buttons. Review URL: http://codereview.chromium.org/5071002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66632 0039d316-1c4b-4281-b951-d872f2087c98
* [gtk] make tab title font irrespective of display DPI.estade@chromium.org2010-11-122-5/+5
| | | | | | | | | | | The font size is changed from 9 to 13 in order to offset the new correction. The font has the same same pixel size that was displayed before on my 101 DPI display. BUG=62536 TEST=using Xephyr -dpi XXX Review URL: http://codereview.chromium.org/4837002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65971 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: refactor copy-pasted codeevan@chromium.org2010-11-052-0/+25
| | | | | | | | | | I wanted to do the same thing in a third place. TEST=compiles Review URL: http://codereview.chromium.org/4508004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65263 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "gtk: refactor copy-pasted code"evan@chromium.org2010-11-052-25/+0
| | | | | | Build break. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65247 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: refactor copy-pasted codeevan@chromium.org2010-11-052-0/+25
| | | | | | | | | | I wanted to do the same thing in a third place. TEST=compiles Review URL: http://codereview.chromium.org/4508004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65246 0039d316-1c4b-4281-b951-d872f2087c98
* Removes SQLite dependency from gfxbulach@chromium.org2010-11-041-1/+0
| | | | | | | | | | | (no functional changes, just tidying up gyp). BUG=none TEST=none Review URL: http://codereview.chromium.org/4396003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65047 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: Remove base/gtk_util.h by moving its methods tojhawkins@chromium.org2010-10-293-23/+72
| | | | | | | | | | | gfx/gtk_util.h BUG=none TEST=none Review URL: http://codereview.chromium.org/4150006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64348 0039d316-1c4b-4281-b951-d872f2087c98
* Alternative to overlays on X windows.piman@chromium.org2010-10-285-115/+245
| | | | | | | | | | | | | | Created a new GTK widget that gives us more control over when X windows (associated with GL contexts) are created and destroyed. This achieves the same thing as the overlay code (now reverted). It fixes two regressions with the overlay code: - maps.google.com and html5test.com now work (switching between software and hardware rendering) - expose events now get through in accelerated mode BUG=58862,59887 TEST=Go to html5test.com. Should switch contents to show results. Disable compositing window manager. Go to http://peter.sh/2010/06/chromium-now-features-gpu-acceleration-and-css-3d-transforms/. Adjust the rotate z slider to enable accelerated compositing. Drag a different window over top. Redraws should happen. Review URL: http://codereview.chromium.org/3973009 Patch from Jonathan Backer <backer@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64291 0039d316-1c4b-4281-b951-d872f2087c98
* [gtk] spoof proof infobars, take 2estade@chromium.org2010-10-263-10/+45
| | | | | | | | | | | | | | | | | | This looks like a big review, but a lot of it is just shuffling code around: - rip out dropshadow code - move arrow state and drawing to a model class, to allow sharing between BrowserWindow and Infobar - get rid of InfoBar's border_bin_ and slightly simplify baseclasses by no longer requiring them to call show() on the toplevel widget Added stuff: - transition between arrow colors (previous_color_ vs. target_color_ business) - arrows protruding on neighboring infobars BUG=48996 TEST=manual, with animations slowed down 100x Review URL: http://codereview.chromium.org/3919004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63956 0039d316-1c4b-4281-b951-d872f2087c98
* Create gfx::ScopedImage. This wraps a gfx::NativeImage and hides the underlyingrsesek@chromium.org2010-10-214-4/+252
| | | | | | | | | | | memory management for each platform under a consistent interface. BUG=none TEST=Compile and gfx_unittests Review URL: http://codereview.chromium.org/3841002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63359 0039d316-1c4b-4281-b951-d872f2087c98
* Add FORMAT_SkBitmap to JPEGCodec.klobag@chromium.org2010-10-192-7/+15
| | | | | | | | When encoding or decoding JPEG to SkBitmap, choose RGBA or BGRA depending on the skia bitmap's bit order. Review URL: http://codereview.chromium.org/3806010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63061 0039d316-1c4b-4281-b951-d872f2087c98
* Move scoped_nsdisable_screen_update from base to app/macbrettw@chromium.org2010-10-181-2/+2
| | | | | | | | | | | Move scoped_aedesc from base to base/mac Use namespace and proper Google-style class naming. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3828009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62904 0039d316-1c4b-4281-b951-d872f2087c98
* Move scoped_cftyperef from base to base/mac, use the new namespace, and name itbrettw@chromium.org2010-10-172-6/+6
| | | | | | | | | | properly (scoped_cftyperef -> ScopedCFTypeRef). TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3855001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62887 0039d316-1c4b-4281-b951-d872f2087c98
* Move windows version-related stuff out of base/win_util and into ↵brettw@chromium.org2010-10-152-9/+9
| | | | | | | | | | | | | | base/win/windows_version. Many files now only need to include this instead of all of win_util. Remove a bunch of unused code from base/win_util. There was a surprising amount. Replace the AppUserModel property key with the one from the SDK now that we use the Win7 SDK. Move GetLogonSessionOnlyDACL from win_util to ipc since it's only used in that one place. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3823002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62694 0039d316-1c4b-4281-b951-d872f2087c98
* Landing http://codereview.chromium.org/3786003 for Gracejrg@chromium.org2010-10-141-8/+8
| | | | | | | | | | | TBR=brettw@chromium.org Original description: We should use SkGetPackedX32 instead SkColorGetX to get the components out of a SkPMColor. Review URL: http://codereview.chromium.org/3802005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62664 0039d316-1c4b-4281-b951-d872f2087c98
* gfx: Get rid of deprecated version of CreateIconFileFromSkBitmap.tfarina@chromium.org2010-10-143-12/+5
| | | | | | | | | BUG=23581 TEST=trybots Review URL: http://codereview.chromium.org/3745003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62488 0039d316-1c4b-4281-b951-d872f2087c98
* Make drawing consistent with webkit wrt default colors and effectsdavemoore@chromium.org2010-10-111-4/+4
| | | | | | | | | | | | We weren't drawing the new chromium scrollbars exactly the same as webkit had, causing layout test failures. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/3697003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62200 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed include in test_webkit_clientdavemoore@chromium.org2010-10-106-0/+577
| | | | | | | | | | | | | retrying "Revert 62068 - Move implementation of linux scrollbars from webkit using new" See: http://codereview.chromium.org/3618014 TBR:jam@chromium.org BUG=chromium-os:6857 TEST=Verify that both linux and chromeos scrollbars look right. Review URL: http://codereview.chromium.org/3697001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62093 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 62068 - Move implementation of linux scrollbars from webkit using newdavemoore@chromium.org2010-10-096-577/+0
| | | | | | | | | | | | | | WebThemeEngine api. Also implement chromeos specific version. BUG=chromium-os:6857 TEST=Verify that both linux and chromeos scrollbars look right. Review URL: http://codereview.chromium.org/3618014 TBR=davemoore@chromium.org Review URL: http://codereview.chromium.org/3678003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62070 0039d316-1c4b-4281-b951-d872f2087c98
* Move implementation of linux scrollbars from webkit using newdavemoore@chromium.org2010-10-096-0/+577
| | | | | | | | | | | WebThemeEngine api. Also implement chromeos specific version. BUG=chromium-os:6857 TEST=Verify that both linux and chromeos scrollbars look right. Review URL: http://codereview.chromium.org/3618014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62068 0039d316-1c4b-4281-b951-d872f2087c98
* Fix gfx unit-tests so they do not crash on Windows, prior to Windows 7georgey@chromium.org2010-10-065-3/+166
| | | | | | | | | Also fix failing Font test. TEST=unit tests BUG=46733 Review URL: http://codereview.chromium.org/3615001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61725 0039d316-1c4b-4281-b951-d872f2087c98
* Create an X window overlay with static ID for GL contexts.piman@chromium.org2010-10-062-11/+139
| | | | | | | | | | | | | | | | | | This code creates an X window that overlays where tab contents are drawn. The handle associated with this window never changes (unlike the X window associated with a GTK widget that is created and destroyed whenever the widget is realized and unrealized respectively). This is helpful when creating a GL context associated with an X window. Also, having a floating overlay allows us to handle detaching GPU accelerated tabs. This code seems to have uncovered a race condition within the GPU process. When a tab that uses accelerated compositing is detached (e.g. http://webkit.org/blog/386/3d-transforms/), the tab contents often don't get displayed even though the tab is redrawn. A slight delay of about 100ms in the GPU process on the call to glXSwapBuffers (in gl_context_linux.cc) fixes this. To witness that GL can draw to the overlay after delay, try it with a tab with constant animation (e.g. http://webkit.org/blog-files/3d-transforms/poster-circle.html). I've written a bare bones test (about 150 lines of C) of the overlay technique, and it requires no such delay b/w reparenting the glXSwapBuffers. I've also confirmed that there is no synchronization issues w.r.t. the X server between my patch and GL draw commands. I propose filing a new bug for the race, if this patch gets accepted. BUG=53345,56419 TEST=Open two tabs, one with GPU rendered content (http://webkit.org/blog/386/3d-transforms/). Detach the tab with GPU rendered content. GPU process shouldn't crash. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=61561 Review URL: http://codereview.chromium.org/3509004 Patch from Jonathan Backer <backer@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61695 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 61561 - Create an X window overlay with static ID for GL contexts.dhollowa@chromium.org2010-10-052-139/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverting due to Valgrind issues on Linux tests: http://build.chromium.org/buildbot/memory/builders/Linux%20Tests%20(valgrind)(2)/builds/7671/steps/memory%20test:%20ui/logs/stdio Suppression (error hash=#000000007803F359#): { <insert_a_suppression_name_here> Memcheck:Addr4 fun:_ZN20GtkNativeViewManager9OnDestroyEP10_GtkWidget fun:_ZN62_GLOBAL__N_gfx_gtk_native_view_id_manager.cc_00000000_E72B30A69OnDestroyEP10_GtkObjectPv fun:g_cclosure_marshal_VOID__VOID fun:g_closure_invoke fun:signal_emit_unlocked_R fun:g_signal_emit_valist fun:g_signal_emit fun:gtk_object_dispose fun:gtk_widget_dispose fun:g_object_run_dispose fun:gtk_object_destroy fun:_ZN23RenderWidgetHostViewGtk7DestroyEv fun:_ZN16RenderWidgetHost7DestroyEv fun:_ZN16RenderWidgetHost8ShutdownEv fun:_ZN14RenderViewHost8ShutdownEv fun:_ZN21RenderViewHostManagerD1Ev fun:_ZN11TabContentsD0Ev fun:_ZN13TabStripModel16InternalCloseTabEP11TabContentsib fun:_ZN13TabStripModel17InternalCloseTabsERKSt6vectorIiSaIiEEj fun:_ZN13TabStripModel18CloseTabContentsAtEij fun:_ZN7Browser13CloseContentsEP11TabContents fun:_ZN11TabContents5CloseEP14RenderViewHost } No absolute smoking gun. But seems very likely. -- This code creates an X window that overlays where tab contents are drawn. The handle associated with this window never changes (unlike the X window associated with a GTK widget that is created and destroyed whenever the widget is realized and unrealized respectively). This is helpful when creating a GL context associated with an X window. Also, having a floating overlay allows us to handle detaching GPU accelerated tabs. This code seems to have uncovered a race condition within the GPU process. When a tab that uses accelerated compositing is detached (e.g. http://webkit.org/blog/386/3d-transforms/), the tab contents often don't get displayed even though the tab is redrawn. A slight delay of about 100ms in the GPU process on the call to glXSwapBuffers (in gl_context_linux.cc) fixes this. To witness that GL can draw to the overlay after delay, try it with a tab with constant animation (e.g. http://webkit.org/blog-files/3d-transforms/poster-circle.html). I've written a bare bones test (about 150 lines of C) of the overlay technique, and it requires no such delay b/w reparenting the glXSwapBuffers. I've also confirmed that there is no synchronization issues w.r.t. the X server between my patch and GL draw commands. I propose filing a new bug for the race, if this patch gets accepted. BUG=53345,56419 TEST=Open two tabs, one with GPU rendered content (http://webkit.org/blog/386/3d-transforms/). Detach the tab with GPU rendered content. GPU process shouldn't crash. Review URL: http://codereview.chromium.org/3509004 Patch from Jonathan Backer <backer@google.com>. TBR=piman@chromium.org Review URL: http://codereview.chromium.org/3548015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61589 0039d316-1c4b-4281-b951-d872f2087c98
* Create an X window overlay with static ID for GL contexts.piman@chromium.org2010-10-052-11/+139
| | | | | | | | | | | | | | | | This code creates an X window that overlays where tab contents are drawn. The handle associated with this window never changes (unlike the X window associated with a GTK widget that is created and destroyed whenever the widget is realized and unrealized respectively). This is helpful when creating a GL context associated with an X window. Also, having a floating overlay allows us to handle detaching GPU accelerated tabs. This code seems to have uncovered a race condition within the GPU process. When a tab that uses accelerated compositing is detached (e.g. http://webkit.org/blog/386/3d-transforms/), the tab contents often don't get displayed even though the tab is redrawn. A slight delay of about 100ms in the GPU process on the call to glXSwapBuffers (in gl_context_linux.cc) fixes this. To witness that GL can draw to the overlay after delay, try it with a tab with constant animation (e.g. http://webkit.org/blog-files/3d-transforms/poster-circle.html). I've written a bare bones test (about 150 lines of C) of the overlay technique, and it requires no such delay b/w reparenting the glXSwapBuffers. I've also confirmed that there is no synchronization issues w.r.t. the X server between my patch and GL draw commands. I propose filing a new bug for the race, if this patch gets accepted. BUG=53345,56419 TEST=Open two tabs, one with GPU rendered content (http://webkit.org/blog/386/3d-transforms/). Detach the tab with GPU rendered content. GPU process shouldn't crash. Review URL: http://codereview.chromium.org/3509004 Patch from Jonathan Backer <backer@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61561 0039d316-1c4b-4281-b951-d872f2087c98
* Define gfx::NativeImage and add ResourceBundle::GetNativeImageNamed().rsesek@chromium.org2010-10-051-1/+16
| | | | | | | | | BUG=none TEST=compile Review URL: http://codereview.chromium.org/3597008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61545 0039d316-1c4b-4281-b951-d872f2087c98
* clang/mac: Fix almost all problems when building all.xcodeproj.thakis@chromium.org2010-10-044-8/+8
| | | | | | | | BUG=None TEST=None TBR=hans git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61344 0039d316-1c4b-4281-b951-d872f2087c98
* clang/mac: Fix most problems in unittest targets in webkit.gypthakis@chromium.org2010-10-032-4/+4
| | | | | | | | | | | | This does to WebPoint/gfx::Point what we did to WebString/string16 last friday and fixes a bunch of other small issues. Also fix two tiny issues in the base unit tests target. BUG=None TEST=None TBR=hans git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61343 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Move ctors/dtors into implementation files. Adds ctors/dtors to ↵erg@google.com2010-09-304-1/+7
| | | | | | | | | | | | | | non-POD structs. Cuts ~2MB off our .a files (Debug, Linux). Also added the "virtual" keyword on a whole bunch of virtual dtors that were missing it. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3522004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61100 0039d316-1c4b-4281-b951-d872f2087c98
* Remove use of Skia's safeUnref() in favor of SkSafeUnref(...)vandebo@chromium.org2010-09-242-3/+3
| | | | | | | | | | | safeUnref() technically has undefined behavior on a null pointer. TEST=green bots BUG=none Review URL: http://codereview.chromium.org/3475007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60483 0039d316-1c4b-4281-b951-d872f2087c98
* Printing: Implement PrintingContext::UseDefaultSettings for Linux/Cairo.jhawkins@chromium.org2010-09-211-6/+6
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3389005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60087 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: Delete some 0 byte sized files that we no longer reference.thestig@chromium.org2010-09-161-0/+0
| | | | | | | BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59746 0039d316-1c4b-4281-b951-d872f2087c98
* Fix problem with extension context menu items losing top-level icon.asargent@chromium.org2010-09-162-4/+27
| | | | | | | | | | | | | | | If an extension adds some context menu items, then removes them all, and adds some more, instead of their actual icon the new items will get the default extension icon in context menus. This is because we use the caching feature of ImageLoadingTracker and get an immediate callback from LoadImage before we've put the request in pending_icons_. BUG=53543 TEST=Steps are outlined in bug report. Review URL: http://codereview.chromium.org/3425007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59726 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug in gfx::Font if the PangoFontDescription's size is absolute.sky@chromium.org2010-09-021-0/+7
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3293003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58362 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a change that has been checked in by mistake in r52157oshima@chromium.org2010-08-311-2/+2
| | | | | | | | | | | | | Looks like I checked in a change that I was playing in other git branch by accident when I disabled a tests in CL 2895012 (r52157) This fixes a log message so that it print the width/height when crashed. BUG=none TEST=none Review URL: http://codereview.chromium.org/3216002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58026 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 7)thestig@chromium.org2010-08-273-4/+2
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3176026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57737 0039d316-1c4b-4281-b951-d872f2087c98
* Convert FillRect(... SkPaint) to DrawRect() since it doesn't necessarily ↵pkasting@chromium.org2010-08-186-25/+26
| | | | | | | | | | fill, it just draws with the provided paint. BUG=none TEST=none Review URL: http://codereview.chromium.org/3165032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56589 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup:pkasting@chromium.org2010-08-179-461/+192
| | | | | | | | | | | * Remove unnecessary code * Make function declaration style match style guide (one arg per line is preferred when all don't fit, but related args may be together) BUG=none TEST=none Review URL: http://codereview.chromium.org/3109019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56432 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land part of r55416, minus actually moving the test_suite.h contents to a ↵brettw@chromium.org2010-08-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | .cc file. Cleanup in base. This moves the implementation (and a bunch of header file dependencies) from the multiprocess test and the test_suite headers to .cc files. Moves multiprocess_test to the test directory, and all of this stuff to the existing base_test_support project. I also used the base namespace. Previously other projects included this functionality just by #include because it was all inline, so I had to add dependencies on base_test_support in a few places. Moves and renames the command line switch this was using to base_switches. Move the base switch for process type to chrome switches. TEST=none BUG=none Review URL: http://codereview.chromium.org/3026055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56399 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land just the project file changes from r55416. This makes projects that usebrettw@chromium.org2010-08-151-0/+1
| | | | | | | | | base test files dependent on test_support_base. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56172 0039d316-1c4b-4281-b951-d872f2087c98
* Rework gfx::Font by moving platform-specific code into inner classes.ben@chromium.org2010-08-1319-970/+1401
| | | | | | | | | | | | | gfx::Font is a platform-neutral API shim that exists as a wrapper object to allow for the creation and lifetime of gfx::Font objects to remain consistent with past usage. gfx::PlatformFont is an interface implemented by the platform-specific inner classes (gfx::PlatformFontWin,Mac,Gtk). BUG=none TEST=existing unittests Review URL: http://codereview.chromium.org/3083022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56040 0039d316-1c4b-4281-b951-d872f2087c98