Thanks Timo! I committed the changes last week.

Unfortunately I get tests failures when trying to build qtbase, but they
seem unrelated to my changes
(https://launchpad.net/~mitya57/+archive/ubuntu/test2/+build/10643352, I
get the same locally). Do you know anything about this?

** Description changed:

  Currently we are using appmenu-qt5 as our platform theme on desktop,
  however it has many disadvantages, which make me want to get rid of it:
  
  1) Its design is a hack: instead of the using normal QPA API for getting
  the menu, it retrieves the menu bar using QWidget::findChild, and then
  casts the pointer to QMenu*. The normal methods (which are getting
  called by Qt) remain empty stubs.
  
  2) It is preventing applications from using GTK+ theme integration, such
  as dialogs (I reported this as bug 1378935, but there is no easy way to
  fix that).
  
  3) It is not working with Qt Quick applications (because it expects a
  QtWidgets window; see also bug 1323853). The standard implementation
  will work with i.e. Qt Quick Controls 2 using apps (implemented in
  https://codereview.qt-project.org/142733).
  
- 4) Finally, it is mostly unmaintained: most patches since 2014 are
+ 4) It breaks other environments such as Plasma when installed: see bug
+ 1434516.
+ 
+ 5) Finally, it is mostly unmaintained: most patches since 2014 are
  authored by me, however I see no point continuing to develop that code.
  
  Recently, Shawn Rutledge and I have written a native implementation of
  what appmenu-qt5 provides (global menu and system tray), which is part
  of Qt. That code uses the normal API, is well maintained, and works
  better than appmenu-qt5 (or at least not worse).
  
  So I propose to drop appmenu-qt5 from default Ubuntu installations, and
  maybe later from archive too.
  
  Unfortunately we use Qt 5.6, and some of the needed patches are only in
  Qt 5.7, so I would like to backport them to our packaging:
  
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=f199bb9133fe0446 (will be in 
5.6.2 / 5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=488cf78e44947eff (will be in 
5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=b6a824d0a3b4fabd (will be in 
5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=e4d79e1fdeb6b26b (will be in 
5.7.0)
  
  Timo: if you have no objections, I will commit those patches to the
  packaging Git.
  
  After we do that, I will remove the appmenu-qt5 recommendation from
  indicator-appmenu (that is the only package referring to it).

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to qtbase-opensource-src in
Ubuntu.
https://bugs.launchpad.net/bugs/1612767

Title:
  Drop appmenu-qt5 from default installations

Status in indicator-appmenu package in Ubuntu:
  New
Status in qtbase-opensource-src package in Ubuntu:
  New

Bug description:
  Currently we are using appmenu-qt5 as our platform theme on desktop,
  however it has many disadvantages, which make me want to get rid of
  it:

  1) Its design is a hack: instead of the using normal QPA API for
  getting the menu, it retrieves the menu bar using QWidget::findChild,
  and then casts the pointer to QMenu*. The normal methods (which are
  getting called by Qt) remain empty stubs.

  2) It is preventing applications from using GTK+ theme integration,
  such as dialogs (I reported this as bug 1378935, but there is no easy
  way to fix that).

  3) It is not working with Qt Quick applications (because it expects a
  QtWidgets window; see also bug 1323853). The standard implementation
  will work with i.e. Qt Quick Controls 2 using apps (implemented in
  https://codereview.qt-project.org/142733).

  4) It breaks other environments such as Plasma when installed: see bug
  1434516.

  5) Finally, it is mostly unmaintained: most patches since 2014 are
  authored by me, however I see no point continuing to develop that
  code.

  Recently, Shawn Rutledge and I have written a native implementation of
  what appmenu-qt5 provides (global menu and system tray), which is part
  of Qt. That code uses the normal API, is well maintained, and works
  better than appmenu-qt5 (or at least not worse).

  So I propose to drop appmenu-qt5 from default Ubuntu installations,
  and maybe later from archive too.

  Unfortunately we use Qt 5.6, and some of the needed patches are only
  in Qt 5.7, so I would like to backport them to our packaging:

  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=f199bb9133fe0446 (will be in 
5.6.2 / 5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=488cf78e44947eff (will be in 
5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=b6a824d0a3b4fabd (will be in 
5.7.0)
  https://code.qt.io/cgit/qt/qtbase.git/commit/?id=e4d79e1fdeb6b26b (will be in 
5.7.0)

  Timo: if you have no objections, I will commit those patches to the
  packaging Git.

  After we do that, I will remove the appmenu-qt5 recommendation from
  indicator-appmenu (that is the only package referring to it).

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/indicator-appmenu/+bug/1612767/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to