Hi,
I want to have a clickable menu item that exits the app without having to open a subMenu.

  1. Actions added with menuBar().addAction() are *not* added/displayed in Qt5.3.1 on Android 2.3.1
  2. A connection between a subMenu's menuAction() signal and some closing slot returns a "true" but never fires.


A small compileable example:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
public slots:
void endMe();
private:
Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
und

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMenuBar>
#include <QDebug>
#include <QMessageBox>

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{

menuBar()->setNativeMenuBar(true);
menuBar()->setEnabled(true);
ui->setupUi(this);

//Not visible with Android
QAction* directAct=menuBar()->addAction("DirectA",this,SLOT(endMe()));
directAct->setVisible(true);
directAct->setEnabled(true);

//Visible but not firing
QMenu* directMenu=menuBar()->addMenu("DirectM");
directMenu->setEnabled(true);
connect(directMenu->menuAction(),SIGNAL(triggered()),this,SLOT(endMe( )));

//Visible, working (but one more click)
QMenu* normalMenu=menuBar()->addMenu("Normal");
QAction* normalActA=normalMenu->addAction("A",this,SLOT(endMe()));
QAction* normalActB=normalMenu->addAction("B",this,SLOT(endMe()));
normalMenu->setEnabled(true);
normalActA->setEnabled(true);
normalActB->setEnabled(true);
}

MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::endMe()
{
QMessageBox::about(this,"End","App will close now");
QApplication::quit();
}
It works on Windows, it doesn't on Android. Any ideas?