Update KDE settings

This commit is contained in:
exu 2025-01-27 19:14:53 +01:00
parent aa5406be6f
commit 0a99c845fb
54 changed files with 305 additions and 263 deletions

View File

@ -8,4 +8,6 @@ function kdesave
cp -r ./konsave-export-main/export/home_folder/.* ~/gitprojects/configs/roles/config/files/ cp -r ./konsave-export-main/export/home_folder/.* ~/gitprojects/configs/roles/config/files/
cp -r ./konsave-export-main/export/share_folder/* ~/gitprojects/configs/roles/config/files/.local/share/ cp -r ./konsave-export-main/export/share_folder/* ~/gitprojects/configs/roles/config/files/.local/share/
rm -rf ./konsave-export-main ./konsave-export-main.knsv rm -rf ./konsave-export-main ./konsave-export-main.knsv
# kdeconnect somehow gets copied every time
rm -rf ~/gitprojects/configs/roles/config/files/.config/kdeconnect/
end end

View File

@ -1,4 +1,4 @@
# erstellt von KDE-Plasma, Sat Dec 7 13:33:16 2024 # erstellt von KDE-Plasma, Mon Jan 27 18:26:41 2025
# #
include "/usr/share/themes/Breeze/gtk-2.0/gtkrc" include "/usr/share/themes/Breeze/gtk-2.0/gtkrc"

View File

@ -1,4 +1,4 @@
# erstellt von KDE-Plasma, Sat Dec 7 13:33:16 2024 # erstellt von KDE-Plasma, Mon Jan 27 18:26:41 2025
# #
gtk-alternative-button-order = 1 gtk-alternative-button-order = 1

View File

@ -26,8 +26,8 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true dataSourceCommonSettings\activeState=true
[UserFeedback] [UserFeedback]
ApplicationStartCount=212 ApplicationStartCount=283
ApplicationTime=153932 ApplicationTime=270662
LastSubmission=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8b\xe6\x4\x30KD\0) LastSubmission=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\x1e\x2\x1c\xbf]\0)
StatisticsCollectionMode=DetailedUsageStatistics StatisticsCollectionMode=DetailedUsageStatistics
SurveyInterval=0 SurveyInterval=0

View File

@ -26,8 +26,8 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true dataSourceCommonSettings\activeState=true
[UserFeedback] [UserFeedback]
ApplicationStartCount=121 ApplicationStartCount=168
ApplicationTime=1619538 ApplicationTime=2562974
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8b\x81\x2\xbb\xe0\x11\0) LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8b\x81\x2\xbb\xe0\x11\0)
LastSubmission=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8b\xec\x2\xe8\x97~\0) LastSubmission=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\x1d\x2\xe2(M\0)
StatisticsCollectionMode=DetailedUsageStatistics StatisticsCollectionMode=DetailedUsageStatistics

View File

@ -123,7 +123,7 @@ ForegroundVisited=198, 160, 246
[DirSelect Dialog] [DirSelect Dialog]
DirSelectDialog Size=2048,1120 DirSelectDialog Size=2048,1120
History Items[$e]=file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Nextcloud/Reading/books/Brandon Sanderson - The Stormlight Archive History Items[$e]=file:$HOME/Downloads/Tidal-ng,file:$HOME/Downloads/newMusic,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Downloads/newBooks,file:$HOME/Nextcloud/Reading/books/Brandon Sanderson - The Stormlight Archive
[General] [General]
ColorSchemeHash=71557b36dcebc5d6df8bcf613f6ec605cd462c1d ColorSchemeHash=71557b36dcebc5d6df8bcf613f6ec605cd462c1d

View File

@ -338,7 +338,7 @@ _launch=Ctrl+Alt+N
_launch=Ctrl+Alt+T _launch=Ctrl+Alt+T
[services][org.kde.konsole.desktop] [services][org.kde.konsole.desktop]
_launch=Ctrl+Alt+Return _launch=none
[services][org.kde.krunner.desktop] [services][org.kde.krunner.desktop]
RunClipboard=none RunClipboard=none
@ -356,3 +356,7 @@ _launch=Print
[services][org.mozilla.Thunderbird.desktop] [services][org.mozilla.Thunderbird.desktop]
_launch=Ctrl+Alt+B _launch=Ctrl+Alt+B
[yakuake]
_k_friendly_name=Yakuake
toggle-window-state=Ctrl+Alt+Return,F12,Yakuake einfahren/ausfahren

File diff suppressed because one or more lines are too long

View File

@ -127,7 +127,7 @@ plugin=org.kde.plasma.systemmonitor.diskactivity
[Containments][29][Applets][79][Configuration] [Containments][29][Applets][79][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=55 PreloadWeight=60
popupHeight=209 popupHeight=209
popupWidth=216 popupWidth=216
@ -311,7 +311,7 @@ plugin=org.kde.plasma.systemmonitor.diskactivity
[Containments][3][Applets][76][Configuration] [Containments][3][Applets][76][Configuration]
CurrentPreset=org.kde.plasma.systemmonitor CurrentPreset=org.kde.plasma.systemmonitor
PreloadWeight=55 PreloadWeight=60
popupHeight=209 popupHeight=209
popupWidth=216 popupWidth=216
@ -381,152 +381,6 @@ totalSensors=["cpu/all/usage"]
[Containments][3][General] [Containments][3][General]
AppletOrder=4;5;6;74;82;75;77;76;7;8;22 AppletOrder=4;5;6;74;82;75;77;76;7;8;22
[Containments][35]
activityId=
formfactor=2
immutability=1
lastScreen=0
location=0
plugin=org.kde.plasma.private.systemtray
popupHeight=432
popupWidth=432
wallpaperplugin=org.kde.image
[Containments][35][Applets][36]
immutability=1
plugin=org.kde.plasma.clipboard
[Containments][35][Applets][36][Configuration]
PreloadWeight=42
[Containments][35][Applets][37]
immutability=1
plugin=org.kde.plasma.devicenotifier
[Containments][35][Applets][37][Configuration]
PreloadWeight=42
[Containments][35][Applets][38]
immutability=1
plugin=org.kde.plasma.manage-inputmethod
[Containments][35][Applets][38][Configuration]
PreloadWeight=42
[Containments][35][Applets][39]
immutability=1
plugin=org.kde.plasma.notifications
[Containments][35][Applets][39][Configuration]
PreloadWeight=42
[Containments][35][Applets][40]
immutability=1
plugin=org.kde.kdeconnect
[Containments][35][Applets][40][Configuration]
PreloadWeight=42
[Containments][35][Applets][41]
immutability=1
plugin=org.kde.plasma.cameraindicator
[Containments][35][Applets][41][Configuration]
PreloadWeight=42
[Containments][35][Applets][42]
immutability=1
plugin=org.kde.plasma.keyboardindicator
[Containments][35][Applets][42][Configuration]
PreloadWeight=42
[Containments][35][Applets][43]
immutability=1
plugin=org.kde.kscreen
[Containments][35][Applets][43][Configuration]
PreloadWeight=42
[Containments][35][Applets][44]
immutability=1
plugin=org.kde.plasma.keyboardlayout
[Containments][35][Applets][44][Configuration]
PreloadWeight=42
[Containments][35][Applets][45]
immutability=1
plugin=org.kde.plasma.volume
[Containments][35][Applets][45][Configuration]
PreloadWeight=42
[Containments][35][Applets][45][Configuration][General]
migrated=true
[Containments][35][Applets][46]
immutability=1
plugin=org.kde.plasma.vault
[Containments][35][Applets][46][Configuration]
PreloadWeight=42
[Containments][35][Applets][47]
immutability=1
plugin=org.kde.plasma.printmanager
[Containments][35][Applets][47][Configuration]
PreloadWeight=42
[Containments][35][Applets][50]
immutability=1
plugin=org.kde.plasma.brightness
[Containments][35][Applets][50][Configuration]
PreloadWeight=42
[Containments][35][Applets][51]
immutability=1
plugin=org.kde.plasma.battery
[Containments][35][Applets][51][Configuration]
PreloadWeight=42
[Containments][35][Applets][52]
immutability=1
plugin=org.kde.plasma.mediacontroller
[Containments][35][Applets][52][Configuration]
PreloadWeight=42
[Containments][35][Applets][53]
immutability=1
plugin=org.kde.plasma.bluetooth
[Containments][35][Applets][53][Configuration]
PreloadWeight=42
[Containments][35][Applets][54]
immutability=1
plugin=org.kde.plasma.networkmanagement
[Containments][35][Applets][54][Configuration]
PreloadWeight=42
[Containments][35][ConfigDialog]
DialogHeight=540
DialogWidth=720
[Containments][35][Configuration]
PreloadWeight=42
[Containments][35][General]
extraItems=org.kde.plasma.battery,org.kde.plasma.clipboard,org.kde.plasma.devicenotifier,org.kde.plasma.manage-inputmethod,org.kde.plasma.mediacontroller,org.kde.plasma.notifications,org.kde.kdeconnect,org.kde.plasma.brightness,org.kde.plasma.cameraindicator,org.kde.plasma.bluetooth,org.kde.plasma.keyboardindicator,org.kde.kscreen,org.kde.plasma.keyboardlayout,org.kde.plasma.networkmanagement,org.kde.plasma.volume,org.kde.plasma.vault,org.kde.plasma.printmanager
hiddenItems=firewall-applet
knownItems=org.kde.plasma.battery,org.kde.plasma.clipboard,org.kde.plasma.devicenotifier,org.kde.plasma.manage-inputmethod,org.kde.plasma.mediacontroller,org.kde.plasma.notifications,org.kde.kdeconnect,org.kde.plasma.brightness,org.kde.plasma.cameraindicator,org.kde.plasma.bluetooth,org.kde.plasma.keyboardindicator,org.kde.kscreen,org.kde.plasma.keyboardlayout,org.kde.plasma.networkmanagement,org.kde.plasma.volume,org.kde.plasma.vault,org.kde.plasma.printmanager
shownItems=Nextcloud
[Containments][56] [Containments][56]
activityId= activityId=
formfactor=2 formfactor=2
@ -547,7 +401,7 @@ immutability=1
plugin=org.kde.plasma.devicenotifier plugin=org.kde.plasma.devicenotifier
[Containments][56][Applets][58][Configuration] [Containments][56][Applets][58][Configuration]
PreloadWeight=65 PreloadWeight=100
[Containments][56][Applets][59] [Containments][56][Applets][59]
immutability=1 immutability=1
@ -564,6 +418,9 @@ PreloadWeight=75
immutability=1 immutability=1
plugin=org.kde.kdeconnect plugin=org.kde.kdeconnect
[Containments][56][Applets][61][Configuration]
PreloadWeight=55
[Containments][56][Applets][62] [Containments][56][Applets][62]
immutability=1 immutability=1
plugin=org.kde.plasma.cameraindicator plugin=org.kde.plasma.cameraindicator
@ -588,7 +445,6 @@ plugin=org.kde.plasma.volume
PreloadWeight=100 PreloadWeight=100
[Containments][56][Applets][66][Configuration][General] [Containments][56][Applets][66][Configuration][General]
currentTab=streams
migrated=true migrated=true
[Containments][56][Applets][67] [Containments][56][Applets][67]
@ -665,7 +521,7 @@ immutability=1
plugin=org.kde.plasma.devicenotifier plugin=org.kde.plasma.devicenotifier
[Containments][9][Applets][11][Configuration] [Containments][9][Applets][11][Configuration]
PreloadWeight=70 PreloadWeight=100
[Containments][9][Applets][12] [Containments][9][Applets][12]
immutability=1 immutability=1
@ -683,7 +539,7 @@ immutability=1
plugin=org.kde.kdeconnect plugin=org.kde.kdeconnect
[Containments][9][Applets][14][Configuration] [Containments][9][Applets][14][Configuration]
PreloadWeight=60 PreloadWeight=65
[Containments][9][Applets][15] [Containments][9][Applets][15]
immutability=1 immutability=1
@ -722,12 +578,15 @@ plugin=org.kde.plasma.vault
immutability=1 immutability=1
plugin=org.kde.plasma.printmanager plugin=org.kde.plasma.printmanager
[Containments][9][Applets][21][Configuration]
PreloadWeight=55
[Containments][9][Applets][24] [Containments][9][Applets][24]
immutability=1 immutability=1
plugin=org.kde.plasma.bluetooth plugin=org.kde.plasma.bluetooth
[Containments][9][Applets][24][Configuration] [Containments][9][Applets][24][Configuration]
PreloadWeight=3 PreloadWeight=0
[Containments][9][Applets][25] [Containments][9][Applets][25]
immutability=1 immutability=1
@ -744,7 +603,7 @@ immutability=1
plugin=org.kde.plasma.brightness plugin=org.kde.plasma.brightness
[Containments][9][Applets][26][Configuration] [Containments][9][Applets][26][Configuration]
PreloadWeight=23 PreloadWeight=7
[Containments][9][Applets][26][Configuration][ConfigDialog] [Containments][9][Applets][26][Configuration][ConfigDialog]
DialogHeight=540 DialogHeight=540
@ -755,7 +614,10 @@ immutability=1
plugin=org.kde.plasma.battery plugin=org.kde.plasma.battery
[Containments][9][Applets][27][Configuration] [Containments][9][Applets][27][Configuration]
PreloadWeight=5 PreloadWeight=0
[Containments][9][Applets][27][Configuration][General]
showPercentage=true
[Containments][9][Applets][28] [Containments][9][Applets][28]
immutability=1 immutability=1

View File

@ -1 +1 @@
a5e0d0d3-2901-47c2-a225-18525c716c47 5e732d67-aade-4f29-86a2-772d0947cf6f

View File

@ -1 +1 @@
a7bf45ce-a1df-4275-90dc-b2633e3d7866 b5628c9d-4f2a-41a5-aff3-78043e56f8c5

View File

@ -1 +1 @@
e624ae44-85b3-4bd2-b268-8819ecc9b476 0f034bd8-1279-44f9-9a91-668adf329281

View File

@ -1 +1 @@
883856aa-3d52-4283-b7dc-e90627b6e9a9 487cbcf0-8e8d-415a-8928-3ba56faa6c92

View File

@ -1 +1 @@
c8489d2d-8024-49ce-89e0-f752725561cd cca0067b-8b11-4053-805a-61bd41bcfcea

View File

@ -0,0 +1 @@
e3ca4c10-be2b-4fd8-b5bf-eef647cca30f

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 944 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 829 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 833 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 681 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 839 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -71,12 +71,13 @@ class KWinConfig {
this.columnsLayoutInitialAngle = KWIN.readConfig("columnsLayoutInitialRotationAngle", "0"); this.columnsLayoutInitialAngle = KWIN.readConfig("columnsLayoutInitialRotationAngle", "0");
this.columnsBalanced = KWIN.readConfig("columnsBalanced", false); this.columnsBalanced = KWIN.readConfig("columnsBalanced", false);
this.columnsLayerConf = commaSeparate(KWIN.readConfig("columnsLayerConf", "")); this.columnsLayerConf = commaSeparate(KWIN.readConfig("columnsLayerConf", ""));
this.tiledWindowsLayer = getWindowLayer(KWIN.readConfig("tiledWindowsLayer", 0));
this.floatedWindowsLayer = getWindowLayer(KWIN.readConfig("floatedWindowsLayer", 1));
this.monocleMaximize = KWIN.readConfig("monocleMaximize", true); this.monocleMaximize = KWIN.readConfig("monocleMaximize", true);
this.monocleMinimizeRest = KWIN.readConfig("monocleMinimizeRest", false); this.monocleMinimizeRest = KWIN.readConfig("monocleMinimizeRest", false);
this.stairReverse = KWIN.readConfig("stairReverse", false); this.stairReverse = KWIN.readConfig("stairReverse", false);
this.adjustLayout = KWIN.readConfig("adjustLayout", true); this.adjustLayout = KWIN.readConfig("adjustLayout", true);
this.adjustLayoutLive = KWIN.readConfig("adjustLayoutLive", true); this.adjustLayoutLive = KWIN.readConfig("adjustLayoutLive", true);
this.keepFloatAbove = KWIN.readConfig("keepFloatAbove", true);
this.keepTilingOnDrag = KWIN.readConfig("keepTilingOnDrag", true); this.keepTilingOnDrag = KWIN.readConfig("keepTilingOnDrag", true);
this.noTileBorder = KWIN.readConfig("noTileBorder", false); this.noTileBorder = KWIN.readConfig("noTileBorder", false);
this.limitTileWidthRatio = 0; this.limitTileWidthRatio = 0;
@ -389,6 +390,7 @@ class KWinDriver {
} }
}); });
this.connect(client.fullScreenChanged, () => this.control.onWindowChanged(this, window, "fullscreen=" + client.fullScreen)); this.connect(client.fullScreenChanged, () => this.control.onWindowChanged(this, window, "fullscreen=" + client.fullScreen));
this.connect(client.desktopsChanged, () => this.control.onDesktopsChanged(this, window));
this.connect(client.interactiveMoveResizeStepped, (geometry) => { this.connect(client.interactiveMoveResizeStepped, (geometry) => {
if (client.resize) if (client.resize)
return; return;
@ -561,31 +563,20 @@ class KWinWindow {
get shouldIgnore() { get shouldIgnore() {
if (this.window.deleted) if (this.window.deleted)
return true; return true;
const resourceClass = String(this.window.resourceClass);
const resourceName = String(this.window.resourceName);
const windowRole = String(this.window.windowRole);
return (this.window.specialWindow || return (this.window.specialWindow ||
resourceClass === "plasmashell" || this.window.resourceClass === "plasmashell" ||
KWINCONFIG.ignoreClass.indexOf(resourceClass) >= 0 || this.isIgnoredByConfig);
KWINCONFIG.ignoreClass.indexOf(resourceName) >= 0 ||
matchWords(this.window.caption, KWINCONFIG.ignoreTitle) >= 0 ||
KWINCONFIG.ignoreRole.indexOf(windowRole) >= 0 ||
(KWINCONFIG.tileNothing && KWINCONFIG.tilingClass.indexOf(resourceClass) < 0));
} }
get shouldFloat() { get shouldFloat() {
const resourceClass = String(this.window.resourceClass);
const resourceName = String(this.window.resourceName);
const moreOneDesktop = this.window.desktops.length !== 1; const moreOneDesktop = this.window.desktops.length !== 1;
return (moreOneDesktop || return (this.isFloatByConfig ||
moreOneDesktop ||
this.window.onAllDesktops || this.window.onAllDesktops ||
this.window.modal || this.window.modal ||
this.window.transient || this.window.transient ||
!this.window.resizeable || !this.window.resizeable ||
(KWINCONFIG.floatUtility && (KWINCONFIG.floatUtility &&
(this.window.dialog || this.window.splash || this.window.utility)) || (this.window.dialog || this.window.splash || this.window.utility)));
KWINCONFIG.floatingClass.indexOf(resourceClass) >= 0 ||
KWINCONFIG.floatingClass.indexOf(resourceName) >= 0 ||
matchWords(this.window.caption, KWINCONFIG.floatingTitle) >= 0);
} }
get minimized() { get minimized() {
return this.window.minimized; return this.window.minimized;
@ -615,9 +606,23 @@ class KWinWindow {
this.maximized = false; this.maximized = false;
this.noBorderManaged = false; this.noBorderManaged = false;
this.noBorderOriginal = window.noBorder; this.noBorderOriginal = window.noBorder;
this.isIgnoredByConfig =
this.isContain(KWINCONFIG.ignoreClass, window.resourceClass) ||
this.isContain(KWINCONFIG.ignoreClass, window.resourceName) ||
matchWords(this.window.caption, KWINCONFIG.ignoreTitle) >= 0 ||
this.isContain(KWINCONFIG.ignoreRole, window.windowRole) ||
(KWINCONFIG.tileNothing &&
this.isContain(KWINCONFIG.tilingClass, window.resourceClass));
this.isFloatByConfig =
this.isContain(KWINCONFIG.floatingClass, window.resourceClass) ||
this.isContain(KWINCONFIG.floatingClass, window.resourceName) ||
matchWords(this.window.caption, KWINCONFIG.floatingTitle) >= 0;
} }
commit(geometry, noBorder, keepAbove) { commit(geometry, noBorder, windowLayer) {
debugObj(() => ["KWinWindow#commit", { geometry, noBorder, keepAbove }]); debugObj(() => [
"KWinWindow#commit",
{ geometry, noBorder, keepAbove: windowLayer },
]);
if (this.window.move || this.window.resize) if (this.window.move || this.window.resize)
return; return;
if (noBorder !== undefined) { if (noBorder !== undefined) {
@ -631,8 +636,16 @@ class KWinWindow {
this.window.noBorder = this.noBorderOriginal; this.window.noBorder = this.noBorderOriginal;
this.noBorderManaged = noBorder; this.noBorderManaged = noBorder;
} }
if (keepAbove !== undefined) if (windowLayer !== undefined) {
this.window.keepAbove = keepAbove; if (windowLayer === 2)
this.window.keepAbove = true;
else if (windowLayer === 0)
this.window.keepBelow = true;
else if (windowLayer === 1) {
this.window.keepAbove = false;
this.window.keepBelow = false;
}
}
if (geometry !== undefined) { if (geometry !== undefined) {
geometry = this.adjustGeometry(geometry); geometry = this.adjustGeometry(geometry);
if (KWINCONFIG.preventProtrusion) { if (KWINCONFIG.preventProtrusion) {
@ -666,6 +679,19 @@ class KWinWindow {
this.window.activities.indexOf(ksrf.activity) !== -1) && this.window.activities.indexOf(ksrf.activity) !== -1) &&
this.window.output === ksrf.output); this.window.output === ksrf.output);
} }
isContain(filterList, s) {
for (let filterWord of filterList) {
if (filterWord[0] === "[" && filterWord[filterWord.length - 1] === "]") {
if (s
.toLowerCase()
.includes(filterWord.toLowerCase().slice(1, filterWord.length - 1)))
return true;
}
else if (s.toLowerCase() === filterWord.toLowerCase())
return true;
}
return false;
}
adjustGeometry(geometry) { adjustGeometry(geometry) {
let width = geometry.width; let width = geometry.width;
let height = geometry.height; let height = geometry.height;
@ -806,17 +832,22 @@ class TestWindow {
this.fullScreen = false; this.fullScreen = false;
this.geometry = geometry || new Rect(0, 0, 100, 100); this.geometry = geometry || new Rect(0, 0, 100, 100);
this.keepAbove = false; this.keepAbove = false;
this.keepBelow = false;
this.maximized = false; this.maximized = false;
this.minimized = false; this.minimized = false;
this.noBorder = false; this.noBorder = false;
} }
commit(geometry, noBorder, keepAbove) { commit(geometry, noBorder, windowLayer) {
if (geometry) if (geometry)
this.geometry = geometry; this.geometry = geometry;
if (noBorder !== undefined) if (noBorder !== undefined)
this.noBorder = noBorder; this.noBorder = noBorder;
if (keepAbove !== undefined) if (windowLayer !== undefined) {
this.keepAbove = keepAbove; if (windowLayer === 2)
this.keepAbove = true;
else if (windowLayer === 0)
this.keepBelow = true;
}
} }
focus() { focus() {
} }
@ -963,6 +994,9 @@ class TilingController {
onWindowFocused(ctx, window) { onWindowFocused(ctx, window) {
window.timestamp = new Date().getTime(); window.timestamp = new Date().getTime();
} }
onDesktopsChanged(ctx, window) {
window.state = WindowState.Undecided;
}
onShortcut(ctx, input, data) { onShortcut(ctx, input, data) {
if (CONFIG.directionalKeyMode === "dwm") { if (CONFIG.directionalKeyMode === "dwm") {
switch (input) { switch (input) {
@ -1201,10 +1235,11 @@ class TilingEngine {
}, },
]); ]);
visibles.forEach((window) => { visibles.forEach((window) => {
if (window.state === WindowState.Undecided) if (window.state === WindowState.Undecided) {
window.state = window.shouldFloat window.state = window.shouldFloat
? WindowState.Floating ? WindowState.Floating
: WindowState.Tiled; : WindowState.Tiled;
}
}); });
const tileables = this.windows.getVisibleTileables(srf); const tileables = this.windows.getVisibleTileables(srf);
if (CONFIG.maximizeSoleTile && tileables.length === 1) { if (CONFIG.maximizeSoleTile && tileables.length === 1) {
@ -1691,27 +1726,27 @@ class WindowClass {
case WindowState.Dragging: case WindowState.Dragging:
break; break;
case WindowState.NativeMaximized: case WindowState.NativeMaximized:
this.window.commit(undefined, undefined, false); this.window.commit(undefined, undefined, undefined);
break; break;
case WindowState.NativeFullscreen: case WindowState.NativeFullscreen:
this.window.commit(undefined, undefined, undefined); this.window.commit(undefined, undefined, 1);
break; break;
case WindowState.Floating: case WindowState.Floating:
if (!this.shouldCommitFloat) if (!this.shouldCommitFloat)
break; break;
this.window.commit(this.floatGeometry, false, CONFIG.keepFloatAbove); this.window.commit(this.floatGeometry, false, CONFIG.floatedWindowsLayer);
this.shouldCommitFloat = false; this.shouldCommitFloat = false;
break; break;
case WindowState.Maximized: case WindowState.Maximized:
this.window.commit(this.geometry, true, false); this.window.commit(this.geometry, true, 1);
break; break;
case WindowState.Tiled: case WindowState.Tiled:
this.window.commit(this.geometry, CONFIG.noTileBorder, false); this.window.commit(this.geometry, CONFIG.noTileBorder, CONFIG.tiledWindowsLayer);
break; break;
case WindowState.TiledAfloat: case WindowState.TiledAfloat:
if (!this.shouldCommitFloat) if (!this.shouldCommitFloat)
break; break;
this.window.commit(this.floatGeometry, false, CONFIG.keepFloatAbove); this.window.commit(this.floatGeometry, false, CONFIG.floatedWindowsLayer);
this.shouldCommitFloat = false; this.shouldCommitFloat = false;
break; break;
} }
@ -1807,6 +1842,16 @@ class WindowStore {
return this.list.filter((win) => win.tileable && win.visible(srf)); return this.list.filter((win) => win.tileable && win.visible(srf));
} }
} }
function getWindowLayer(index) {
if (index === 0)
return 0;
else if (index === 1)
return 1;
else if (index === 2)
return 2;
else
return 1;
}
class BTreeLayout { class BTreeLayout {
get description() { get description() {
return "BTree"; return "BTree";

View File

@ -102,7 +102,7 @@
<entry name="ignoreClass" type="String"> <entry name="ignoreClass" type="String">
<label>Ignore windows with certain classes(comma-separated list)</label> <label>Ignore windows with certain classes(comma-separated list)</label>
<default>krunner,yakuake,spectacle,kded5,xwaylandvideobridge,plasmashell,ksplashqml,org.kde.plasmashell,org.kde.polkit-kde-authentication-agent-1,org.kde.kruler</default> <default>krunner,yakuake,spectacle,kded5,xwaylandvideobridge,plasmashell,ksplashqml,org.kde.plasmashell,org.kde.polkit-kde-authentication-agent-1,org.kde.kruler,kruler</default>
</entry> </entry>
<entry name="ignoreRole" type="String"> <entry name="ignoreRole" type="String">
@ -164,6 +164,16 @@
<default>true</default> <default>true</default>
</entry> </entry>
<entry name="tiledWindowsLayer" type="Int">
<label>What layer will have tiled windows</label>
<default>0</default>
</entry>
<entry name="floatedWindowsLayer" type="Int">
<label>What layer will have floated windows</label>
<default>1</default>
</entry>
<entry name="maximizeSoleTile" type="Bool"> <entry name="maximizeSoleTile" type="Bool">
<label>If there is only one tile on the screen, remove screen gap and its borde, making it appear almost fullscreen.</label> <label>If there is only one tile on the screen, remove screen gap and its borde, making it appear almost fullscreen.</label>
<default>false</default> <default>false</default>
@ -189,11 +199,6 @@
<default>true</default> <default>true</default>
</entry> </entry>
<entry name="keepFloatAbove" type="Bool">
<label>Keep tiled windows below floating windows</label>
<default>true</default>
</entry>
<entry name="keepTilingOnDrag" type="Bool"> <entry name="keepTilingOnDrag" type="Bool">
<label>Always preserve the tiling status of a window upon dragging</label> <label>Always preserve the tiling status of a window upon dragging</label>
<default>true</default> <default>true</default>

View File

@ -1078,6 +1078,80 @@
<string>Options</string> <string>Options</string>
</attribute> </attribute>
<layout class="QVBoxLayout" name="verticalLayout"> <layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QGroupBox" name="GB_windowLayer">
<property name="title">
<string>Window Layer</string>
</property>
<layout class="QGridLayout" name="gridLayout_9">
<item row="0" column="0" alignment="Qt::AlignmentFlag::AlignLeft">
<widget class="QLabel" name="label_13">
<property name="text">
<string>Tiled</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="kcfg_tiledWindowsLayer">
<item>
<property name="text">
<string>Bottom</string>
</property>
</item>
<item>
<property name="text">
<string>Normal</string>
</property>
</item>
<item>
<property name="text">
<string>Above</string>
</property>
</item>
</widget>
</item>
<item row="0" column="2">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_14">
<property name="text">
<string>Float </string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="kcfg_floatedWindowsLayer">
<item>
<property name="text">
<string>Bottom</string>
</property>
</item>
<item>
<property name="text">
<string>Normal</string>
</property>
</item>
<item>
<property name="text">
<string>Above</string>
</property>
</item>
</widget>
</item>
</layout>
</widget>
</item>
<item> <item>
<widget class="QCheckBox" name="kcfg_maximizeSoleTile"> <widget class="QCheckBox" name="kcfg_maximizeSoleTile">
<property name="toolTip"> <property name="toolTip">
@ -1098,13 +1172,6 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QCheckBox" name="kcfg_keepFloatAbove">
<property name="text">
<string>Keep floating windows above tiled windows</string>
</property>
</widget>
</item>
<item> <item>
<widget class="QCheckBox" name="kcfg_keepTilingOnDrag"> <widget class="QCheckBox" name="kcfg_keepTilingOnDrag">
<property name="text"> <property name="text">

View File

@ -2,7 +2,7 @@
"KPackageStructure": "KWin/Script", "KPackageStructure": "KWin/Script",
"KPlugin": { "KPlugin": {
"Name": "Krohnkite", "Name": "Krohnkite",
"Description": "A dynamic tiling script for KWin (78c5bb4)", "Description": "A dynamic tiling script for KWin (83dd1ab)",
"Icon": "dialog-tile-clones", "Icon": "dialog-tile-clones",
"Authors": [ "Authors": [
@ -12,7 +12,7 @@
} }
], ],
"Id": "krohnkite", "Id": "krohnkite",
"Version": "0.9.8.4", "Version": "0.9.8.5",
"License": "MIT", "License": "MIT",
"Website": "https://github.com/anametologin/krohnkite#readme" "Website": "https://github.com/anametologin/krohnkite#readme"
}, },

View File

@ -1,6 +1,6 @@
<?xml version='1.0'?> <?xml version='1.0'?>
<!DOCTYPE gui SYSTEM 'kpartgui.dtd'> <!DOCTYPE gui SYSTEM 'kpartgui.dtd'>
<gui name="dolphin" version="40"> <gui name="dolphin" version="41">
<MenuBar> <MenuBar>
<Menu name="file"> <Menu name="file">
<Action name="new_menu"/> <Action name="new_menu"/>
@ -73,11 +73,24 @@
<Action name="open_preferred_search_tool"/> <Action name="open_preferred_search_tool"/>
<Action name="open_terminal"/> <Action name="open_terminal"/>
<Action name="open_terminal_here"/> <Action name="open_terminal_here"/>
<Action name="focus_terminal_panel"/>
<Action name="compare_files"/> <Action name="compare_files"/>
<Action name="change_remote_encoding"/> <Action name="change_remote_encoding"/>
</Menu> </Menu>
</MenuBar> </MenuBar>
<ToolBar name="mainToolBar" noMerge="1">
<text context="@title:menu">Main Toolbar</text>
<Action name="go_back"/>
<Action name="go_forward"/>
<Separator name="separator_1"/>
<Action name="icons"/>
<Action name="compact"/>
<Action name="details"/>
<Action name="url_navigators"/>
<Action name="split_view"/>
<Action name="split_stash"/>
<Action name="toggle_search"/>
<Action name="hamburger_menu"/>
</ToolBar>
<State name="new_file"> <State name="new_file">
<disable> <disable>
<Action name="edit_undo"/> <Action name="edit_undo"/>
@ -103,38 +116,24 @@
<Action name="invert_selection"/> <Action name="invert_selection"/>
</disable> </disable>
</State> </State>
<ToolBar name="mainToolBar" noMerge="1">
<text context="@title:menu">Main Toolbar</text>
<Action name="go_back"/>
<Action name="go_forward"/>
<Separator name="separator_1"/>
<Action name="icons"/>
<Action name="compact"/>
<Action name="details"/>
<Action name="url_navigators"/>
<Action name="split_view"/>
<Action name="split_stash"/>
<Action name="toggle_search"/>
<Action name="hamburger_menu"/>
</ToolBar>
<ActionProperties scheme="Default"> <ActionProperties scheme="Default">
<Action name="go_back" priority="0"/>
<Action name="go_forward" priority="0"/>
<Action name="go_up" priority="0"/>
<Action name="go_home" priority="0"/>
<Action name="stop" priority="0"/>
<Action name="icons" priority="0"/>
<Action name="compact" priority="0"/> <Action name="compact" priority="0"/>
<Action name="details" priority="0"/> <Action name="details" priority="0"/>
<Action name="view_zoom_in" priority="0"/>
<Action name="view_zoom_reset" priority="0"/>
<Action name="view_zoom_out" priority="0"/>
<Action name="edit_cut" priority="0" shortcut="Ctrl+X"/>
<Action name="edit_copy" priority="0"/> <Action name="edit_copy" priority="0"/>
<Action name="edit_cut" priority="0" shortcut="Ctrl+X"/>
<Action name="edit_paste" priority="0"/> <Action name="edit_paste" priority="0"/>
<Action name="toggle_search" priority="0"/> <Action name="go_back" priority="0"/>
<Action name="toggle_filter" priority="0"/> <Action name="go_forward" priority="0"/>
<Action name="go_home" priority="0"/>
<Action name="go_up" priority="0"/>
<Action name="icons" priority="0"/>
<Action name="open_terminal" shortcut=""/> <Action name="open_terminal" shortcut=""/>
<Action name="open_terminal_here" shortcut="Ctrl+Return"/> <Action name="open_terminal_here" shortcut="Ctrl+Return"/>
<Action name="stop" priority="0"/>
<Action name="toggle_filter" priority="0"/>
<Action name="toggle_search" priority="0"/>
<Action name="view_zoom_in" priority="0"/>
<Action name="view_zoom_out" priority="0"/>
<Action name="view_zoom_reset" priority="0"/>
</ActionProperties> </ActionProperties>
</gui> </gui>

View File

@ -0,0 +1,41 @@
<?xml version='1.0'?>
<!DOCTYPE gui SYSTEM 'kpartgui.dtd'>
<gui name="konsolepart" translationDomain="konsole" version="14">
<Menu name="session-popup-menu">
<Action name="edit_copy_contextmenu"/>
<Action name="edit_paste"/>
<Action name="web-search"/>
<Action name="open-browser"/>
<Separator/>
<Menu name="view-split">
<text>Split View</text>
<Action name="split-view-left-right"/>
<Action name="split-view-top-bottom"/>
</Menu>
<Separator/>
<Action name="set-encoding"/>
<Separator/>
<Action name="edit_find"/>
<Menu name="history">
<text>S&amp;crollback</text>
<Action group="session-history-operations" name="file_save_as"/>
<Separator group="session-history-operations"/>
<Action group="session-history-operations" name="adjust-history"/>
<Separator group="session-history-operations"/>
<Action group="session-history-operations" name="clear-history"/>
<Action group="session-history-operations" name="clear-history-and-reset"/>
</Menu>
<Separator/>
<Action name="view-readonly"/>
<Action name="allow-mouse-tracking"/>
<Separator/>
<Action name="switch-profile"/>
<Action name="edit-current-profile"/>
<Action name="manage-profiles"/>
<Separator/>
<Action name="close-session"/>
</Menu>
<ActionProperties scheme="Default">
<Action name="close-session" shortcut=""/>
</ActionProperties>
</gui>

View File

@ -1,15 +1,18 @@
<!DOCTYPE gui> <?xml version='1.0'?>
<gui name="session" translationDomain="kxmlgui6" version="35"> <!DOCTYPE gui SYSTEM 'kpartgui.dtd'>
<MenuBar alreadyVisited="1"> <gui name="session" version="36">
<Menu alreadyVisited="1" name="file" noMerge="1"> <MenuBar>
<Menu name="file">
<Action group="session-operations" name="file_save_as"/> <Action group="session-operations" name="file_save_as"/>
<Action group="session-operations" name="file-autosave"/>
<Action group="session-operations" name="stop-autosave"/>
<Separator group="session-operations"/> <Separator group="session-operations"/>
<Action group="session-operations" name="file_print"/> <Action group="session-operations" name="file_print"/>
<Separator group="session-operations"/> <Separator group="session-operations"/>
<Action group="session-operations" name="open-browser"/> <Action group="session-operations" name="open-browser"/>
<Action group="session-tab-operations" name="close-session"/> <Action group="session-tab-operations" name="close-session"/>
</Menu> </Menu>
<Menu alreadyVisited="1" name="edit" noMerge="1"> <Menu name="edit">
<Action group="session-edit-operations" name="edit_copy"/> <Action group="session-edit-operations" name="edit_copy"/>
<Action group="session-edit-operations" name="edit_paste"/> <Action group="session-edit-operations" name="edit_paste"/>
<Separator group="session-edit-operations"/> <Separator group="session-edit-operations"/>
@ -25,7 +28,7 @@
<Action group="session-edit-operations" name="edit_find_next"/> <Action group="session-edit-operations" name="edit_find_next"/>
<Action group="session-edit-operations" name="edit_find_prev"/> <Action group="session-edit-operations" name="edit_find_prev"/>
</Menu> </Menu>
<Menu alreadyVisited="1" name="view" noMerge="1"> <Menu name="view">
<Action group="session-view-operations" name="monitor-once"/> <Action group="session-view-operations" name="monitor-once"/>
<Action group="session-view-operations" name="monitor-prompt"/> <Action group="session-view-operations" name="monitor-prompt"/>
<Action group="session-view-operations" name="monitor-silence"/> <Action group="session-view-operations" name="monitor-silence"/>
@ -43,15 +46,19 @@
<Action group="session-view-operations" name="clear-history"/> <Action group="session-view-operations" name="clear-history"/>
<Action group="session-view-operations" name="clear-history-and-reset"/> <Action group="session-view-operations" name="clear-history-and-reset"/>
</Menu> </Menu>
<Menu alreadyVisited="1" name="settings" noMerge="1"> <Menu name="settings">
<Action group="session-settings" name="edit-current-profile"/> <Action group="session-settings" name="edit-current-profile"/>
<Action group="session-settings" name="switch-profile"/> <Action group="session-settings" name="switch-profile"/>
</Menu> </Menu>
</MenuBar> </MenuBar>
<ToolBar name="sessionToolbar" noMerge="1">
<text translationDomain="konsole">Session Toolbar</text>
<index>1</index>
</ToolBar>
<ToolBar alreadyVisited="1" name="mainToolBar" noMerge="1"> <ToolBar alreadyVisited="1" name="mainToolBar" noMerge="1">
<text translationDomain="kxmlgui6">Main Toolbar</text> <text translationDomain="kxmlgui6">Main Toolbar</text>
</ToolBar> </ToolBar>
<Menu name="session-popup-menu" noMerge="1"> <Menu name="session-popup-menu">
<Action name="edit_copy_contextmenu"/> <Action name="edit_copy_contextmenu"/>
<Action name="edit_copy_contextmenu_in"/> <Action name="edit_copy_contextmenu_in"/>
<Action name="edit_copy_contextmenu_out"/> <Action name="edit_copy_contextmenu_out"/>
@ -60,8 +67,8 @@
<Action name="web-search"/> <Action name="web-search"/>
<Action name="open-browser"/> <Action name="open-browser"/>
<Separator/> <Separator/>
<Menu name="view-split" noMerge="1"> <Menu name="view-split">
<text translationDomain="konsole">Split View</text> <text>Split View</text>
<Action name="split-view-left-right"/> <Action name="split-view-left-right"/>
<Action name="split-view-top-bottom"/> <Action name="split-view-top-bottom"/>
</Menu> </Menu>
@ -76,8 +83,5 @@
<Action name="switch-profile"/> <Action name="switch-profile"/>
<Action name="edit-current-profile"/> <Action name="edit-current-profile"/>
</Menu> </Menu>
<ToolBar name="sessionToolbar" noMerge="1"> <ActionProperties/>
<text translationDomain="konsole">Session Toolbar</text>
<index>1</index>
</ToolBar>
</gui> </gui>