mirror of
https://github.com/swaywm/sway.git
synced 2026-03-15 05:34:12 -04:00
Merge branch 'master' into session-lock-input-fix
This commit is contained in:
commit
f4cbe3789d
35 changed files with 77 additions and 70 deletions
|
|
@ -29,12 +29,12 @@ sources:
|
||||||
tasks:
|
tasks:
|
||||||
- wlroots: |
|
- wlroots: |
|
||||||
cd wlroots
|
cd wlroots
|
||||||
meson --prefix=/usr build -Dexamples=false
|
meson setup --prefix=/usr build -Dexamples=false
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
- setup: |
|
- setup: |
|
||||||
cd sway
|
cd sway
|
||||||
meson build --fatal-meson-warnings -Dauto_features=enabled -Dtray=disabled
|
meson setup build --fatal-meson-warnings -Dauto_features=enabled -Dtray=disabled
|
||||||
- build: |
|
- build: |
|
||||||
cd sway
|
cd sway
|
||||||
ninja -C build
|
ninja -C build
|
||||||
|
|
@ -52,5 +52,5 @@ tasks:
|
||||||
mkdir subprojects
|
mkdir subprojects
|
||||||
ln -s ../../wlroots subprojects/wlroots
|
ln -s ../../wlroots subprojects/wlroots
|
||||||
rm -rf build
|
rm -rf build
|
||||||
meson build --fatal-meson-warnings --default-library=static --force-fallback-for=wlroots
|
meson setup build --fatal-meson-warnings --default-library=static --force-fallback-for=wlroots
|
||||||
ninja -C build
|
ninja -C build
|
||||||
|
|
|
||||||
|
|
@ -26,12 +26,12 @@ sources:
|
||||||
tasks:
|
tasks:
|
||||||
- wlroots: |
|
- wlroots: |
|
||||||
cd wlroots
|
cd wlroots
|
||||||
meson --prefix=/usr build -Dexamples=false
|
meson setup --prefix=/usr build -Dexamples=false
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
- setup: |
|
- setup: |
|
||||||
cd sway
|
cd sway
|
||||||
meson build --fatal-meson-warnings -Dauto_features=enabled -Dsd-bus-provider=libsystemd
|
meson setup build --fatal-meson-warnings -Dauto_features=enabled -Dsd-bus-provider=libsystemd
|
||||||
- build: |
|
- build: |
|
||||||
cd sway
|
cd sway
|
||||||
ninja -C build
|
ninja -C build
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ tasks:
|
||||||
cd subprojects
|
cd subprojects
|
||||||
ln -s ../../wlroots wlroots
|
ln -s ../../wlroots wlroots
|
||||||
cd ..
|
cd ..
|
||||||
meson build --fatal-meson-warnings -Dtray=enabled -Dsd-bus-provider=basu
|
meson setup build --fatal-meson-warnings -Dtray=enabled -Dsd-bus-provider=basu
|
||||||
- build: |
|
- build: |
|
||||||
cd sway
|
cd sway
|
||||||
ninja -C build
|
ninja -C build
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ _\* Compile-time dep_
|
||||||
|
|
||||||
نفذ هذه الأوامر:
|
نفذ هذه الأوامر:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ _\* Kompilyasiya asılılıqları_
|
||||||
|
|
||||||
Bu əmrləri icra edin:
|
Bu əmrləri icra edin:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ _\* Závislost pouze pro kompilaci_
|
||||||
|
|
||||||
Spusťte tyto příkazy:
|
Spusťte tyto příkazy:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
37
README.de.md
37
README.de.md
|
|
@ -1,21 +1,21 @@
|
||||||
# Sway
|
# Sway
|
||||||
Sway ist ein [i3](https://i3wm.org/)-kompatibler [Wayland](http://wayland.freedesktop.org/)-Compositor. Lies die [FAQ](https://github.com/swaywm/sway/wiki). Tritt dem [IRC Channel](https://web.libera.chat/gamja/?channels=#sway) bei (#sway on irc.libera.chat; Englisch).
|
Sway ist ein [i3]-kompatibler [Wayland]-Compositor. Lies die [FAQ]. Tritt dem [IRC Channel] bei (#sway on irc.libera.chat; Englisch).
|
||||||
|
|
||||||
## Signaturen
|
## Signaturen
|
||||||
Jedes Release wird mit dem PGP-Schlüssel [E88F5E48](https://keys.openpgp.org/search?q=34FF9526CFEF0E97A340E2E40FDE7BE0E88F5E48) signiert und [auf GitHub](https://github.com/swaywm/sway/releases) veröffentlicht.
|
Jeder Release wird mit dem PGP-Schlüssel [E88F5E48] signiert und [auf GitHub][GitHub releases] veröffentlicht.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### Über die Paketverwaltung
|
### Über die Paketverwaltung
|
||||||
|
|
||||||
Sway kann in vielen Distributionen direkt durch die Paketverwaltung installiert werden. Versuche einfach das Packet "sway" zu installieren.
|
Sway kann in vielen Distributionen direkt durch die Paketverwaltung installiert werden. Versuche einfach das Paket "sway" zu installieren.
|
||||||
|
|
||||||
### Quellcode selbst kompilieren
|
### Quellcode selbst kompilieren
|
||||||
|
|
||||||
sway benötigt die folgenden Pakete:
|
sway benötigt die folgenden Pakete:
|
||||||
|
|
||||||
* meson\*
|
* meson \*
|
||||||
* [wlroots](https://gitlab.freedesktop.org/wlroots/wlroots)
|
* [wlroots]
|
||||||
* wayland
|
* wayland
|
||||||
* wayland-protocols\*
|
* wayland-protocols\*
|
||||||
* pcre2
|
* pcre2
|
||||||
|
|
@ -23,21 +23,34 @@ sway benötigt die folgenden Pakete:
|
||||||
* pango
|
* pango
|
||||||
* cairo
|
* cairo
|
||||||
* gdk-pixbuf2 (Optional, wird für das Benachrichtigungsfeld (System Tray) benötigt)
|
* gdk-pixbuf2 (Optional, wird für das Benachrichtigungsfeld (System Tray) benötigt)
|
||||||
* [scdoc](https://git.sr.ht/~sircmpwn/scdoc) (Optional, wird für die Dokumentation (Man Pages) benötigt)\*
|
* [swaybg] (Optional, wird für das Setzen von Desktophintergrundbildern benötigt)
|
||||||
|
* [scdoc] (Optional, wird für die Dokumentation (Man Pages) benötigt)\*
|
||||||
* git (Optional: Versionsinfo)\*
|
* git (Optional: Versionsinfo)\*
|
||||||
|
|
||||||
_\*Werden nur während des Kompilierens benötigt_
|
_\*Werden nur für das Kompilieren benötigt_
|
||||||
|
|
||||||
Führe die folgenden Befehle aus:
|
Führe die folgenden Befehle aus:
|
||||||
|
|
||||||
meson build
|
meson setup build/
|
||||||
ninja -C build
|
ninja -C build/
|
||||||
sudo ninja -C build install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
Schaue in das [Wiki][Development setup] (Englisch) für Informationen, falls du zum Testen oder Entwickeln den neuesten Stand (HEAD) von sway und wlroots kompilieren willst.
|
||||||
|
|
||||||
## Konfiguration
|
## Konfiguration
|
||||||
|
|
||||||
Falls du von i3 migrierst, kannst du deine Konfigurationsdatei nach `~/.config/sway/config` kopieren und die Einstellungen sollten ohne Weiteres funktionieren. Ansonsten kannst du die Beispielkonfiguration, die normalerweise in `/etc/sway/config` liegt, nach `~/.config/sway/config` kopieren. Die Dokumentation zur Konfigurationsdatei findest du in `man 5 sway`.
|
Falls du von i3 migrierst, kannst du deine Konfigurationsdatei nach `~/.config/sway/config` kopieren und die Einstellungen sollten ohne Weiteres funktionieren. Ansonsten kannst du die Beispielkonfiguration, die normalerweise in `/etc/sway/config` liegt, nach `~/.config/sway/config` kopieren. Die Dokumentation zur Konfigurationsdatei findest du in `man 5 sway`.
|
||||||
|
|
||||||
## Sway starten
|
## Sway starten
|
||||||
Sway kann einfach mit dem Befehl `sway` vom TTY gestartet werden.
|
Sway kann einfach mit dem Befehl `sway` vom TTY oder mithilfe eines Displaymanagers gestartet werden.
|
||||||
Display-Manager werden nicht offiziell unterstützt. Es gibt aber durchaus einige, die mit Sway funktionieren (z.B. gdm).
|
|
||||||
|
[i3]: https://i3wm.org/
|
||||||
|
[Wayland]: http://wayland.freedesktop.org/
|
||||||
|
[FAQ]: https://github.com/swaywm/sway/wiki
|
||||||
|
[IRC channel]: https://web.libera.chat/gamja/?channels=#sway
|
||||||
|
[E88F5E48]: https://keys.openpgp.org/search?q=34FF9526CFEF0E97A340E2E40FDE7BE0E88F5E48
|
||||||
|
[GitHub releases]: https://github.com/swaywm/sway/releases
|
||||||
|
[Development setup]: https://github.com/swaywm/sway/wiki/Development-Setup
|
||||||
|
[wlroots]: https://gitlab.freedesktop.org/wlroots/wlroots
|
||||||
|
[swaybg]: https://github.com/swaywm/swaybg
|
||||||
|
[scdoc]: https://git.sr.ht/~sircmpwn/scdoc
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ _\*Kompileringsafhængighed_
|
||||||
|
|
||||||
Kør følgende kommandoer:
|
Kør følgende kommandoer:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\*Compile-time dep_
|
||||||
|
|
||||||
Desde su consola, ejecute las órdenes:
|
Desde su consola, ejecute las órdenes:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ _\* Requis uniquement pour la compilation_
|
||||||
|
|
||||||
Exécutez ces commandes :
|
Exécutez ces commandes :
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ _\* Compile-time dep_
|
||||||
|
|
||||||
გაუშვით ეს ბრძანებები:
|
გაუშვით ეს ბრძანებები:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\*Compile-time dep_
|
||||||
|
|
||||||
Τρέξτε αυτά τα commands:
|
Τρέξτε αυτά τα commands:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ _\* Compilation के समय आवश्यक_
|
||||||
|
|
||||||
ये commands चलाएं:
|
ये commands चलाएं:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\*Fordításidejű függőség_
|
||||||
|
|
||||||
Futtasd ezeket a parancsokat:
|
Futtasd ezeket a parancsokat:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ _\*نیازمندیهای زمان کامپایل برنامه_
|
||||||
|
|
||||||
این فرمانها را اجرا کنید:
|
این فرمانها را اجرا کنید:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
# sway
|
# sway
|
||||||
|
|
||||||
sway è un compositore di [Wayland] compatibile con [i3]. Leggi le [FAQ].
|
sway è un compositore di [Wayland] compatibile con [i3]. Leggi le [FAQ].
|
||||||
Unisciti al [canale di IRC] \(#sway su irc.libera.chat).
|
Unisciti al [canale IRC] \(#sway su irc.libera.chat).
|
||||||
|
|
||||||
## Firma delle versioni
|
## Firma delle versioni
|
||||||
|
|
||||||
|
|
@ -38,7 +38,7 @@ _\* Dipendenza necessaria per la compilazione_
|
||||||
|
|
||||||
Esegui questi comandi:
|
Esegui questi comandi:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
@ -52,13 +52,12 @@ configurazione.
|
||||||
|
|
||||||
## Esecuzione
|
## Esecuzione
|
||||||
|
|
||||||
Lancia `sway` da un TTY. Alcuni gestori d'accesso potrebbero funzionare ma non
|
Lancia `sway` da un TTY o da un display manager.
|
||||||
sono supportati da sway (gdm funziona abbastanza bene).
|
|
||||||
|
|
||||||
[i3]: https://i3wm.org/
|
[i3]: https://i3wm.org/
|
||||||
[Wayland]: http://wayland.freedesktop.org/
|
[Wayland]: http://wayland.freedesktop.org/
|
||||||
[FAQ]: https://github.com/swaywm/sway/wiki
|
[FAQ]: https://github.com/swaywm/sway/wiki
|
||||||
[canale di IRC]: https://web.libera.chat/gamja/?channels=#sway
|
[canale IRC]: https://web.libera.chat/gamja/?channels=#sway
|
||||||
[E88F5E48]: https://keys.openpgp.org/search?q=34FF9526CFEF0E97A340E2E40FDE7BE0E88F5E48
|
[E88F5E48]: https://keys.openpgp.org/search?q=34FF9526CFEF0E97A340E2E40FDE7BE0E88F5E48
|
||||||
[GitHub releases]: https://github.com/swaywm/sway/releases
|
[GitHub releases]: https://github.com/swaywm/sway/releases
|
||||||
[Development setup]: https://github.com/swaywm/sway/wiki/Development-Setup
|
[Development setup]: https://github.com/swaywm/sway/wiki/Development-Setup
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ _\*コンパイル時の依存_
|
||||||
|
|
||||||
次のコマンドを実行してください:
|
次のコマンドを実行してください:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ _\*컴파일 떄 필요_
|
||||||
|
|
||||||
다음 명령을 실행하세요:
|
다음 명령을 실행하세요:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\* Compile-time dep_
|
||||||
|
|
||||||
Run these commands:
|
Run these commands:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\* Compileerafhankelijkheden_
|
||||||
|
|
||||||
Voer deze opdrachten uit:
|
Voer deze opdrachten uit:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ _\* Kompileringsavhengigheter_
|
||||||
|
|
||||||
Kjør følgende kommandoer:
|
Kjør følgende kommandoer:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\*zależności kompilacji_
|
||||||
|
|
||||||
Wykonaj następujące polecenia:
|
Wykonaj następujące polecenia:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ _\*Dependência de tempo de compilação_
|
||||||
|
|
||||||
Execute esses comandos:
|
Execute esses comandos:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ Dependențe pentru instalare:
|
||||||
Rulați aceste comenzi:
|
Rulați aceste comenzi:
|
||||||
|
|
||||||
```
|
```
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
```
|
```
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ _\*Зависимости для сборки_
|
||||||
|
|
||||||
Выполните эти команды:
|
Выполните эти команды:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ _\* Потребно само за компајлирање_
|
||||||
|
|
||||||
Покрените следеће команде:
|
Покрените следеће команде:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ _\* Krav för kompilering_
|
||||||
|
|
||||||
Kör dessa kommandon:
|
Kör dessa kommandon:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ _\*Derleme-anı bağımlılıkları_
|
||||||
|
|
||||||
Şu komutları çalıştırın:
|
Şu komutları çalıştırın:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ _\*Лише для компіляції_
|
||||||
|
|
||||||
Виконайте ці команди:
|
Виконайте ці команди:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ _\*编译时依赖_
|
||||||
|
|
||||||
运行如下命令:
|
运行如下命令:
|
||||||
|
|
||||||
meson build/
|
meson setup build/
|
||||||
ninja -C build/
|
ninja -C build/
|
||||||
sudo ninja -C build/ install
|
sudo ninja -C build/ install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ _\*編譯時相依_
|
||||||
|
|
||||||
執行這些指令:
|
執行這些指令:
|
||||||
|
|
||||||
meson build
|
meson setup build
|
||||||
ninja -C build
|
ninja -C build
|
||||||
sudo ninja -C build install
|
sudo ninja -C build install
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -578,6 +578,7 @@ static void handle_tablet_tool_position(struct sway_cursor *cursor,
|
||||||
} else {
|
} else {
|
||||||
wlr_tablet_v2_tablet_tool_notify_proximity_out(tool->tablet_v2_tool);
|
wlr_tablet_v2_tablet_tool_notify_proximity_out(tool->tablet_v2_tool);
|
||||||
pointer_motion(cursor, time_msec, input_device->wlr_device, dx, dy, dx, dy);
|
pointer_motion(cursor, time_msec, input_device->wlr_device, dx, dy, dx, dy);
|
||||||
|
wlr_seat_pointer_notify_frame(cursor->seat->wlr_seat);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,23 +42,21 @@ static void handle_im_commit(struct wl_listener *listener, void *data) {
|
||||||
if (!text_input) {
|
if (!text_input) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
struct wlr_input_method_v2 *context = data;
|
if (relay->input_method->current.preedit.text) {
|
||||||
assert(context == relay->input_method);
|
|
||||||
if (context->current.preedit.text) {
|
|
||||||
wlr_text_input_v3_send_preedit_string(text_input->input,
|
wlr_text_input_v3_send_preedit_string(text_input->input,
|
||||||
context->current.preedit.text,
|
relay->input_method->current.preedit.text,
|
||||||
context->current.preedit.cursor_begin,
|
relay->input_method->current.preedit.cursor_begin,
|
||||||
context->current.preedit.cursor_end);
|
relay->input_method->current.preedit.cursor_end);
|
||||||
}
|
}
|
||||||
if (context->current.commit_text) {
|
if (relay->input_method->current.commit_text) {
|
||||||
wlr_text_input_v3_send_commit_string(text_input->input,
|
wlr_text_input_v3_send_commit_string(text_input->input,
|
||||||
context->current.commit_text);
|
relay->input_method->current.commit_text);
|
||||||
}
|
}
|
||||||
if (context->current.delete.before_length
|
if (relay->input_method->current.delete.before_length
|
||||||
|| context->current.delete.after_length) {
|
|| relay->input_method->current.delete.after_length) {
|
||||||
wlr_text_input_v3_send_delete_surrounding_text(text_input->input,
|
wlr_text_input_v3_send_delete_surrounding_text(text_input->input,
|
||||||
context->current.delete.before_length,
|
relay->input_method->current.delete.before_length,
|
||||||
context->current.delete.after_length);
|
relay->input_method->current.delete.after_length);
|
||||||
}
|
}
|
||||||
wlr_text_input_v3_send_done(text_input->input);
|
wlr_text_input_v3_send_done(text_input->input);
|
||||||
}
|
}
|
||||||
|
|
@ -66,7 +64,7 @@ static void handle_im_commit(struct wl_listener *listener, void *data) {
|
||||||
static void handle_im_keyboard_grab_destroy(struct wl_listener *listener, void *data) {
|
static void handle_im_keyboard_grab_destroy(struct wl_listener *listener, void *data) {
|
||||||
struct sway_input_method_relay *relay = wl_container_of(listener, relay,
|
struct sway_input_method_relay *relay = wl_container_of(listener, relay,
|
||||||
input_method_keyboard_grab_destroy);
|
input_method_keyboard_grab_destroy);
|
||||||
struct wlr_input_method_keyboard_grab_v2 *keyboard_grab = data;
|
struct wlr_input_method_keyboard_grab_v2 *keyboard_grab = relay->input_method->keyboard_grab;
|
||||||
struct wlr_seat *wlr_seat = keyboard_grab->input_method->seat;
|
struct wlr_seat *wlr_seat = keyboard_grab->input_method->seat;
|
||||||
wl_list_remove(&relay->input_method_keyboard_grab_destroy.link);
|
wl_list_remove(&relay->input_method_keyboard_grab_destroy.link);
|
||||||
|
|
||||||
|
|
@ -110,8 +108,6 @@ static void text_input_set_pending_focused_surface(
|
||||||
static void handle_im_destroy(struct wl_listener *listener, void *data) {
|
static void handle_im_destroy(struct wl_listener *listener, void *data) {
|
||||||
struct sway_input_method_relay *relay = wl_container_of(listener, relay,
|
struct sway_input_method_relay *relay = wl_container_of(listener, relay,
|
||||||
input_method_destroy);
|
input_method_destroy);
|
||||||
struct wlr_input_method_v2 *context = data;
|
|
||||||
assert(context == relay->input_method);
|
|
||||||
wl_list_remove(&relay->input_method_commit.link);
|
wl_list_remove(&relay->input_method_commit.link);
|
||||||
wl_list_remove(&relay->input_method_grab_keyboard.link);
|
wl_list_remove(&relay->input_method_grab_keyboard.link);
|
||||||
wl_list_remove(&relay->input_method_destroy.link);
|
wl_list_remove(&relay->input_method_destroy.link);
|
||||||
|
|
@ -322,8 +318,6 @@ static void handle_pending_focused_surface_destroy(struct wl_listener *listener,
|
||||||
void *data) {
|
void *data) {
|
||||||
struct sway_text_input *text_input = wl_container_of(listener, text_input,
|
struct sway_text_input *text_input = wl_container_of(listener, text_input,
|
||||||
pending_focused_surface_destroy);
|
pending_focused_surface_destroy);
|
||||||
struct wlr_surface *surface = data;
|
|
||||||
assert(text_input->pending_focused_surface == surface);
|
|
||||||
text_input->pending_focused_surface = NULL;
|
text_input->pending_focused_surface = NULL;
|
||||||
wl_list_remove(&text_input->pending_focused_surface_destroy.link);
|
wl_list_remove(&text_input->pending_focused_surface_destroy.link);
|
||||||
wl_list_init(&text_input->pending_focused_surface_destroy.link);
|
wl_list_init(&text_input->pending_focused_surface_destroy.link);
|
||||||
|
|
|
||||||
|
|
@ -467,7 +467,8 @@ bool server_init(struct sway_server *server) {
|
||||||
WP_COLOR_MANAGER_V1_PRIMARIES_SRGB,
|
WP_COLOR_MANAGER_V1_PRIMARIES_SRGB,
|
||||||
WP_COLOR_MANAGER_V1_PRIMARIES_BT2020,
|
WP_COLOR_MANAGER_V1_PRIMARIES_BT2020,
|
||||||
};
|
};
|
||||||
wlr_color_manager_v1_create(server->wl_display, 1, &(struct wlr_color_manager_v1_options){
|
struct wlr_color_manager_v1 *cm = wlr_color_manager_v1_create(
|
||||||
|
server->wl_display, 1, &(struct wlr_color_manager_v1_options){
|
||||||
.features = {
|
.features = {
|
||||||
.parametric = true,
|
.parametric = true,
|
||||||
.set_mastering_display_primaries = true,
|
.set_mastering_display_primaries = true,
|
||||||
|
|
@ -479,6 +480,7 @@ bool server_init(struct sway_server *server) {
|
||||||
.primaries = primaries,
|
.primaries = primaries,
|
||||||
.primaries_len = sizeof(primaries) / sizeof(primaries[0]),
|
.primaries_len = sizeof(primaries) / sizeof(primaries[0]),
|
||||||
});
|
});
|
||||||
|
wlr_scene_set_color_manager_v1(root->root_scene, cm);
|
||||||
}
|
}
|
||||||
|
|
||||||
wl_list_init(&server->pending_launcher_ctxs);
|
wl_list_init(&server->pending_launcher_ctxs);
|
||||||
|
|
|
||||||
|
|
@ -214,9 +214,7 @@ void root_scratchpad_hide(struct sway_container *con) {
|
||||||
struct sway_node *focus = seat_get_focus_inactive(seat, &root->node);
|
struct sway_node *focus = seat_get_focus_inactive(seat, &root->node);
|
||||||
struct sway_workspace *ws = con->pending.workspace;
|
struct sway_workspace *ws = con->pending.workspace;
|
||||||
|
|
||||||
if (con->pending.fullscreen_mode == FULLSCREEN_GLOBAL && !con->pending.workspace) {
|
if (!con->pending.workspace) {
|
||||||
// If the container was made fullscreen global while in the scratchpad,
|
|
||||||
// it should be shown until fullscreen has been disabled
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue