Closed Bug 1213152 Opened 4 years ago Closed 2 years ago

Disable GTK3 in comm-release for SeaMonkey

Categories

(SeaMonkey :: Build Config, defect)

defect
Not set

Tracking

(seamonkey2.45+, seamonkey2.46?)

RESOLVED FIXED
seamonkey2.39
Tracking Status
seamonkey2.45 + ---
seamonkey2.46 ? ---

People

(Reporter: ewong, Assigned: ewong)

References

(Depends on 2 open bugs)

Details

Attachments

(4 files, 2 obsolete files)

Due to issues pertaining to the enabling of GTK3 (and also the fact
that both Firefox and TB have removed the GTK3 package from the
releng.manifest), we'll need to do that as well.
Attachment #8671719 - Flags: review?(bugspam.Callek)
Comment on attachment 8671719 [details] [diff] [review]
[tooltool] proposed patch(v1) [2.39 beta] [checked-in]

Looks reasonable

r=me a=comm-beta
Attachment #8671719 - Flags: review?(bugspam.Callek)
Attachment #8671719 - Flags: review+
Attachment #8671719 - Flags: approval-comm-beta+
Comment on attachment 8671719 [details] [diff] [review]
[tooltool] proposed patch(v1) [2.39 beta] [checked-in]

Pushed to comm-beta:
https://hg.mozilla.org/releases/comm-beta/rev/cc17ff4c7679
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → seamonkey2.39
Pushing for post-land-review
Attachment #8674124 - Flags: review?(bugspam.Callek)
Comment on attachment 8674124 [details] [diff] [review]
[tooltool] fix to replace the setup.sh.

Pushed to comm-beta:
https://hg.mozilla.org/releases/comm-beta/rev/8e5e4348ad9e
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
[Triage Comment]
Backed out http://hg.mozilla.org/releases/comm-beta/rev/8e5e4348ad9e

This patch will be for post-land-review.
Attachment #8674124 - Attachment is obsolete: true
Attachment #8674124 - Flags: review?(bugspam.Callek)
Attachment #8674634 - Flags: review?(bugspam.Callek)
Attachment #8674634 - Flags: approval-comm-beta+
Attachment #8674634 - Flags: approval-comm-beta+
Comment on attachment 8674634 [details] [diff] [review]
[tooltool] fix to replace setup.sh (v2) [checked-in]

[Approval Request Comment]
Regression caused by (bug #): 
User impact if declined: None for users; but automation fails to build.
Testing completed (on m-c, etc.): 
Risk to taking this patch (and alternatives if risky):
String changes made by this patch: None
Attachment #8674634 - Flags: approval-comm-beta?
Comment on attachment 8674634 [details] [diff] [review]
[tooltool] fix to replace setup.sh (v2) [checked-in]

Pushed to comm-beta:
http://hg.mozilla.org/releases/comm-beta/rev/8460ab5e4d5c
Attachment #8674634 - Attachment description: [tooltool] fix to replace setup.sh (v2) → [tooltool] fix to replace setup.sh (v2) [checked-in]
Apparently m-b has switched to gtk2. (bug 1227024)
Status: REOPENED → ASSIGNED
Attachment #8671719 - Attachment description: proposed patch(v1) → [tooltool] proposed patch(v1) [2.39 beta] [checked-in]
Comment on attachment 8691236 [details] [diff] [review]
[tooltool] proposed patch for 2.40 (c-r) (v1) [checked-in]

This was never pushed to comm-beta and now that c-r is 2.40,
this could just as well be causing the Linux* bustages.
Comment on attachment 8691236 [details] [diff] [review]
[tooltool] proposed patch for 2.40 (c-r) (v1) [checked-in]

[Approval Request Comment]
Regression caused by (bug #): 
User impact if declined:  cannot build in a Linux platform
Testing completed (on m-c, etc.): 
Risk to taking this patch (and alternatives if risky):
String changes made by this patch:
Attachment #8691236 - Attachment description: [tooltool] proposed patch for 2.40 (c-b) (v1) → [tooltool] proposed patch for 2.40 (c-r) (v1)
Attachment #8691236 - Flags: approval-comm-release?
Summary: Disable GTK3 in comm-beta for SeaMonkey → Disable GTK3 in comm-release for SeaMonkey
Target Milestone: seamonkey2.39 → seamonkey2.40
Target Milestone: seamonkey2.40 → seamonkey2.39
Attachment #8674634 - Flags: review?(bugspam.Callek) → review+
Attachment #8691236 - Flags: review?(bugspam.Callek)
Attachment #8691236 - Flags: review+
Attachment #8691236 - Flags: approval-comm-release?
Attachment #8691236 - Flags: approval-comm-release+
Attachment #8674634 - Flags: approval-comm-beta? → approval-comm-beta+
Comment on attachment 8691236 [details] [diff] [review]
[tooltool] proposed patch for 2.40 (c-r) (v1) [checked-in]

Pushed to comm-release:
https://hg.mozilla.org/releases/comm-release/rev/860e55fe632e
Attachment #8691236 - Attachment description: [tooltool] proposed patch for 2.40 (c-r) (v1) → [tooltool] proposed patch for 2.40 (c-r) (v1) [checked-in]
[Approval Request Comment]
Regression caused by (bug #): 1213152's c-r patch
User impact if declined: cannot bbuild Linux* w/ tooltool
Testing completed (on m-c, etc.): 
Risk to taking this patch (and alternatives if risky):
String changes made by this patch:
Attachment #8707773 - Flags: review?(bugspam.Callek)
Attachment #8707773 - Flags: approval-comm-release?
Comment on attachment 8707773 [details] [diff] [review]
[tooltool] setup.sh fix for bustage. [checked-in]

https://hg.mozilla.org/releases/comm-release/rev/d78e9b3b660a
Attachment #8709230 - Flags: review?(bugspam.Callek)
Attachment #8707773 - Attachment description: [tooltool] setup.sh fix for bustage. → [tooltool] setup.sh fix for bustage. [checked-in]
Duplicate of this bug: 1238460
Needs to be disabled again for the upcoming <s>2.44</s>2.45 release.
Flags: needinfo?(ewong)
(In reply to rsx11m from comment #18)
> Needs to be disabled again for the upcoming <s>2.44</s>2.45 release.

Short question: why? (afaik Fx from m-r already uses GTK3)
Because it seems to be incomplete for the SM default theme, which apparently relies heavily on the desktop theme providing styles for elements, which however many desktop themes don't style.

See Frank's posts in http://forums.mozillazine.org/viewtopic.php?f=3&t=2973875&start=180

It works for Firefox because apparently they've taken better care of such dependencies.
FWIW, OpenSUSE 13.2 provides Firefox 47.0 builds with GTK2 only as well in their repositories.
(In reply to rsx11m from comment #20)
> Because it seems to be incomplete for the SM default theme, which apparently
> relies heavily on the desktop theme providing styles for elements, which
> however many desktop themes don't style.
> 
> See Frank's posts in
> http://forums.mozillazine.org/viewtopic.php?f=3&t=2973875&start=180

Ok - I didn't notice any of these problems apparently because my desktop theme takes care of everything.
Just to, hopefully, clarify a couple of things. The non-appearance of scrollbar arrows is not a GTK3 bug, but the omission of just 2 lines of code in gtk.css by many Linux OS theme writers, especially Mint. It shows far more in browsers, but this omission is evident in other programs that have scrollbars and use GTK3, such as Nemo, a main file manager. As so many Linux theme writers have mucked this up (a 100% working default theme template would have helped) it is assumed by users to be a GTK3/OS or browser bug. It 'may' be possible to add the required 2 lines in SeaMonkey's chrome://global/content/bindings/scrollbar.xml#scrollbar.

The other glitch that has recently been pointed out to me, is menus without borders that blend into the background. That is not GTK3 one, where menu borders are pretty easy to code, but an old GTK2 one, where they are pretty difficult to code right. 

To fix that one, I suggest something like this - arrowscrollbox:not(.tabbrowser-arrowscrollbox) {
 border: 1px solid grey !important;} (that is a userChrome.css fix, so !important not required usually)  - doesn't interfere with or override native -moz-appearance menu OS coding, works with both light and dark native themes and doesn't mess up 3rd party SM themes. A manifest flag could be used to make it Linux OS specific, if required.  

My own suggestion on this bug is that we implement the above menu border fix and drop GTK3, until such a time that the Linux community has learned how to use it properly. GTK3 is actually a FAR better UI theming system than GTK2, but only if used correctly. In fairness, none of that Linux stuff is exactly easy to theme.
Thanks Frank, I've added the information of your first paragraph to the scroll-bar bug 1269145.
(In reply to rsx11m from comment #24)
> Thanks Frank, I've added the information of your first paragraph to the
> scroll-bar bug 1269145.

No problem. all that I wrote there is correct, but we can fix this! Add the following to SM's default scrollbars.css - 

scrollbarbutton[sbattr="scrollbar-up-bottom"],
scrollbarbutton[sbattr="scrollbar-down-top"] {
  display: none;
}
scrollbarbutton[sbattr="scrollbar-up-top"],
scrollbarbutton[sbattr="scrollbar-down-bottom"] {
  display: -moz-box !important;
}

Quick Reproduce: Put this theme on - https://addons.mozilla.org/en-us/seamonkey/addon/metal-lion-sea-monkey/?src=cb-dl-updated and any Linux OS theme that is known to vanish the scrollbar arrows. As expected, upon SM restart, arrows are gone and same with default, etc.

Now take the scrollbar.xpi that comes with that theme, which uses 'override' to, er, override the default scrollbar.css. Edit the scrollbars.css of the .xpi and add the above code around line 124. Save, restart, etc. the arrows are back and you're done. Putting a 'good' Linux theme on later has no adverse effect. 

Obviously, the code is added to default's scrollbar.css as a proper fix, but I'm spelling out the above method, so that other people can test this out for themselves. But, I've tested and can't break it. 

Lucky you linked to that scrollbar bug, I read the comments and picked up the fact that Early Bird was not getting whacked by this and that is where this fix comes from. :)
(In reply to rsx11m from comment #18)
> Needs to be disabled again for the upcoming <s>2.44</s>2.45 release.

Given Frank's response in comment #25, I'm guessing we don't need to
repeat that disable gtk3.
Flags: needinfo?(ewong)
I disagree with that conclusion; the scrollbar is one thing (and handled in a different bug which yet has to be solved), there are other issues with GTK3 which we should address in the default theme first before making GTK3 the standard.

Also, switching to GTK3 marks end of the line for those builds with older distros which don't support GTK3 (including still active long term support distros, which may or may not have their own builds).
Flags: needinfo?(ewong)
(In reply to rsx11m from comment #27)
> I disagree with that conclusion; the scrollbar is one thing (and handled in
> a different bug which yet has to be solved), there are other issues with
> GTK3 which we should address in the default theme first before making GTK3
> the standard.
> 
> Also, switching to GTK3 marks end of the line for those builds with older
> distros which don't support GTK3 (including still active long term support
> distros, which may or may not have their own builds).

Fair enough. 

So to clarify...  disable GTK3 in 2.45, right?  2.44 is pretty much a moot
point now.
Flags: needinfo?(ewong)
(In reply to Edmund Wong (:ewong) from comment #28)
> So to clarify...  disable GTK3 in 2.45, right?

Yes, please - assuming that 2.44 is skipped and thus can be won't-fixed.
Agreed
Depends on: 1312215
Comment on attachment 8709230 [details] [diff] [review]
[mozconfigs] remove no_tooltool=1 from mozconfigs.

This patch is no longer applicable as it was fixed in a 2.46 based
patch.
Attachment #8709230 - Attachment is obsolete: true
Attachment #8709230 - Flags: review?(bugspam.Callek)
Depends on: SM2.49-GTK3
gtk3 is now the default with 2.49.1. Can we close this one?
Flags: needinfo?(ewong)
(In reply to Frank-Rainer Grahl (:frg) from comment #32)
> Can we close this one?

I'd think so, unless we run into any (very late) roadblocks for switching to GTK3.
There is still meta bug 1367257 to keep track of pending issues yet to be solved.

What's with the review/approval requests for attachment 8707773 [details] [diff] [review]?
sure.. closing.
Status: ASSIGNED → RESOLVED
Closed: 4 years ago2 years ago
Flags: needinfo?(ewong)
Resolution: --- → FIXED
Attachment #8707773 - Flags: review?(bugspam.Callek)
Attachment #8707773 - Flags: approval-comm-release?
You need to log in before you can comment on or make changes to this bug.