Fix tray visibility and message reception issues
Some checks failed
build / build-win64 (push) Waiting to run
build / build-macos (push) Waiting to run
build / build-pip (push) Failing after 16s

- Disable sound initialization to prevent hanging
- Add missing import re in utils.py
- Fix settings loading for QSettings
- Update file paths to use PROJECT_ROOT
- Revert to working API paths and listener from commit efdc63e
This commit is contained in:
kdusek
2025-12-07 22:39:07 +01:00
parent 7b695d7b7f
commit 5138303016
4060 changed files with 579123 additions and 23 deletions

View File

@@ -0,0 +1,6 @@
# Automatically generated configuration for PyQt6.QtPdfWidgets.
sip-version = "6.14.0"
sip-abi-version = "13.8"
module-tags = ["Qt_6_10_0", "Linux"]
module-disabled-features = ["PyQt_OpenGL_ES2"]

View File

@@ -0,0 +1,51 @@
// QtPdfWidgetsmod.sip generated by MetaSIP
//
// This file is part of the QtPdfWidgets Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file. Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
//
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license. For more information contact
// info@riverbankcomputing.com.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
%Module(name=PyQt6.QtPdfWidgets, keyword_arguments="Optional", use_limited_api=True)
%Import QtCore/QtCoremod.sip
%Import QtPdf/QtPdfmod.sip
%Import QtWidgets/QtWidgetsmod.sip
%Copying
Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
This file is part of PyQt6.
This file may be used under the terms of the GNU General Public License
version 3.0 as published by the Free Software Foundation and appearing in
the file LICENSE included in the packaging of this file. Please review the
following information to ensure the GNU General Public License version 3.0
requirements will be met: http://www.gnu.org/copyleft/gpl.html.
If you do not wish to use this file under the terms of the GPL version 3.0
then you may purchase a commercial license. For more information contact
info@riverbankcomputing.com.
This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
%End
%DefaultSupertype PyQt6.sip.simplewrapper
%Include qpdfpageselector.sip
%Include qpdfview.sip

View File

@@ -0,0 +1,48 @@
// qpdfpageselector.sip generated by MetaSIP
//
// This file is part of the QtPdfWidgets Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file. Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
//
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license. For more information contact
// info@riverbankcomputing.com.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
%If (Qt_6_6_0 -)
class QPdfPageSelector : public QWidget
{
%TypeHeaderCode
#include <qpdfpageselector.h>
%End
public:
explicit QPdfPageSelector(QWidget *parent /TransferThis/);
virtual ~QPdfPageSelector();
void setDocument(QPdfDocument *document);
QPdfDocument *document() const;
int currentPage() const;
QString currentPageLabel() const;
public slots:
void setCurrentPage(int index);
signals:
void documentChanged(QPdfDocument *document);
void currentPageChanged(int index);
void currentPageLabelChanged(const QString &label);
};
%End

View File

@@ -0,0 +1,141 @@
// qpdfview.sip generated by MetaSIP
//
// This file is part of the QtPdfWidgets Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file. Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
//
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license. For more information contact
// info@riverbankcomputing.com.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
class QPdfView : public QAbstractScrollArea
{
%TypeHeaderCode
#include <qpdfview.h>
%End
%ConvertToSubClassCode
static struct class_graph {
const char *name;
sipTypeDef **type;
int yes, no;
} graph[] = {
#if QT_VERSION >= 0x060600
{sipName_QPdfPageSelector, &sipType_QPdfPageSelector, -1, 1},
#else
{0, 0, -1, 1},
#endif
{sipName_QPdfView, &sipType_QPdfView, -1, -1},
};
int i = 0;
sipType = NULL;
do
{
struct class_graph *cg = &graph[i];
if (cg->name != NULL && sipCpp->inherits(cg->name))
{
sipType = *cg->type;
i = cg->yes;
}
else
i = cg->no;
}
while (i >= 0);
%End
public:
enum class PageMode
{
SinglePage,
MultiPage,
};
enum class ZoomMode
{
Custom,
FitToWidth,
FitInView,
};
explicit QPdfView(QWidget *parent /TransferThis/);
virtual ~QPdfView();
void setDocument(QPdfDocument *document);
QPdfDocument *document() const;
QPdfPageNavigator *pageNavigator() const;
QPdfView::PageMode pageMode() const;
QPdfView::ZoomMode zoomMode() const;
qreal zoomFactor() const;
int pageSpacing() const;
void setPageSpacing(int spacing);
QMargins documentMargins() const;
void setDocumentMargins(QMargins margins);
public slots:
void setPageMode(QPdfView::PageMode mode);
void setZoomMode(QPdfView::ZoomMode mode);
void setZoomFactor(qreal factor);
signals:
void documentChanged(QPdfDocument *document);
void pageModeChanged(QPdfView::PageMode pageMode);
void zoomModeChanged(QPdfView::ZoomMode zoomMode);
void zoomFactorChanged(qreal zoomFactor);
void pageSpacingChanged(int pageSpacing);
void documentMarginsChanged(QMargins documentMargins);
protected:
virtual void paintEvent(QPaintEvent *event);
virtual void resizeEvent(QResizeEvent *event);
virtual void scrollContentsBy(int dx, int dy);
public:
%If (Qt_6_6_0 -)
QPdfSearchModel *searchModel() const;
%End
%If (Qt_6_6_0 -)
void setSearchModel(QPdfSearchModel *searchModel /KeepReference/);
%End
%If (Qt_6_6_0 -)
int currentSearchResultIndex() const;
%End
public slots:
%If (Qt_6_6_0 -)
void setCurrentSearchResultIndex(int currentResult);
%End
signals:
%If (Qt_6_6_0 -)
void searchModelChanged(QPdfSearchModel *searchModel);
%End
%If (Qt_6_6_0 -)
void currentSearchResultIndexChanged(int currentResult);
%End
protected:
%If (Qt_6_6_0 -)
virtual void mousePressEvent(QMouseEvent *event);
%End
%If (Qt_6_6_0 -)
virtual void mouseMoveEvent(QMouseEvent *event);
%End
%If (Qt_6_6_0 -)
virtual void mouseReleaseEvent(QMouseEvent *event);
%End
};