Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Qt6 Conversion #1601

Open
wants to merge 17 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 15 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,15 @@ jobs:
id: set_cache
run: |
job_cache_extra_deps=(); job_id=test_linux; job_name='Test (Linux)'; job_needs=(); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_linux_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_test_linux; job_skiplists=(job_test os_linux); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=Linux; analyze_set_job_skip_cache_key
job_cache_extra_deps=(osx/deps.sh); job_id=test_macos; job_name='Test (macOS)'; job_needs=(); job_os=macOS; job_platform=macos-10.15; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_macos_py-3.9_macos-10.15; job_skip_cache_path=.skip_cache_test_macos; job_skiplists=(job_test os_macos); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=macOS; analyze_set_job_skip_cache_key
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You'll get merge conflicts when rebasing/merging master into this branch because I bumped that version. I didn't go for latest though to prevent "random" issues in the future with new macOS versions. In my view freezing this version makes the build more robust. (Same for the other places in this file).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pinning the version is a good idea. I bumped it up to latest because there was some issue with old macOS versions in the CI, and was too lazy to check which versions actually worked. I'll fix the version to match what you had in your patch.

job_cache_extra_deps=(osx/deps.sh); job_id=test_macos; job_name='Test (macOS)'; job_needs=(); job_os=macOS; job_platform=macos-latest; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_macos_py-3.9_macos-latest; job_skip_cache_path=.skip_cache_test_macos; job_skiplists=(job_test os_macos); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=macOS; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_windows; job_name='Test (Windows)'; job_needs=(); job_os=Windows; job_platform=windows-2019; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_windows_py-3.9_windows-2019; job_skip_cache_path=.skip_cache_test_windows; job_skiplists=(job_test os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=Windows; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_python_37; job_name='Test (Python 3.7)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.7; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_37_py-3.7_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_37; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.7'; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_python_38; job_name='Test (Python 3.8)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.8; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_38_py-3.8_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_38; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.8'; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_python_310; job_name='Test (Python 3.10)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.10; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_310_py-3.10_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_310; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.10'; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_qt_gui; job_name='Test (Qt GUI)'; job_needs=(); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/dist.txt reqs/dist_extra_gui_qt.txt reqs/test.txt); job_skip_cache_name=skip_test_qt_gui_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_test_qt_gui; job_skiplists=(job_test_gui_qt); job_test_args=test/gui_qt; job_type=test_gui_qt; job_variant='Qt GUI'; analyze_set_job_skip_cache_key
job_cache_extra_deps=(); job_id=test_packaging; job_name='Test (Packaging)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.9; job_reqs=(reqs/packaging.txt reqs/setup.txt); job_skip_cache_name=skip_test_packaging_py-3.9_ubuntu-latest; job_skip_cache_path=.skip_cache_test_packaging; job_skiplists=(job_test_packaging); job_type=test_packaging; job_variant=Packaging; analyze_set_job_skip_cache_key
job_cache_extra_deps=('reqs/dist_*.txt' linux/appimage/deps.sh); job_id=build_linux; job_name='Build (Linux)'; job_needs=(test_linux); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_linux_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_build_linux; job_skiplists=(job_build os_linux); job_type=build; job_variant=Linux; analyze_set_job_skip_cache_key
job_cache_extra_deps=('reqs/dist_*.txt' osx/deps.sh); job_id=build_macos; job_name='Build (macOS)'; job_needs=(test_macos); job_os=macOS; job_platform=macos-10.15; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_macos_py-3.9_macos-10.15; job_skip_cache_path=.skip_cache_build_macos; job_skiplists=(job_build os_macos); job_type=build; job_variant=macOS; analyze_set_job_skip_cache_key
job_cache_extra_deps=('reqs/dist_*.txt' osx/deps.sh); job_id=build_macos; job_name='Build (macOS)'; job_needs=(test_macos); job_os=macOS; job_platform=macos-latest; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_macos_py-3.9_macos-latest; job_skip_cache_path=.skip_cache_build_macos; job_skiplists=(job_build os_macos); job_type=build; job_variant=macOS; analyze_set_job_skip_cache_key
job_cache_extra_deps=('reqs/dist_*.txt' windows/dist_deps.sh); job_id=build_windows; job_name='Build (Windows)'; job_needs=(test_windows); job_os=Windows; job_platform=windows-2019; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_windows_py-3.9_windows-2019; job_skip_cache_path=.skip_cache_build_windows; job_skiplists=(job_build os_windows); job_type=build; job_variant=Windows; analyze_set_job_skip_cache_key

- name: Check skip cache for Test (Linux)
Expand Down Expand Up @@ -142,15 +142,15 @@ jobs:
run: |
analyze_set_release_info
job_cache_extra_deps=(); job_id=test_linux; job_name='Test (Linux)'; job_needs=(); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_linux_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_test_linux; job_skiplists=(job_test os_linux); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=Linux; analyze_set_job_skip_job
job_cache_extra_deps=(osx/deps.sh); job_id=test_macos; job_name='Test (macOS)'; job_needs=(); job_os=macOS; job_platform=macos-10.15; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_macos_py-3.9_macos-10.15; job_skip_cache_path=.skip_cache_test_macos; job_skiplists=(job_test os_macos); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=macOS; analyze_set_job_skip_job
job_cache_extra_deps=(osx/deps.sh); job_id=test_macos; job_name='Test (macOS)'; job_needs=(); job_os=macOS; job_platform=macos-latest; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_macos_py-3.9_macos-latest; job_skip_cache_path=.skip_cache_test_macos; job_skiplists=(job_test os_macos); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=macOS; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_windows; job_name='Test (Windows)'; job_needs=(); job_os=Windows; job_platform=windows-2019; job_python=3.9; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_windows_py-3.9_windows-2019; job_skip_cache_path=.skip_cache_test_windows; job_skiplists=(job_test os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant=Windows; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_python_37; job_name='Test (Python 3.7)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.7; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_37_py-3.7_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_37; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.7'; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_python_38; job_name='Test (Python 3.8)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.8; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_38_py-3.8_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_38; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.8'; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_python_310; job_name='Test (Python 3.10)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.10; job_reqs=(reqs/dist.txt reqs/test.txt); job_skip_cache_name=skip_test_python_310_py-3.10_ubuntu-latest; job_skip_cache_path=.skip_cache_test_python_310; job_skiplists=(job_test os_linux os_macos os_windows); job_test_args='-p no:pytest-qt --ignore=test/gui_qt'; job_type=test; job_variant='Python 3.10'; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_qt_gui; job_name='Test (Qt GUI)'; job_needs=(); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/dist.txt reqs/dist_extra_gui_qt.txt reqs/test.txt); job_skip_cache_name=skip_test_qt_gui_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_test_qt_gui; job_skiplists=(job_test_gui_qt); job_test_args=test/gui_qt; job_type=test_gui_qt; job_variant='Qt GUI'; analyze_set_job_skip_job
job_cache_extra_deps=(); job_id=test_packaging; job_name='Test (Packaging)'; job_needs=(); job_os=Linux; job_platform=ubuntu-latest; job_python=3.9; job_reqs=(reqs/packaging.txt reqs/setup.txt); job_skip_cache_name=skip_test_packaging_py-3.9_ubuntu-latest; job_skip_cache_path=.skip_cache_test_packaging; job_skiplists=(job_test_packaging); job_type=test_packaging; job_variant=Packaging; analyze_set_job_skip_job
job_cache_extra_deps=('reqs/dist_*.txt' linux/appimage/deps.sh); job_id=build_linux; job_name='Build (Linux)'; job_needs=(test_linux); job_os=Linux; job_platform=ubuntu-22.04; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_linux_py-3.9_ubuntu-22.04; job_skip_cache_path=.skip_cache_build_linux; job_skiplists=(job_build os_linux); job_type=build; job_variant=Linux; analyze_set_job_skip_job
job_cache_extra_deps=('reqs/dist_*.txt' osx/deps.sh); job_id=build_macos; job_name='Build (macOS)'; job_needs=(test_macos); job_os=macOS; job_platform=macos-10.15; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_macos_py-3.9_macos-10.15; job_skip_cache_path=.skip_cache_build_macos; job_skiplists=(job_build os_macos); job_type=build; job_variant=macOS; analyze_set_job_skip_job
job_cache_extra_deps=('reqs/dist_*.txt' osx/deps.sh); job_id=build_macos; job_name='Build (macOS)'; job_needs=(test_macos); job_os=macOS; job_platform=macos-latest; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_macos_py-3.9_macos-latest; job_skip_cache_path=.skip_cache_build_macos; job_skiplists=(job_build os_macos); job_type=build; job_variant=macOS; analyze_set_job_skip_job
job_cache_extra_deps=('reqs/dist_*.txt' windows/dist_deps.sh); job_id=build_windows; job_name='Build (Windows)'; job_needs=(test_windows); job_os=Windows; job_platform=windows-2019; job_python=3.9; job_reqs=(reqs/build.txt reqs/setup.txt); job_skip_cache_name=skip_build_windows_py-3.9_windows-2019; job_skip_cache_path=.skip_cache_build_windows; job_skiplists=(job_build os_windows); job_type=build; job_variant=Windows; analyze_set_job_skip_job

outputs:
Expand Down Expand Up @@ -241,7 +241,7 @@ jobs:
test_macos:

name: Test (macOS)
runs-on: macos-10.15
runs-on: macos-latest
needs: [analyze, ]
if: >-
!cancelled()
Expand All @@ -254,7 +254,7 @@ jobs:

- name: Set cache name
id: set_cache
run: setup_cache_name '3.9' 'macos-10.15'
run: setup_cache_name '3.9' 'macos-latest'

- name: Setup cache
uses: actions/cache@v2
Expand Down Expand Up @@ -554,6 +554,9 @@ jobs:
- name: Setup pip options
run: setup_pip_options

- name: Install system dependencies
run: apt_get_install libdbus-1-dev libdbus-glib-1-dev libudev-dev libusb-1.0-0-dev libegl-dev

- name: Setup Python environment
run: setup_python_env -c reqs/constraints.txt -r reqs/dist.txt -r reqs/dist_extra_gui_qt.txt -r reqs/test.txt
- name: Build UI
Expand Down Expand Up @@ -667,7 +670,7 @@ jobs:

- name: List cache contents
run: list_cache

outputs:
version: ${{ steps.set_version.outputs.version }}
# }}}
Expand Down Expand Up @@ -710,7 +713,7 @@ jobs:
run: setup_pip_options

- name: Install system dependencies
run: apt_get_install libdbus-1-dev libdbus-glib-1-dev libudev-dev libusb-1.0-0-dev
run: apt_get_install libdbus-1-dev libdbus-glib-1-dev libudev-dev libusb-1.0-0-dev libegl-dev

- name: Setup Python environment
run: setup_python_env -c reqs/constraints.txt -r reqs/build.txt -r reqs/setup.txt
Expand Down Expand Up @@ -749,7 +752,7 @@ jobs:
build_macos:

name: Build (macOS)
runs-on: macos-10.15
runs-on: macos-latest
needs: [analyze, test_macos]
if: >-
!cancelled()
Expand All @@ -766,7 +769,7 @@ jobs:

- name: Set cache name
id: set_cache
run: setup_cache_name '3.9' 'macos-10.15'
run: setup_cache_name '3.9' 'macos-latest'

- name: Setup cache
uses: actions/cache@v2
Expand Down Expand Up @@ -958,4 +961,4 @@ jobs:
run: publish_github_release
# }}}

# vim: foldmethod=marker foldlevel=0
# vim: foldmethod=marker foldlevel=0
2 changes: 1 addition & 1 deletion .github/workflows/ci/workflow_context.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ vars:
variant: macOS
python: '3.9'
os: macOS
platform: macos-10.15
platform: macos-latest

- &dist_win
variant: Windows
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/ci/workflow_template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -127,9 +127,9 @@ jobs:
run: setup_osx_python '<@ j.python @>'

<% endif %>
<% if j.type == 'build' and j.os == 'Linux' %>
<% if j.type in ['build', 'test_gui_qt'] and j.os == 'Linux' %>
- name: Install system dependencies
run: apt_get_install libdbus-1-dev libdbus-glib-1-dev libudev-dev libusb-1.0-0-dev
run: apt_get_install libdbus-1-dev libdbus-glib-1-dev libudev-dev libusb-1.0-0-dev libegl-dev

<% endif %>
- name: Setup Python environment
Expand Down Expand Up @@ -256,7 +256,7 @@ jobs:
- name: List cache contents
run: list_cache
<% if j.type == 'test_packaging' %>

outputs:
version: ${{ steps.set_version.outputs.version }}
<% endif %>
Expand Down
7 changes: 1 addition & 6 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,5 @@ include test/*.py
include test/gui_qt/*.py
include tox.ini
include windows/*
# Exclude: CI/Git/GitHub specific files,
# as well as generated Python files (UI).
exclude .gitignore
exclude plover/gui_qt/*_rc.py

exclude plover/gui_qt/*_ui.py
exclude plover/gui_qt/.gitignore
prune .github
33 changes: 15 additions & 18 deletions linux/appimage/blacklist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,16 +31,14 @@
# Plover.
:usr/lib/python${pyversion}/site-packages/plover
gui_qt/*.ui
gui_qt/resources
messages/**/*.po
messages/plover.pot

# PyQt5.
# PyQt6.
:usr/bin
pylupdate5
pyrcc5
pyuic5
:usr/lib/python${pyversion}/site-packages/PyQt5
pylupdate6
pyuic6
:usr/lib/python${pyversion}/site-packages/PyQt6
**/*Designer*
**/*[Hh]elp*
**/*[Qq]ml*
Expand All @@ -49,19 +47,18 @@
**/*[Ww]ayland*
**/*[Ww]eb[Ee]ngine*
bindings
Qt5/plugins/egldeviceintegrations
Qt5/plugins/geoservices
Qt5/plugins/platforms/libqeglfs.so
Qt5/plugins/platforms/libqlinuxfb.so
Qt5/plugins/platforms/libqminimal.so
Qt5/plugins/platforms/libqminimalegl.so
Qt5/plugins/platforms/libqoffscreen.so
Qt5/plugins/platforms/libqvnc.so
Qt5/plugins/platforms/libqwebgl.so
Qt5/plugins/sceneparsers
Qt5/plugins/webview
Qt6/plugins/egldeviceintegrations
Qt6/plugins/geoservices
Qt6/plugins/platforms/libqeglfs.so
Qt6/plugins/platforms/libqlinuxfb.so
Qt6/plugins/platforms/libqminimal.so
Qt6/plugins/platforms/libqminimalegl.so
Qt6/plugins/platforms/libqoffscreen.so
Qt6/plugins/platforms/libqvnc.so
Qt6/plugins/platforms/libqwebgl.so
Qt6/plugins/sceneparsers
Qt6/plugins/webview
pylupdate*
pyrcc*
uic

# vim: ft=config
48 changes: 23 additions & 25 deletions osx/app_resources/dist_blacklist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@
turtle*
**/*.exe
*/test*
# PyQt5.
:lib/python$python_base_version/site-packages/PyQt5
# PyQt6.
:lib/python$python_base_version/site-packages/PyQt6
**/*AxContainer*
**/*Bluetooth*
**/*CLucene*
Expand All @@ -35,34 +35,32 @@
**/*Serial*
**/*Sql*
**/*Test*
Qt5/plugins/audio
Qt5/plugins/bearer
Qt5/plugins/generic
Qt5/plugins/geoservices
Qt5/plugins/mediaservice
Qt5/plugins/playlistformats
Qt5/plugins/position
Qt5/plugins/printsupport
Qt5/plugins/sceneparsers
Qt5/plugins/sensor*
Qt5/plugins/sqldrivers
Qt5/qml
Qt5/resources
Qt5/translations/qt_help_*
Qt5/translations/qtconnectivity_*
Qt5/translations/qtdeclarative_*
Qt5/translations/qtlocation_*
Qt5/translations/qtmultimedia_*
Qt5/translations/qtquick*
Qt5/translations/qtserialport_*
Qt5/translations/qtwebsockets_*
Qt6/plugins/audio
Qt6/plugins/bearer
Qt6/plugins/generic
Qt6/plugins/geoservices
Qt6/plugins/mediaservice
Qt6/plugins/playlistformats
Qt6/plugins/position
Qt6/plugins/printsupport
Qt6/plugins/sceneparsers
Qt6/plugins/sensor*
Qt6/plugins/sqldrivers
Qt6/qml
Qt6/resources
Qt6/translations/qt_help_*
Qt6/translations/qtconnectivity_*
Qt6/translations/qtdeclarative_*
Qt6/translations/qtlocation_*
Qt6/translations/qtmultimedia_*
Qt6/translations/qtquick*
Qt6/translations/qtserialport_*
Qt6/translations/qtwebsockets_*
pylupdate*
pyrcc*
uic
# Plover.
:lib/python$python_base_version/site-packages/plover
gui_qt/*.ui
gui_qt/resources
messages/**/*.po
messages/plover.pot

Expand Down
2 changes: 1 addition & 1 deletion plover/gui_qt/about_dialog.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

import re

from PyQt5.QtWidgets import QDialog
from PyQt6.QtWidgets import QDialog

import plover

Expand Down
4 changes: 2 additions & 2 deletions plover/gui_qt/add_translation_dialog.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from PyQt5.QtWidgets import QDialogButtonBox
from PyQt6.QtWidgets import QDialogButtonBox

from plover import _

Expand Down Expand Up @@ -29,7 +29,7 @@ def __init__(self, engine, dictionary_path=None):
self.finished.connect(self.save_state)

def on_mapping_valid(self, valid):
self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(valid)
self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(valid)

def on_config_changed(self, config_update):
if 'translation_frame_opacity' in config_update:
Expand Down
8 changes: 4 additions & 4 deletions plover/gui_qt/add_translation_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
from html import escape as html_escape
from os.path import split as os_path_split

from PyQt5.QtCore import QEvent, pyqtSignal
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt6.QtCore import QEvent, pyqtSignal
from PyQt6.QtWidgets import QApplication, QWidget

from plover import _
from plover.misc import shorten_path
Expand Down Expand Up @@ -106,12 +106,12 @@ def select_dictionary(self, dictionary_path):
self._update_items()

def eventFilter(self, watched, event):
if event.type() == QEvent.FocusIn:
if event.type() == QEvent.Type.FocusIn:
if watched == self.strokes:
self._focus_strokes()
elif watched == self.translation:
self._focus_translation()
elif event.type() == QEvent.FocusOut:
elif event.type() == QEvent.Type.FocusOut:
if watched in (self.strokes, self.translation):
self._unfocus()
return False
Expand Down
Loading
Loading