Closed Bug 1333720 Opened 7 years ago Closed 7 years ago

Unknown/Unsupported widget type 13/17 with firefox-52.0b1 compiled with --enable-default-toolkit=cairo-gtk2

Categories

(Core :: Widget: Gtk, defect)

52 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla54
Tracking Status
firefox52 --- fixed
firefox-esr52 52+ fixed
firefox53 --- fixed
firefox54 --- fixed

People

(Reporter: james-p, Assigned: james-p)

References

Details

(Whiteboard: tpi:- [npotb])

Attachments

(1 file, 2 obsolete files)

I've rebuilt firefox-52.0b1 on CentOS 6.8 with '--enable-default-toolkit=cairo-gtk2' (as CentOS 6 doesn't support gtk3)

When I run firefox, it spews out repeated messages to the terminal:

** (firefox:23946): WARNING **: Unknown widget type: 13
** (firefox:23946): WARNING **: Unknown widget type: 17
** (firefox:23946): WARNING **: Unsupported widget type: 13
** (firefox:23946): WARNING **: Unsupported widget type: 17

These come from moz_gtk_get_widget_border() and moz_gtk_widget_paint() in widget/gtk/gtk2drawing.c and these widget types (13 and 17) correspond to the WidgetNodeType's MOZ_GTK_SCROLLBAR_TROUGH_HORIZONTAL and MOZ_GTK_SCROLLBAR_TROUGH_VERTICAL defined in widget/gtk/gtkdrawing.h

I can 'fix' this by adding these two types in the same way as for MOZ_GTK_SCROLLBAR_HORIZONTAL and MOZ_GTK_SCROLLBAR_VERTICAL - see attached patch - no idea if this the correct way to handle these cases?
Whiteboard: tpi:-
[Tracking Requested - why for this release]:

I realize builds provided by Mozilla don't use gtk2 (and gtk2 will be removed in future releases), but I'm just wondering if my 'fix' is sufficient to solve this issue? - as I would like to be able to use my own build of ESR 52 on CentOS 6
Comment on attachment 8830219 [details] [diff] [review]
Possible patch to 'fix' Unknown/Unsupported widget type 13/17

This change to moz_gtk_get_widget_border to use the existing fallback should be fine.

moz_gtk_widget_paint() should just no-op and return MOZ_GTK_SUCCESS for the two new entries (instead of painting the trough, despite the name of the function), because the trough is already painted.
Attached patch New patch based on comment 2 (obsolete) — Splinter Review
Thanks - here is a new patch - that appears to work for me
Attachment #8830219 - Attachment is obsolete: true
Comment on attachment 8836714 [details] [diff] [review]
New patch based on comment 2

Thanks.  Are you able to add an author and commit message to this patch please.
https://developer.mozilla.org/en-US/docs/Mercurial/Using_Mercurial#Commit_Message_Conventions

If you don't want to clone the repository, you can hand edit to match mercurial format patches.  Date, Node ID, Parent, and MozReview-Commit-ID lines are not required, but otherwise follow the format of
https://hg.mozilla.org/mozilla-central/raw-rev/6cefe01ca774
Attachment #8836714 - Flags: review+
Hand crafted mercurial format patch - hope this is OK?
Attachment #8836714 - Attachment is obsolete: true
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: checkin-needed
Whiteboard: tpi:- → tpi:- [npotb]
Assignee: nobody → james-p
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/dbba20877998
Support Unknown/Unsupported widget type 13 and 17. r=karlt
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/dbba20877998
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
Is this also going to be added to firefox 52 ?

Adding it to 54 is not really necessary - as the 'cairo-gtk2' build option has been removed in 54 (and 53) - see bug 1278282

However, it is needed for 52 (and ESR 52)
Blocks: 1324256
Comment on attachment 8838625 [details] [diff] [review]
Support Unknown/Unsupported widget type 13 and 17

Approval Request Comment
[Feature/Bug causing the regression]:
bug 1324256
[User impact if declined]:
Messages frequently spamming the error log in (non-default) GTK2 builds, and potential for uninitialized variables used in layout.
Mozilla builds use GTK3 and GTK2 builds are discouraged, but older enterprise distributions are hoping to use GTK2 builds of ESR52.

[Is this code covered by automated tests?]:
No.
[Has the fix been verified in Nightly?]:
N/A. GTK2 builds are not a configure option on Nightly.
[Needs manual test from QE? If yes, steps to reproduce]: 
No.
[List of other uplifts needed for the feature/fix]:
None.
[Is the change risky?]:
No.
[Why is the change risky/not risky?]:
NPOTB.
[String changes made/needed]:
None.
Attachment #8838625 - Flags: approval-mozilla-beta?
Comment on attachment 8838625 [details] [diff] [review]
Support Unknown/Unsupported widget type 13 and 17

gtk2 fix, beta52+, should be in b9
Attachment #8838625 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment on attachment 8838625 [details] [diff] [review]
Support Unknown/Unsupported widget type 13 and 17

Let's get this in aurora as well, as long as this code still exists...
Attachment #8838625 - Flags: approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.