wm: Better wayland detection
This commit is contained in:
parent
80a34bdf28
commit
9ad9d4d75e
1 changed files with 26 additions and 10 deletions
36
neofetch
36
neofetch
|
@ -677,7 +677,7 @@ get_de() {
|
|||
esac
|
||||
|
||||
# Fallback to using xprop.
|
||||
[[ -n "$DISPLAY" && -z "$de" ]] && \
|
||||
[[ "$DISPLAY" && -z "$de" ]] && \
|
||||
de="$(xprop -root | awk '/KDE_SESSION_VERSION|^_MUFFIN|xfce4|xfce5/')"
|
||||
|
||||
# Format strings.
|
||||
|
@ -703,7 +703,30 @@ get_wm() {
|
|||
# If function was run, stop here.
|
||||
((wm_run == 1)) && return
|
||||
|
||||
if [[ -n "$DISPLAY" && "$os" != "Mac OS X" ]]; then
|
||||
if [[ "$WAYLAND_DISPLAY" ]]; then
|
||||
if [[ "$SWAYSOCK" ]]; then
|
||||
wm="sway"
|
||||
|
||||
else
|
||||
wm="$(ps -e | grep -m 1 -o -F -e "asc" \
|
||||
-e "fireplace" \
|
||||
-e "grefsen" \
|
||||
-e "mazecompositor" \
|
||||
-e "maynard" \
|
||||
-e "motorcar" \
|
||||
-e "orbment" \
|
||||
-e "orbital" \
|
||||
-e "perceptia" \
|
||||
-e "rustland" \
|
||||
-e "velox" \
|
||||
-e "wavy" \
|
||||
-e "wayhouse" \
|
||||
-e "way-cooler" \
|
||||
-e "westford" \
|
||||
-e "weston")"
|
||||
fi
|
||||
|
||||
elif [[ "$DISPLAY" && "$os" != "Mac OS X" ]]; then
|
||||
id="$(xprop -root -notype _NET_SUPPORTING_WM_CHECK)"
|
||||
id="${id##* }"
|
||||
wm="$(xprop -id "$id" -notype -len 100 -f _NET_WM_NAME 8t)"
|
||||
|
@ -714,13 +737,6 @@ get_wm() {
|
|||
# Window Maker does not set _NET_WM_NAME
|
||||
[[ "$wm" =~ "WINDOWMAKER" ]] && wm="wmaker"
|
||||
|
||||
# Fallback for Wayland wms.
|
||||
[[ "$wm" == "xwlc" ]] && \
|
||||
wm="$(ps -e | grep -m 1 -o -F -e "sway" \
|
||||
-e "orbment" \
|
||||
-e "orbital" \
|
||||
-e "way-cooler")"
|
||||
|
||||
else
|
||||
case "$os" in
|
||||
"Mac OS X")
|
||||
|
@ -1634,7 +1650,7 @@ get_style() {
|
|||
# Fix weird output when the function is run multiple times.
|
||||
unset gtk2_theme gtk3_theme theme path
|
||||
|
||||
if [[ -n "$DISPLAY" && "$os" != "Mac OS X" ]]; then
|
||||
if [[ "$DISPLAY" && "$os" != "Mac OS X" ]]; then
|
||||
# Get DE if user has disabled the function.
|
||||
((de_run != 1)) && get_de
|
||||
|
||||
|
|
Loading…
Reference in a new issue