Compare commits
4 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
c914fe7d23 | |
|
|
0df496770c | |
|
|
01edb1ea58 | |
|
|
cf8f4422df |
|
|
@ -202,6 +202,33 @@ jobs:
|
|||
name: release-artifacts-kwin-steamos-3.8
|
||||
path: out/*.tar.gz
|
||||
|
||||
build-kwin-steamos-3_9:
|
||||
needs: check-version-change
|
||||
if: needs.check-version-change.outputs.should-release == 'true'
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Build Breezy KWin (steamos-3.9)
|
||||
run: |
|
||||
STEAMOS=3.9 bin/package_kwin
|
||||
env:
|
||||
UA_API_SECRET: ${{ secrets.UA_API_SECRET }}
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: release-artifacts-kwin-steamos-3.9
|
||||
path: out/*.tar.gz
|
||||
|
||||
build-vulkan-x86_64:
|
||||
needs: check-version-change
|
||||
if: needs.check-version-change.outputs.should-release == 'true'
|
||||
|
|
@ -237,6 +264,7 @@ jobs:
|
|||
- build-gnome-aarch64
|
||||
- build-kwin-steamos-3_7
|
||||
- build-kwin-steamos-3_8
|
||||
- build-kwin-steamos-3_9
|
||||
- build-vulkan-x86_64
|
||||
if: needs.check-version-change.outputs.should-release == 'true'
|
||||
runs-on: ubuntu-latest
|
||||
|
|
|
|||
|
|
@ -204,7 +204,7 @@ mv breezy_desktop_lib/* breezy_kwin/
|
|||
pushd breezy_kwin > /dev/null
|
||||
|
||||
# run the setup script that comes with this release
|
||||
bin/setup $metrics_version
|
||||
ARCH="$ARCH" bin/setup $metrics_version
|
||||
|
||||
echo "Deleting temp directory: ${tmp_dir}"
|
||||
rm -rf $tmp_dir
|
||||
|
|
|
|||
|
|
@ -8,6 +8,10 @@ if [ "$XDG_SESSION_TYPE" != "wayland" ]; then
|
|||
fi
|
||||
|
||||
install_steamos_shortcuts() {
|
||||
if [[ "${ARCH:-}" != "steamos-3.7" ]]; then
|
||||
return
|
||||
fi
|
||||
|
||||
local os_release="/etc/os-release"
|
||||
if [[ ! -r "$os_release" ]]; then
|
||||
return
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
# docker buildx build --platform linux/amd64,linux/arm64 -f ./docker-build/Dockerfile.steamos-3.7 -t "breezy-kwin-steamos-3.7" .
|
||||
# docker run --rm -t -v ./:/source -v --platform linux/amd64 "breezy-kwin-steamos-3.7:amd64"
|
||||
|
||||
FROM --platform=$TARGETPLATFORM ghcr.io/wheaney/holo-base:3.7.20
|
||||
FROM --platform=$TARGETPLATFORM ghcr.io/wheaney/holo-base:3.7.20@sha256:1478200c51b8b287e294de6e98a1ab0fb79333503a5cc5681b58dfd209f17851
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
ENV STEAMOS=3.7
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
# docker buildx build --platform linux/amd64,linux/arm64 -f ./docker-build/Dockerfile.steamos-3.8 -t "breezy-kwin-steamos" .
|
||||
# docker run --rm -t -v ./:/source -v --platform linux/amd64 "breezy-kwin-steamos-3.8:amd64"
|
||||
|
||||
FROM --platform=$TARGETPLATFORM ghcr.io/wheaney/holo-base:preview-3.8
|
||||
FROM --platform=$TARGETPLATFORM ghcr.io/wheaney/holo-base:preview-3.8@sha256:a38cdf4ac0e9022ab55c2078381761b444362cfde63e61d988830b0aafb84850
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
ENV STEAMOS=3.8
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
# To run the build from the package root:
|
||||
# docker buildx build --platform linux/amd64,linux/arm64 -f ./docker-build/Dockerfile.steamos-3.9 -t "breezy-kwin-steamos" .
|
||||
# docker run --rm -t -v ./:/source -v --platform linux/amd64 "breezy-kwin-steamos-3.9:amd64"
|
||||
|
||||
FROM --platform=$TARGETPLATFORM ghcr.io/wheaney/holo-base:main-3.9@sha256:a9e2c59fb1274cf31d544229134e6bc653f050661dd9b64b05795b964468fcbf
|
||||
|
||||
ARG TARGETPLATFORM
|
||||
ENV STEAMOS=3.9
|
||||
RUN echo "SteamOS 3.9 build - target platform: $TARGETPLATFORM"
|
||||
|
||||
RUN pacman -Sy --noconfirm --needed \
|
||||
ca-certificates \
|
||||
base-devel \
|
||||
cmake \
|
||||
pkgconf \
|
||||
git \
|
||||
curl \
|
||||
wget \
|
||||
extra-cmake-modules \
|
||||
qt6-base \
|
||||
qt6-declarative \
|
||||
qt6-quick3d \
|
||||
qt6-tools \
|
||||
kconfig \
|
||||
kconfigwidgets \
|
||||
kcoreaddons \
|
||||
kglobalaccel \
|
||||
ki18n \
|
||||
kcmutils \
|
||||
kxmlgui \
|
||||
kwindowsystem \
|
||||
kwin \
|
||||
&& pacman -Scc --noconfirm
|
||||
|
||||
WORKDIR /source
|
||||
|
||||
CMD bin/package_kwin_plugin
|
||||
|
|
@ -19,4 +19,5 @@ fi
|
|||
|
||||
echo "Building docker image"
|
||||
docker buildx build --platform linux/amd64 -f ./docker-build/Dockerfile.steamos-3.7 -t "breezy-kwin-steamos-3.7:amd64" --load .
|
||||
docker buildx build --platform linux/amd64 -f ./docker-build/Dockerfile.steamos-3.8 -t "breezy-kwin-steamos-3.8:amd64" --load .
|
||||
docker buildx build --platform linux/amd64 -f ./docker-build/Dockerfile.steamos-3.8 -t "breezy-kwin-steamos-3.8:amd64" --load .
|
||||
docker buildx build --platform linux/amd64 -f ./docker-build/Dockerfile.steamos-3.9 -t "breezy-kwin-steamos-3.9:amd64" --load .
|
||||
|
|
@ -2,6 +2,7 @@
|
|||
#include "core/rendertarget.h"
|
||||
#include "core/renderviewport.h"
|
||||
#include "cursor.h"
|
||||
#include "input.h"
|
||||
#include "pointer_input.h"
|
||||
#include "kcm/shortcuts.h"
|
||||
#include "breezydesktopeffect.h"
|
||||
|
|
@ -1005,10 +1006,28 @@ void BreezyDesktopEffect::warpPointerToOutputCenter(ScreenOutput *output)
|
|||
}
|
||||
const QRect geometry = output->geometry();
|
||||
const QPointF center = geometry.center();
|
||||
Cursors::self()->mouse()->setPos(center);
|
||||
|
||||
// When warping, we don't have a meaningful previous position; use center for both.
|
||||
evaluateCursorOnScreenState(center, center);
|
||||
bool warped = false;
|
||||
if (InputRedirection *inputRedirection = input(); inputRedirection && inputRedirection->supportsPointerWarping()) {
|
||||
inputRedirection->warpPointer(center);
|
||||
warped = true;
|
||||
} else if (auto *mouseCursor = Cursors::self()->mouse(); mouseCursor) {
|
||||
mouseCursor->setPos(center);
|
||||
warped = true;
|
||||
}
|
||||
|
||||
if (!warped) {
|
||||
return;
|
||||
}
|
||||
|
||||
const QPointF newPos = center - effects->cursorImage().hotSpot();
|
||||
const QPointF prevPos = m_cursorPos;
|
||||
if (m_cursorPos != newPos) {
|
||||
m_cursorPos = newPos;
|
||||
Q_EMIT cursorPosChanged();
|
||||
}
|
||||
|
||||
evaluateCursorOnScreenState(prevPos, newPos);
|
||||
}
|
||||
|
||||
void BreezyDesktopEffect::moveCursorToFocusedDisplay()
|
||||
|
|
|
|||
Loading…
Reference in New Issue