Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » U++ community news and announcements » MILESTONE: gtk3 replaces gtk2 as default linux backend
MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52902] Fri, 10 January 2020 10:38 Go to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
I have reached an important milestone, commiting gtk3 branch (which I have been developing for the last couple of month) into U++ trunk.

This replaces gtk2 as our backend (BTW, small explanation here for future references: U++ is still 'emulated' GUI, with its own set of widgets; we are using gtk just as interface to host system, basically only top-level windows and events. The reason for using gtk3 as backend is mostly for improved integration).

With this backend I have also taken slightly different path for chameleon - we are now using only several basic 'looks' from gtk3 (namely shape of basic buttons, check/option boxes, menu looks, scrollbars, standard font and GUI colors) and generate rest (e.g. comboboxes) as "synthetic" GUI based on these. That should fix many small visual glitches that have plagued U++ in the past, especially with some exotic theming. Plus, unlike gtk2, gtk3 has support for UHD mode, so looks much better on my LCD Smile

Minimal version required for gtk3 is 3.8 - that accidentally coincides in historic timeline with C++11 support availability; for now however at least 3.22 (~2017) is required for full chameleon support. I also plan to develop some nice new default clean theme to replace that old XP look which was our fallback look for more than 10 years... that will probably be the theme for pre-3.22 gtk3 and definitely for plain X11.

It will take a month or two to mature this, please test & report problems...
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52903 is a reply to message #52902] Fri, 10 January 2020 10:49 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3355
Registered: August 2008
Senior Veteran
Great, thank you!

Best regards
Iñaki
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52904 is a reply to message #52902] Fri, 10 January 2020 11:05 Go to previous messageGo to next message
Oblivion is currently offline  Oblivion
Messages: 1091
Registered: August 2007
Senior Contributor
Hello Mirek,

This is great news, thank you!

I'll have the chance to start testing the new backend -mainly with terminal ctrl- extensively, from the next week on.
I'll report any problems I encounter.

Best regards,
Oblivion.



Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52905 is a reply to message #52902] Fri, 10 January 2020 13:28 Go to previous messageGo to next message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
Hi!

Thanks Mirek! This was great progress!

In order to make it compile the libgtk-3-dev needs to be installed. As a consequence, the build requirements on page https://www.ultimatepp.org/www$uppweb$uppx11$en-us.html need to be updated accordingly, e.g.:

sudo apt-get install libgtk-3-dev


Best regards,

Tom
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52906 is a reply to message #52902] Fri, 10 January 2020 13:33 Go to previous messageGo to next message
Sender Ghost is currently offline  Sender Ghost
Messages: 301
Registered: November 2008
Senior Member
Hello.

mirek wrote on Fri, 10 January 2020 09:38
please test & report problems...

I briefly tested examples/AddressBook application (based on 13848 svn revision) for GTK 3.22.30 on FreeBSD 10.4 and Fluxbox 1.3.7 window manager. Default Adwaita theme.

Contents of "~/.config/gtk-3.0/settings.ini" file:
[Settings]
gtk-font-name=Tahoma 10
gtk-button-images=1
gtk-menu-images=1

Looks like, there are issues with vertical scrollbar for ArrayCtrl, which is somehow blurred.
https://i.postimg.cc/9zT2zqDh/Address-Book.png
The Option widget on Search tab looks different (probably doesn't have background image), especially for disabled item.
https://i.postimg.cc/HV9C9D0v/Address-Book-search-tab.png
The "File" item in menubar have different colors and possible issues after mouse hovering on it, compared to other GTK 3 applications.
https://i.postimg.cc/bshhnNn2/Address-Book-after-hovering-on-menubar-item.png
Some screenshots for gtk3-demo-application:
https://i.postimg.cc/fVWQH2Bz/gtk3-demo-application.png https://i.postimg.cc/VJ7Q2qVj/gtk3-demo-application-about.png
and gtk3-widget-factory application for possible comparison:
https://i.postimg.cc/PL9G5thJ/gtk3-widget-factory-page-1.png https://i.postimg.cc/KkM6KdvN/gtk3-widget-factory-page-2.png https://i.postimg.cc/WDhLVdBx/gtk3-widget-factory-page-3.png
Screenshot for Mozilla Firefox v62.0.3, just to show how vertical scrollbar may look like:
https://i.postimg.cc/TKzRwqTn/Mozilla-Firefox-v62-0-3.png
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52907 is a reply to message #52906] Fri, 10 January 2020 14:45 Go to previous messageGo to next message
Sender Ghost is currently offline  Sender Ghost
Messages: 301
Registered: November 2008
Senior Member
Some screenshots for TheIDE on GTK 3.22.30:
https://i.postimg.cc/BtqdWxbY/The-IDE-gtk3.png
The "Configuration flags" dialog (for ".NOGTK GUI" main package configuration):
https://i.postimg.cc/MvVK31rP/The-IDE-Configuration-flags.png

The "Package organizer" dialog on GTK 3.22.30:
https://i.postimg.cc/Q9qw9M4J/The-IDE-Package-organizer-gtk3.png
and on GTK 2.24.32:
https://i.postimg.cc/n9c5vtNb/The-IDE-Package-organizer-gtk2.png

Edit (2020.01.20):
New screenshots for 13851 svn revision:
The search tab for examples/AddressBook application:
https://i.postimg.cc/fSzLqSsP/Address-Book-r13851.png
TheIDE's "Package organizer" dialog:
https://i.postimg.cc/hhcft6m0/The-IDE-Package-organizer-r13851.png

The upptst/TestChStyle application:
Standard:
https://i.postimg.cc/bGP9YL9S/Test-Ch-Style-Standard-r13851.png
Classic:
https://i.postimg.cc/CZ4HRDcP/Test-Ch-Style-Classic-r13851.png
Host:
https://i.postimg.cc/mz23CDqb/Test-Ch-Style-Host-r13851.png

[Updated on: Sat, 11 January 2020 04:42]

Report message to a moderator

Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52908 is a reply to message #52907] Sat, 11 January 2020 12:48 Go to previous messageGo to next message
coolman is currently offline  coolman
Messages: 114
Registered: April 2006
Location: Czech Republic
Experienced Member
Hi,

IDE build:
- Ubuntu 18.04
- clang (clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final))

There is a problem with the StaticText and the Option in the Layout edit. Text is not displayed. But it is correct when the application is executed. See attached screenshot.

BR, Radek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52911 is a reply to message #52908] Sat, 11 January 2020 18:08 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
coolman wrote on Sat, 11 January 2020 12:48
Hi,

IDE build:
- Ubuntu 18.04
- clang (clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final))

There is a problem with the StaticText and the Option in the Layout edit. Text is not displayed. But it is correct when the application is executed. See attached screenshot.

BR, Radek


Hopefully fixed.

Also scrollbars should be nicer in more themes.

Mirek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52912 is a reply to message #52911] Sat, 11 January 2020 19:39 Go to previous messageGo to next message
coolman is currently offline  coolman
Messages: 114
Registered: April 2006
Location: Czech Republic
Experienced Member
mirek wrote on Sat, 11 January 2020 18:08
coolman wrote on Sat, 11 January 2020 12:48
Hi,

IDE build:
- Ubuntu 18.04
- clang (clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final))

There is a problem with the StaticText and the Option in the Layout edit. Text is not displayed. But it is correct when the application is executed. See attached screenshot.

BR, Radek


Hopefully fixed.

Also scrollbars should be nicer in more themes.



Hi,

Scrollbars are better. But StaticText and Option still have the same problem. Text is not displayed in the Layout editor. I also found that Label and LabelBox have the same problem.

BR, Radek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52913 is a reply to message #52912] Sat, 11 January 2020 20:52 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
coolman wrote on Sat, 11 January 2020 19:39

Scrollbars are better. But StaticText and Option still have the same problem. Text is not displayed in the Layout editor. I also found that Label and LabelBox have the same problem.


Sorry, forgot to commit. Should be fine now, rev 13681.

Mirek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52914 is a reply to message #52913] Sat, 11 January 2020 21:26 Go to previous messageGo to next message
Klugier is currently offline  Klugier
Messages: 1075
Registered: September 2012
Location: Poland, Kraków
Senior Contributor
Hello Mirek,

While compiling new version I see a lot of warnings that should be eliminated:
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp: In function 'void Upp::_DBG_Ungrab()':
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:24:37: warning: 'void gdk_pointer_ungrab(guint32)' is deprecated: Use 'gdk_device_ungrab' instead [-Wdeprecated-declarations]
   24 |  gdk_pointer_ungrab(GDK_CURRENT_TIME);
      |                                     ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:100:15: note: declared here
  100 | void          gdk_pointer_ungrab     (guint32       time_);
      |               ^~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:24:37: warning: 'void gdk_pointer_ungrab(guint32)' is deprecated: Use 'gdk_device_ungrab' instead [-Wdeprecated-declarations]
   24 |  gdk_pointer_ungrab(GDK_CURRENT_TIME);
      |                                     ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:100:15: note: declared here
  100 | void          gdk_pointer_ungrab     (guint32       time_);
      |               ^~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp: In static member function 'static void Upp::Ctrl::PanicMsgBox(const char*, const char*)':
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:30:28: warning: 'gboolean gdk_pointer_is_grabbed()' is deprecated: Use 'gdk_display_device_is_grabbed' instead [-Wdeprecated-declarations]
   30 |  if(gdk_pointer_is_grabbed())
      |                            ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:104:15: note: declared here
  104 | gboolean      gdk_pointer_is_grabbed (void);
      |               ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:30:28: warning: 'gboolean gdk_pointer_is_grabbed()' is deprecated: Use 'gdk_display_device_is_grabbed' instead [-Wdeprecated-declarations]
   30 |  if(gdk_pointer_is_grabbed())
      |                            ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:104:15: note: declared here
  104 | gboolean      gdk_pointer_is_grabbed (void);
      |               ^~~~~~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:31:33: warning: 'void gdk_pointer_ungrab(guint32)' is deprecated: Use 'gdk_device_ungrab' instead [-Wdeprecated-declarations]
   31 |   gdk_pointer_ungrab(CurrentTime);
      |                                 ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:100:15: note: declared here
  100 | void          gdk_pointer_ungrab     (guint32       time_);
      |               ^~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:31:33: warning: 'void gdk_pointer_ungrab(guint32)' is deprecated: Use 'gdk_device_ungrab' instead [-Wdeprecated-declarations]
   31 |   gdk_pointer_ungrab(CurrentTime);
      |                                 ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:50,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkmain.h:100:15: note: declared here
  100 | void          gdk_pointer_ungrab     (guint32       time_);
      |               ^~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp: In function 'void Upp::InitGtkApp(int, char**, const char**)':
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:70:61: warning: 'void gdk_threads_set_lock_functions(GCallback, GCallback)' is deprecated [-Wdeprecated-declarations]
   70 |  gdk_threads_set_lock_functions(EnterGuiMutex, LeaveGuiMutex);
      |                                                             ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:61,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkthreads.h:50:10: note: declared here
   50 | void     gdk_threads_set_lock_functions       (GCallback enter_fn,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:70:61: warning: 'void gdk_threads_set_lock_functions(GCallback, GCallback)' is deprecated [-Wdeprecated-declarations]
   70 |  gdk_threads_set_lock_functions(EnterGuiMutex, LeaveGuiMutex);
      |                                                             ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:61,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkthreads.h:50:10: note: declared here
   50 | void     gdk_threads_set_lock_functions       (GCallback enter_fn,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:71:19: warning: 'void gdk_threads_init()' is deprecated [-Wdeprecated-declarations]
   71 |  gdk_threads_init();
      |                   ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:61,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkthreads.h:44:10: note: declared here
   44 | void     gdk_threads_init                     (void);
      |          ^~~~~~~~~~~~~~~~
In file included from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:522:
/home/klugier/upp/uppsrc/CtrlCore/GtkApp.cpp:71:19: warning: 'void gdk_threads_init()' is deprecated [-Wdeprecated-declarations]
   71 |  gdk_threads_init();
      |                   ^
In file included from /usr/include/gtk-3.0/gdk/gdk.h:61,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from /home/klugier/upp/uppsrc/CtrlCore/Gtk.h:12,
                 from /home/klugier/upp/uppsrc/CtrlCore/CtrlCore.h:49,
                 from /home/klugier/upp/uppsrc/CtrlCore/SystemDraw.cpp:1,
                 from /home/klugier/upp.out/CtrlCore/GCC.Blitz.Gui.Mt.Shared/$blitz.cpp:3:
/usr/include/gtk-3.0/gdk/gdkthreads.h:44:10: note: declared here
   44 | void     gdk_threads_init                     (void);
      |          ^~~~~~~~~~~~~~~~
CtrlCore: 61 file(s) built in (0:05.19), 85 msecs / file, duration = 12061 msecs, parallelization 61%
ide: 64 file(s) built in (0:34.03), 531 msecs / file, duration = 39637 msecs, parallelization 24%
Linking...
/home/klugier/upp/theide (13145136 B) linked in (0:00.95)


Moreover, the tooltip text is not visible on Manjaro KDE. I also agree that there is a problem with the scrollbars - they are not emulated ideally.

index.php?t=getfile&id=5973&private=0

Sincerely,
Klugier


U++ - one framework to rule them all.
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52915 is a reply to message #52913] Sun, 12 January 2020 08:19 Go to previous messageGo to next message
coolman is currently offline  coolman
Messages: 114
Registered: April 2006
Location: Czech Republic
Experienced Member
mirek wrote on Sat, 11 January 2020 20:52
coolman wrote on Sat, 11 January 2020 19:39

Scrollbars are better. But StaticText and Option still have the same problem. Text is not displayed in the Layout editor. I also found that Label and LabelBox have the same problem.


Sorry, forgot to commit. Should be fine now, rev 13681.

Mirek


Hi, it is OK now, thank you.

Radek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52916 is a reply to message #52914] Sun, 12 January 2020 13:36 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Klugier wrote on Sat, 11 January 2020 21:26
Hello Mirek,

While compiling new version I see a lot of warnings that should be eliminated:


Well, most important warnings of those are about gtk3 more or less dropping support for multithreading - if remember some history of U++, we were at phase where the only thread eligible to do GUI was the main thread, then we went to some limited possibility to do things from other threads. If other thread was to do something in GUI, you had to PostCallback.

Interestingly, gtk just went in the exactly opposite direction - doing some GUI stuff from other threads is now deprecated and dropped in gtk4 and the recommend approach is to use their's PostCallback equivalent.

Now I have some ideas how to deal with it, but it will take some time.

(Plus of course there are some easier warnings to fixe, 'todo').

Quote:

Moreover, the tooltip text is not visible on Manjaro KDE. I also agree that there is a problem with the scrollbars - they are not emulated ideally.


Can you post tooltip screenshot? If not, can you describe colors?

Scrollbars I can fix. Would be nice to know which engine is that though...

Mirek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52917 is a reply to message #52914] Sun, 12 January 2020 13:53 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Klugier wrote on Sat, 11 January 2020 21:26
Moreover, the tooltip text is not visible on Manjaro KDE. I also agree that there is a problem with the scrollbars - they are not emulated ideally.


What about now?
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52918 is a reply to message #52906] Sun, 12 January 2020 15:03 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Sender Ghost wrote on Fri, 10 January 2020 13:33
Hello.
I briefly tested examples/AddressBook application (based on 13848 svn revision) for GTK 3.22.30 on FreeBSD 10.4 and Fluxbox 1.3.7 window manager. Default Adwaita theme.


I believe that with possible exception of scrollbars width, these should be now fixed.

Mirek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52919 is a reply to message #52918] Sun, 12 January 2020 17:58 Go to previous messageGo to next message
Sender Ghost is currently offline  Sender Ghost
Messages: 301
Registered: November 2008
Senior Member
mirek wrote on Sun, 12 January 2020 14:03
I believe that with possible exception of scrollbars width, these should be now fixed.

Yes, the menubar and scrollbars looks much better now, if compare to other GTK 3 applications. Thanks.

New screenshots for 13869 svn revision:
TheIDE:
https://i.postimg.cc/K4J94nFY/The-IDE-r13869.png
TheIDE's "Package organizer":
https://i.postimg.cc/y3YvvNhB/The-IDE-Package-organizer-r13869.png
examples/AddressBook:
https://i.postimg.cc/Snw1kk47/Address-Book-r13869.png
upptst/TestChStyle:
- Standard:
https://i.postimg.cc/zLKtf6Xm/Test-Ch-Style-Standard-r13869.png
- Classic:
https://i.postimg.cc/qhrm6wzN/Test-Ch-Style-Classic-r13869.png
- Host:
https://i.postimg.cc/XGgsf5CQ/Test-Ch-Style-Host-r13869.png

There is a difference (marked with red rectangle) between OptionBox of TestChStyle and checkbutton of gtk3-widget-factory. The ✔ mark of OptionBox looks more blurry compared to checkbutton.
https://i.postimg.cc/py2G2sw7/gtk3-widget-factory-and-Test-Ch-Style-marked.png
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52920 is a reply to message #52919] Mon, 13 January 2020 08:26 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3355
Registered: August 2008
Senior Veteran
Please review GLCtrl. Now Reference/OpenGL compiling fails with these errors:
- GtkGLCtrl.cpp:46:39: error: 'GdkDrawable' was not declared in this scope
- GtkGLCtrl.cpp:46:13: error: 'gdk_x11_drawable_get_xid' was not declared in this scope
- GtkGLCtrl.cpp:49:15: error: 'gdk_x11_drawable_get_xdisplay' was not declared in this scope


Best regards
Iñaki
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52926 is a reply to message #52920] Mon, 13 January 2020 15:19 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
koldo wrote on Mon, 13 January 2020 08:26
Please review GLCtrl. Now Reference/OpenGL compiling fails with these errors:
- GtkGLCtrl.cpp:46:39: error: 'GdkDrawable' was not declared in this scope
- GtkGLCtrl.cpp:46:13: error: 'gdk_x11_drawable_get_xid' was not declared in this scope
- GtkGLCtrl.cpp:49:15: error: 'gdk_x11_drawable_get_xdisplay' was not declared in this scope


Should be now fixed.

Mirek
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52928 is a reply to message #52926] Mon, 13 January 2020 22:11 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3355
Registered: August 2008
Senior Veteran
Thank you. It compiles and runs perfectly.

Best regards
Iñaki
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend [message #52930 is a reply to message #52926] Tue, 14 January 2020 09:21 Go to previous messageGo to previous message
Tom1
Messages: 1212
Registered: March 2007
Senior Contributor
Hi,

My OpenGL (GLCtrl) based applications now crash on startup. I did a full rebuild, but still the result is this:

tom@tom-LM-WMV:~/upp.out/program52/CLANG.Gui.Shared$ ./GLModeler 
(GLModeler:5955): Gtk-ERROR **: 10:07:31.280: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported
Trace/breakpoint trap (core dumped)
tom@tom-LM-WMV:~/upp.out/program52/CLANG.Gui.Shared$


Here's the backtrace:

/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
g_log_writer_default () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
g_log_structured_array () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
g_log_structured_standard () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
/usr/lib/x86_64-linux-gnu/libgtk-3.so.0
g_option_context_parse () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
gtk_parse_args () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
gtk_init_check () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
gtk_init () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
Upp::InitGtkApp (argc=1, argv=0x7fffffffe448, envptr=0x7fffffffe458) at /home/tom/upp.src/uppsrc/CtrlCore/GtkApp.cpp:74
main (argc=1, argv=0x7fffffffe448, envptr=0x7fffffffe458) at /mnt/hgfs/program52/GLModeler/GLModeler.cpp:3


Am I doing something wrong here? (I have not changed anything in my code and it used to work on Linux. It still works on Windows.)

Best regards,

Tom
Previous Topic: Happy New Year 2020
Next Topic: ide now has multiple Find in files outputs
Goto Forum:
  


Current Time: Thu Mar 28 20:36:34 CET 2024

Total time taken to generate the page: 0.01409 seconds