Closed Bug 472051 Opened 16 years ago Closed 2 years ago

restore gtk double buffering

Categories

(Core :: Widget: Gtk, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: tomeu, Unassigned)

Details

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008121622 Ubuntu/8.10 (intrepid) Firefox/3.0.5
Build Identifier: 

gtk double buffering was disabled several years ago because of the way that the text caret used to draw itself (#153805). The caret code has been rewritten since then and using gtk double buffering is no longer a problem.

Mozilla not using gtk's double buffering is causing problems for us because gtk_widget_get_snapshot() won't work otherwise.

The patch attached restores gtk double buffering and removes the custom one.

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Comment on attachment 355309 [details] [diff] [review]
restore gtk double buffering and remove custom buffering

Sounds good. The only thing I was worried about is this:

-        // Instead of just doing PushGroup we're going to do a little dance
-        // to ensure that GDK creates the pixmap, so it doesn't go all
-        // XGetGeometry on us in gdk_pixmap_foreign_new_for_display when we
-        // paint native themes

but it looks like that's fine now. Cool.
Attachment #355309 - Flags: review+
Assignee: nobody → tomeu
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Attachment #355309 - Flags: superreview?(roc)
Attachment #355309 - Flags: superreview?(roc) → superreview+
I'm not sure what code you were working from, but the patch needs to be brought up to date after the changes for bug 450916. Can you do that?
Keywords: checkin-needed
I'm a little concerned about what this does to performance given we already double buffer in this code.  Do we now triple buffer?
No, he's taking out the existing double buffering. I'm still worried about what that would do for performance, since in bug 450916 we apparently got some perf win by caching the backbuffer and I don't know if GTK will do that itself.
(In reply to comment #3)
> I'm not sure what code you were working from, but the patch needs to be brought
> up to date after the changes for bug 450916. Can you do that?

Sorry, patched a tarball of xulrunner 1.9.0.2. I could rebase the patch, though we are probably not going to need this because of the patch in http://bugzilla.gnome.org/show_bug.cgi?id=566535 .

So right now, and supposing that other patch gets accepted into gtk, I would recommend to mozilla folks that decide if this patch is useful based on other criteria than gtk_widget_get_snapshot working or not.

The bug assignee didn't login in Bugzilla in the last 7 months.
:stransky, could you have a look please?
For more information, please visit auto_nag documentation.

Assignee: tomeu → nobody
Status: ASSIGNED → NEW
Flags: needinfo?(stransky)
Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(stransky)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: