qt: Add support for opening files directly on macOS. (#7304)

* Associate 3ds files with Citra in Info.plist

* qt: Add support for opening files directly on macOS.

---------

Co-authored-by: shinra-electric <50119606+shinra-electric@users.noreply.github.com>
This commit is contained in:
Steveice10 2024-01-02 12:05:12 -08:00 committed by GitHub
parent 9b147d3f9c
commit 36db566428
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 66 additions and 0 deletions

View file

@ -41,6 +41,7 @@ class LoadingScreen;
class MicroProfileDialog;
class MultiplayerState;
class ProfilerWidget;
class QFileOpenEvent;
template <typename>
class QFutureWatcher;
class QLabel;
@ -96,6 +97,8 @@ public:
bool DropAction(QDropEvent* event);
void AcceptDropEvent(QDropEvent* event);
void OnFileOpen(const QFileOpenEvent* event);
void UninstallTitles(
const std::vector<std::tuple<Service::FS::MediaType, u64, QString>>& titles);
@ -137,6 +140,7 @@ private:
void SyncMenuUISettings();
void RestoreUIState();
void ConnectAppEvents();
void ConnectWidgetEvents();
void ConnectMenuEvents();
void UpdateMenuState();
@ -382,5 +386,15 @@ protected:
void mouseReleaseEvent(QMouseEvent* event) override;
};
class GApplicationEventFilter : public QObject {
Q_OBJECT
signals:
void FileOpen(const QFileOpenEvent* event);
protected:
bool eventFilter(QObject* object, QEvent* event) override;
};
Q_DECLARE_METATYPE(std::size_t);
Q_DECLARE_METATYPE(Service::AM::InstallStatus);