Bug 486068 - [GTK3.20+] Allocation warnings printed in error console
Summary: [GTK3.20+] Allocation warnings printed in error console
Status: REOPENED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 4.8   Edit
Hardware: PC Linux
: P3 normal with 10 votes (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 245544 548480 (view as bug list)
Depends on:
Blocks: 494883 518143 535255
  Show dependency tree
 
Reported: 2016-01-18 15:58 EST by Eric Williams CLA
Modified: 2020-12-01 22:49 EST (History)
32 users (show)

See Also:


Attachments
Snippet that causes failed assertion on GtkScrollbar (772 bytes, text/plain)
2017-06-12 14:15 EDT, Ian Pun CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Williams CLA 2016-01-18 15:58:14 EST
On Wayland, many of the following warnings are printed in the error console:

(SWT:7396): Gtk-WARNING **: Allocating size to GtkFrame 0x7f3228a387f0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

This most likely stems from some sort of bug in the SWT sizing machinery that needs to be treated differently on Wayland.
Comment 1 Leo Ufimtsev CLA 2016-02-04 16:24:22 EST
Eric reproduced it on non wayland env. Seems to be related just to latest gtk builds.
Comment 2 Eclipse Genie CLA 2016-02-16 13:15:44 EST
New Gerrit change created: https://git.eclipse.org/r/66713
Comment 4 Alexander Kurtakov CLA 2016-02-17 10:01:43 EST
Pushed to master.
Comment 5 Eric Williams CLA 2016-05-19 08:32:33 EDT
Still some allocation warnings in the console for GTK3.20. For example, this is printed when ControlExample runs:

(SWT:9780): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(SWT:9780): Gtk-WARNING **: Negative content width -17 (allocation 1, extents 9x9) while allocating gadget (node entry, owner GtkEntry)

(SWT:9780): Gtk-WARNING **: Negative content width -6 (allocation 1, extents 4x3) while allocating gadget (node toolbar, owner GtkToolbar)

(SWT:9780): Gtk-WARNING **: Negative content width -6 (allocation 1, extents 4x3) while allocating gadget (node toolbar, owner GtkToolbar)

(SWT:9780): Gtk-WARNING **: Negative content width -6 (allocation 1, extents 4x3) while allocating gadget (node toolbar, owner GtkToolbar)

(SWT:9780): Gtk-WARNING **: Negative content width -6 (allocation 1, extents 4x3) while allocating gadget (node toolbar, owner GtkToolbar)

(SWT:9780): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(SWT:9780): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar
Comment 6 Dennis Flaherty CLA 2016-10-13 23:16:03 EDT
(eog:25201): Gtk-WARNING **: Allocating size to EogStatusbar 0x5638078b8ce0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?
Comment 7 Stefan CLA 2016-12-07 12:35:27 EST
These messages may also happen without running on Wayland (so you may consider this off topic) and this is what helped:
export SWT_GTK3=0
/opt/eclipse/eclipse
according to https://www.eclipse.org/forums/index.php/t/1081230/
This also resolved long delays for dialogs showing up when browsing Windows -> Preferences.
Comment 8 Christian Stadelmann CLA 2016-12-11 13:52:17 EST
(In reply to Stefan from comment #7)
> export SWT_GTK3=0

In case you'll ever want to use the internal browser I suggest you don't use this workaround. Here's why:
1. setting `SWT_GTK3=0` enforces SWT to use Gtk+ 2.x
2. SWT with Gtk+ 2.x can run the internal web browser with WebKit1 only. Gtk+ 3.x can run either WebKit1 or WebKit2.
3. Webkit1 is mostly unmaintained with dozens or hundreds of known security bugs.

So you really only should continue using SWT with Gtk+ 2.x if you want to get hacked.
Comment 9 Eric Williams CLA 2016-12-20 15:29:35 EST
*** Bug 245544 has been marked as a duplicate of this bug. ***
Comment 10 Eclipse Genie CLA 2017-05-11 17:04:03 EDT
New Gerrit change created: https://git.eclipse.org/r/96900
Comment 11 Alexander Kurtakov CLA 2017-05-23 03:14:58 EDT
Move out of 4.7.
Comment 12 Ian Pun CLA 2017-06-12 14:15:57 EDT
Created attachment 268870 [details]
Snippet that causes failed assertion on GtkScrollbar

This is seen after GTK3.20. The reason is that the preferred size of the text widget with Vertical scrollbar is more than 30 (in this case). We set it to 30 anyways and so everytime there is a redraw, it will cause the GTK Critical error.
Comment 13 Eclipse Genie CLA 2017-06-12 16:55:16 EDT
New Gerrit change created: https://git.eclipse.org/r/99177
Comment 14 Eclipse Genie CLA 2017-06-22 10:30:43 EDT
New Gerrit change created: https://git.eclipse.org/r/99871
Comment 16 Leo Ufimtsev CLA 2017-06-23 12:21:54 EDT
Are there any other allocation warnings left or can we close this guy?
Comment 17 Eric Williams CLA 2017-06-23 12:28:23 EDT
(In reply to Leo Ufimtsev from comment #16)
> Are there any other allocation warnings left or can we close this guy?

Yes there are still many. The commit in comment 15 only fixes a small corner case in the Group widget.
Comment 18 Eclipse Genie CLA 2017-06-23 15:33:36 EDT
New Gerrit change created: https://git.eclipse.org/r/99978
Comment 20 Eric Williams CLA 2017-06-23 15:40:42 EDT
(In reply to Eclipse Genie from comment #19)
> Gerrit change https://git.eclipse.org/r/99978 was merged to [master].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/
> ?id=da175162ba954ed961bdd5a52adabbf907a8c4cb

Fixed a typo that broke Group sizing. All good now.
Comment 22 Eric Williams CLA 2017-07-21 15:53:27 EDT
(In reply to Eclipse Genie from comment #21)
> Gerrit change https://git.eclipse.org/r/99177 was merged to [master].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/
> ?id=02caa3d3e3329b6e6fb4a2bd1918747a3ca3ba20

This fixes roughly 50% of the warnings, namely those of this variety:

(SWT:9780): Gtk-WARNING **: Negative content width -6 (allocation 1, extents 4x3) while allocating gadget (node toolbar, owner GtkToolbar)

Will continue to investigate the other warnings.
Comment 23 Dani Megert CLA 2017-07-24 00:26:38 EDT
This causes a compile warning in our official build:

http://download.eclipse.org/eclipse/downloads/drops4/I20170723-2000/compilelogs/plugins/org.eclipse.swt.tests.gtk_3.106.0.v20170721-1733/@dot.html

WARNING in /Bug Snippets/org/eclipse/swt/tests/gtk/snippets/Bug519996_focusDisposeIssue.java
 (at line 18)
CCombo combo1 = new CCombo(shell, SWT.BORDER);
The value of the local variable combo1 is not used
Comment 24 Eric Williams CLA 2017-07-24 09:52:35 EDT
(In reply to Dani Megert from comment #23)
> This causes a compile warning in our official build:
> 
> http://download.eclipse.org/eclipse/downloads/drops4/I20170723-2000/
> compilelogs/plugins/org.eclipse.swt.tests.gtk_3.106.0.v20170721-1733/@dot.
> html
> 
> WARNING in /Bug
> Snippets/org/eclipse/swt/tests/gtk/snippets/Bug519996_focusDisposeIssue.java
>  (at line 18)
> CCombo combo1 = new CCombo(shell, SWT.BORDER);
> The value of the local variable combo1 is not used

I think you meant to file this under bug 519996. Anyway, Alex fixed the warning with

http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=21b3dc3ba9e3010caebed19fc34b973849def633
Comment 25 Dani Megert CLA 2017-07-24 23:27:37 EDT
(In reply to Eric Williams from comment #24)
> I think you meant to file this under bug 519996.

Yep, sorry.
Comment 26 Eclipse Genie CLA 2017-07-26 14:28:12 EDT
New Gerrit change created: https://git.eclipse.org/r/102021
Comment 28 Eric Williams CLA 2017-07-26 14:35:55 EDT
(In reply to Eclipse Genie from comment #27)
> Gerrit change https://git.eclipse.org/r/102021 was merged to [master].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/
> ?id=41e5f0cae406e9dc0e3dc390a82615f2b7eb11be

Merged Ian's snippet from comment 12 into the GTK specific bug snippets.
Comment 29 Eclipse Genie CLA 2017-07-26 17:03:28 EDT
New Gerrit change created: https://git.eclipse.org/r/102030
Comment 30 Daniel Wille CLA 2017-09-20 09:54:51 EDT
Forgive me for what is likely a very noob question - is there an easy way I could test some of the changes made by this ticket? Specifically, I'm looking for what URL I could use to access p2 artifacts. Also, would the location contain changes for just this ticket, or all in-progress work towards Oxygen.1 ? Thanks!
Comment 31 Eric Williams CLA 2017-09-20 10:03:58 EDT
(In reply to Daniel Wille from comment #30)
> Forgive me for what is likely a very noob question - is there an easy way I
> could test some of the changes made by this ticket? Specifically, I'm
> looking for what URL I could use to access p2 artifacts. Also, would the
> location contain changes for just this ticket, or all in-progress work
> towards Oxygen.1 ? Thanks!

If there is enough interest these changes can be backported into Oxygen -- currently this bug is (partially) fixed in 4.8.

As for a p2 URL, you would have to update your Eclipse platform to 4.8 since none of these fixes are in 4.7 (Oxygen). However the best bet to try out these fixes is to download the latest milestone build, 4.8 M2. To do so, go to:

http://download.eclipse.org/eclipse/downloads/
- Click on 4.8 M2.
- Find your platform in the "Eclipse SDK". Download the archive, extract it and
run the 'eclipse' binary.

Bear in mind that you will have to use a new workspace since I don't think the 4.7 workspace will work with a 4.8 Eclipse.
Comment 32 Devin Nelson CLA 2017-10-17 13:51:47 EDT
I want to tack on an additional request for backporting into Oxygen.2 if possible.  I support an RCP product that is currently getting hammered by these warning messages.  We typically can't update our underlying Eclipse version prior to the official release, and waiting until June 2018 for the fix would be tough.
Comment 33 Eric Williams CLA 2017-10-17 13:55:32 EDT
(In reply to Devin Nelson from comment #32)
> I want to tack on an additional request for backporting into Oxygen.2 if
> possible.  I support an RCP product that is currently getting hammered by
> these warning messages.  We typically can't update our underlying Eclipse
> version prior to the official release, and waiting until June 2018 for the
> fix would be tough.

No problem, I will backport the fix for Oxygen.2.
Comment 34 Eclipse Genie CLA 2017-10-17 14:06:34 EDT
New Gerrit change created: https://git.eclipse.org/r/110247
Comment 35 Devin Nelson CLA 2017-10-17 14:14:25 EDT
(In reply to Eric Williams from comment #33)
> (In reply to Devin Nelson from comment #32)
> > I want to tack on an additional request for backporting into Oxygen.2 if
> > possible.  I support an RCP product that is currently getting hammered by
> > these warning messages.  We typically can't update our underlying Eclipse
> > version prior to the official release, and waiting until June 2018 for the
> > fix would be tough.
> 
> No problem, I will backport the fix for Oxygen.2.


Awesome, thanks!
Comment 37 Eric Williams CLA 2017-10-17 14:27:01 EDT
(In reply to Eclipse Genie from comment #36)
> Gerrit change https://git.eclipse.org/r/110247 was merged to
> [R4_7_maintenance].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/
> ?id=61a598af4dfda586b27d87537bb2d015bd614ba1

It is done. I'm leaving this bug open since there are other warnings still floating around that need to be fixed.
Comment 38 Lars Vogel CLA 2017-11-09 16:17:05 EST
(In reply to Eric Williams from comment #37)
> It is done. I'm leaving this bug open since there are other warnings still
> floating around that need to be fixed.

As discussed via email list, Ubuntu 17.10 shows: (Eclipse:4358): GLib-CRITICAL **: g_base64_encode_step: assertion 'in
!= NULL' faile
Comment 39 Asher Martin CLA 2018-01-03 21:27:25 EST
There are two main bugs I'm seeing running with UBUNTU Cinnamon

***************
CLASS A ERRORS: 
***************
(Eclipse:16853): Gtk-WARNING **: Allocating size to GtkScrolledWindow 0x7f0d9e286770 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

***************
CLASS B ERRORS:
***************
(Eclipse:16853): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

Question: Are these related?  The size of my display is very small relative.

:)
Comment 40 Eric Williams CLA 2018-01-04 10:13:52 EST
(In reply to Asher Martin from comment #39)
> There are two main bugs I'm seeing running with UBUNTU Cinnamon
> 
> ***************
> CLASS A ERRORS: 
> ***************
> (Eclipse:16853): Gtk-WARNING **: Allocating size to GtkScrolledWindow
> 0x7f0d9e286770 without calling gtk_widget_get_preferred_width/height(). How
> does the code know the size to allocate?
> 
> ***************
> CLASS B ERRORS:
> ***************
> (Eclipse:16853): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size
> >= 0' failed in GtkScrollbar
> 
> Question: Are these related?  The size of my display is very small relative.
> 
> :)

Yes these are both related. They are not errors per se, they are merely warnings. Functionality isn't impeded.
Comment 41 Niraj Modi CLA 2018-05-17 10:32:03 EDT
If this bug is partially fixed, please close this and raise a new bug with pending issues or move it to 4.9.
Comment 42 Patrik Suzzi CLA 2018-07-07 17:08:30 EDT
I have the same issue with Eclipse Photon on Ubuntu: when I launch an inner Eclipse from my dev env, I get a long list of this messages. 

(Eclipse:4277): GLib-CRITICAL **: 23:05:10.408: g_base64_encode_step: assertion 'in != NULL' failed

Build ID information:

Eclipse SDK
Version: 4.9
Build id: I20180706-2000
OS: Linux, v.4.15.0-23-generic, x86_64 / gtk 3.22.30, WebKit 2.20.3
Java version: 1.8.0_171
Comment 43 Alois Zoitl CLA 2018-08-02 15:22:42 EDT
I see a bunch of these warnings in gtk 3.22.30 (Debian testing). Furthermore, and this may be another issue, Eclipse gets less and less usable (both Photon and Oxygen). I see things like the main menu disappearing, double clicks not working correctly (e.g., selection in trees), rearranging of view leading to completely black screens, sometimes Eclipse recovers sometimes not. Not sure if this is related to the warnings. 

Any tips how I can help to find the cause and fix it?

For example this is the warning output of an Eclipse Photon Modeling edition when rearanging a view:
(Eclipse:8245): GLib-GObject-WARNING **: 21:20:05.165: ../../../../gobject/gsignal.c:3492: signal name 'attributes-changed' is invalid for instance '0x7fb8bc8dc5e0' of type 'GtkTextViewAccessible'

(Eclipse:8245): Gdk-WARNING **: 21:20:11.967: Couldn't map window 0x7fb8bdf9b340 as subsurface because its parent is not mapped.

(Eclipse:8245): Gtk-CRITICAL **: 21:20:14.221: gtk_distribute_natural_allocation: assertion 'extra_space >= 0' failed

(Eclipse:8245): Gtk-CRITICAL **: 21:20:14.319: gtk_distribute_natural_allocation: assertion 'extra_space >= 0' failed
Gdk-Message: 21:20:24.176: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.176: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.313: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.313: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.321: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.321: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.346: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.346: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.486: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:24.486: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:25.323: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:25.323: Window 0x7fb8bc21c4b0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.404: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.404: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.526: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.526: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.543: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.543: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.587: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.587: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.778: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:27.778: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:28.502: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:28.502: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:31.917: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:31.917: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:32.349: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:32.349: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:32.855: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:32.855: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:35.057: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:35.057: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:35.508: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:35.508: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.061: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.061: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.769: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.769: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.819: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:37.819: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:38.044: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:38.044: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:40.583: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:40.583: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:40.618: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:40.618: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.062: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.062: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.090: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.090: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.446: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.446: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.464: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:20:41.464: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:03.392: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:03.392: Window 0x7fb8bde77980 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:13.966: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:13.966: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.150: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.150: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.315: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.315: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.421: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.421: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.561: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.561: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.704: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.704: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.839: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.839: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.992: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:14.992: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.142: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.142: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.281: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.281: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.418: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.418: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.540: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.540: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.774: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.774: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.870: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: 21:21:15.870: Window 0x7fb8bd246b10 is a temporary window without parent, application will not be able to position it on screen.
Comment 44 Xi Yan CLA 2018-08-03 11:23:27 EDT
(In reply to Alois Zoitl from comment #43)
> I see a bunch of these warnings in gtk 3.22.30 (Debian testing).
> Furthermore, and this may be another issue, Eclipse gets less and less
> usable (both Photon and Oxygen). I see things like the main menu
> disappearing, double clicks not working correctly (e.g., selection in
> trees), rearranging of view leading to completely black screens, sometimes
> Eclipse recovers sometimes not. Not sure if this is related to the warnings. 
> 
> Any tips how I can help to find the cause and fix it?
> 
> For example this is the warning output of an Eclipse Photon Modeling edition
> when rearanging a view:
> (Eclipse:8245): GLib-GObject-WARNING **: 21:20:05.165:
> ../../../../gobject/gsignal.c:3492: signal name 'attributes-changed' is
> invalid for instance '0x7fb8bc8dc5e0' of type 'GtkTextViewAccessible'
> 
> (Eclipse:8245): Gdk-WARNING **: 21:20:11.967: Couldn't map window
> 0x7fb8bdf9b340 as subsurface because its parent is not mapped.
> 
> (Eclipse:8245): Gtk-CRITICAL **: 21:20:14.221:
> gtk_distribute_natural_allocation: assertion 'extra_space >= 0' failed
> 
> (Eclipse:8245): Gtk-CRITICAL **: 21:20:14.319:
> gtk_distribute_natural_allocation: assertion 'extra_space >= 0' failed
> Gdk-Message: 21:20:24.176: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.176: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.313: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.313: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.321: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.321: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.346: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.346: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.486: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:24.486: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:25.323: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:25.323: Window 0x7fb8bc21c4b0 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.404: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.404: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.526: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.526: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.543: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.543: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.587: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.587: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.778: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:27.778: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:28.502: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:28.502: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:31.917: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:31.917: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:32.349: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:32.349: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:32.855: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:32.855: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:35.057: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:35.057: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:35.508: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:35.508: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.061: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.061: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.769: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.769: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.819: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:37.819: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:38.044: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:38.044: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:40.583: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:40.583: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:40.618: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:40.618: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.062: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.062: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.090: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.090: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.446: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.446: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.464: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:20:41.464: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:03.392: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:03.392: Window 0x7fb8bde77980 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:13.966: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:13.966: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.150: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.150: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.315: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.315: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.421: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.421: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.561: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.561: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.704: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.704: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.839: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.839: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.992: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:14.992: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.142: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.142: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.281: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.281: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.418: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.418: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.540: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.540: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.774: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.774: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.870: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.
> Gdk-Message: 21:21:15.870: Window 0x7fb8bd246b10 is a temporary window
> without parent, application will not be able to position it on screen.

These warnings are probably due to eclipse running Wayland backend. Can you try setting GDK_BACKEND=x11?
Comment 45 Alois Zoitl CLA 2018-08-03 13:47:33 EDT
(In reply to Xi Yan from comment #44)

> These warnings are probably due to eclipse running Wayland backend. Can you
> try setting GDK_BACKEND=x11?

Thank you for the fast response. Yes this is fixing my issues.  Sorry for posting to the wrong bug. Where and how can I support Wayland backend support for SWT?
Comment 46 Xi Yan CLA 2018-08-03 14:04:08 EDT
(In reply to Alois Zoitl from comment #45)
> (In reply to Xi Yan from comment #44)
> 
> > These warnings are probably due to eclipse running Wayland backend. Can you
> > try setting GDK_BACKEND=x11?
> 
> Thank you for the fast response. Yes this is fixing my issues.  Sorry for
> posting to the wrong bug. Where and how can I support Wayland backend
> support for SWT?

These warnings seems to due to popup windows not mapped to a parent, which needs to be addressed on Wayland. Might be related to 529022 and 532941.
Comment 47 Thomas Singer CLA 2018-08-03 16:38:20 EDT
(In reply to Xi Yan from comment #46)
> These warnings seems to due to popup windows not mapped to a parent, which
> needs to be addressed on Wayland. Might be related to bug 529022 and bug 532941.

Do I understand you correct: are these warnings Wayland bugs and can't be fixed by SWT?
Comment 48 Xi Yan CLA 2018-08-03 16:41:17 EDT
(In reply to Thomas Singer from comment #47)
> (In reply to Xi Yan from comment #46)
> > These warnings seems to due to popup windows not mapped to a parent, which
> > needs to be addressed on Wayland. Might be related to bug 529022 and bug 532941.
> 
> Do I understand you correct: are these warnings Wayland bugs and can't be
> fixed by SWT?

Sorry, what I mean is that SWT should fix these warnings when running on Wayland.
Comment 49 Lakshmi P Shanmugam CLA 2018-09-06 01:27:58 EDT
Resetting target. Please re-target as required.
Comment 50 Eric Williams CLA 2019-06-20 16:20:23 EDT
*** Bug 548480 has been marked as a duplicate of this bug. ***