diff --git a/.gitignore b/.gitignore index 6f382cf..0bf9a1c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ /schemas/gschemas.compiled /resources/burn-my-windows.gresource /resources/burn-my-windows.gresource.xml -kwin/_build \ No newline at end of file +kwin/_build +kwin/*.tar.gz \ No newline at end of file diff --git a/kwin/build.sh b/kwin/build.sh index 2811fed..a7a8c0d 100755 --- a/kwin/build.sh +++ b/kwin/build.sh @@ -33,7 +33,7 @@ generate() { DIR_NAME="kwin4_effect_$(echo "$1" | tr '-' '_')" # Use the name of the effect for the JavaScript class name by removing all spaces. - EFFECT_CLASS="BurnMyWindows$(echo "$2" | tr -d ' ')" + EFFECT_CLASS="BurnMyWindows$(echo "$2" | tr -d ' ')Effect" # Create resource directories. mkdir -p "$BUILD_DIR/$DIR_NAME/contents/shaders" @@ -42,25 +42,25 @@ generate() { mkdir -p "$BUILD_DIR/$DIR_NAME/contents/ui" # Copy the config file if it exists. - if [ -f "$DIR_NAME/main.xml" ]; then - cp "$DIR_NAME/main.xml" "$BUILD_DIR/$DIR_NAME/contents/config" + if [ -f "$1/main.xml" ]; then + cp "$1/main.xml" "$BUILD_DIR/$DIR_NAME/contents/config" fi # Copy the ui file if it exists. - if [ -f "$DIR_NAME/config.ui" ]; then - cp "$DIR_NAME/config.ui" "$BUILD_DIR/$DIR_NAME/contents/ui" + if [ -f "$1/config.ui" ]; then + cp "$1/config.ui" "$BUILD_DIR/$DIR_NAME/contents/ui" fi ON_SETTINGS_CHANGE="" ON_ANIMATION_BEGIN="" - if [ -f "$DIR_NAME/onSettingsChanged.js" ]; then - ON_SETTINGS_CHANGE=$(tr '/' '\f' < "$DIR_NAME/onSettingsChanged.js") + if [ -f "$1/onSettingsChanged.js" ]; then + ON_SETTINGS_CHANGE=$(tr '/' '\f' < "$1/onSettingsChanged.js") fi - if [ -f "$DIR_NAME/onAnimationBegin.js" ]; then - ON_ANIMATION_BEGIN=$(tr '/' '\f' < "$DIR_NAME/onAnimationBegin.js") + if [ -f "$1/onAnimationBegin.js" ]; then + ON_ANIMATION_BEGIN=$(tr '/' '\f' < "$1/onAnimationBegin.js") fi cp main.js.in "$BUILD_DIR/$DIR_NAME/contents/code/main.js" @@ -96,6 +96,13 @@ generate() { } > "$BUILD_DIR/$DIR_NAME/contents/shaders/$1.frag" # If clang-format is installed, try to beauty the code a bit. + if command -v clang-format &> /dev/null + then + clang-format -i "$BUILD_DIR/$DIR_NAME/contents/code/main.js" + fi + + # Create an archive for the effect. + tar -C "$BUILD_DIR" -czf $DIR_NAME.tar.gz "$DIR_NAME" } generate "energize-a" "Energize A" "Beam your windows away" diff --git a/kwin/kwin4_effect_energize_a/config.ui b/kwin/energize-a/config.ui similarity index 100% rename from kwin/kwin4_effect_energize_a/config.ui rename to kwin/energize-a/config.ui diff --git a/kwin/kwin4_effect_energize_a/main.xml b/kwin/energize-a/main.xml similarity index 100% rename from kwin/kwin4_effect_energize_a/main.xml rename to kwin/energize-a/main.xml diff --git a/kwin/kwin4_effect_energize_a/onSettingsChanged.js b/kwin/energize-a/onSettingsChanged.js similarity index 100% rename from kwin/kwin4_effect_energize_a/onSettingsChanged.js rename to kwin/energize-a/onSettingsChanged.js diff --git a/kwin/kwin4_effect_energize_b/config.ui b/kwin/energize-b/config.ui similarity index 100% rename from kwin/kwin4_effect_energize_b/config.ui rename to kwin/energize-b/config.ui diff --git a/kwin/kwin4_effect_energize_b/main.xml b/kwin/energize-b/main.xml similarity index 100% rename from kwin/kwin4_effect_energize_b/main.xml rename to kwin/energize-b/main.xml diff --git a/kwin/kwin4_effect_energize_b/onSettingsChanged.js b/kwin/energize-b/onSettingsChanged.js similarity index 100% rename from kwin/kwin4_effect_energize_b/onSettingsChanged.js rename to kwin/energize-b/onSettingsChanged.js diff --git a/kwin/kwin4_effect_hexagon/config.ui b/kwin/hexagon/config.ui similarity index 100% rename from kwin/kwin4_effect_hexagon/config.ui rename to kwin/hexagon/config.ui diff --git a/kwin/kwin4_effect_hexagon/main.xml b/kwin/hexagon/main.xml similarity index 100% rename from kwin/kwin4_effect_hexagon/main.xml rename to kwin/hexagon/main.xml diff --git a/kwin/kwin4_effect_hexagon/onAnimationBegin.js b/kwin/hexagon/onAnimationBegin.js similarity index 100% rename from kwin/kwin4_effect_hexagon/onAnimationBegin.js rename to kwin/hexagon/onAnimationBegin.js diff --git a/kwin/kwin4_effect_hexagon/onSettingsChanged.js b/kwin/hexagon/onSettingsChanged.js similarity index 100% rename from kwin/kwin4_effect_hexagon/onSettingsChanged.js rename to kwin/hexagon/onSettingsChanged.js diff --git a/kwin/kwin4_effect_tv/config.ui b/kwin/tv/config.ui similarity index 100% rename from kwin/kwin4_effect_tv/config.ui rename to kwin/tv/config.ui diff --git a/kwin/kwin4_effect_tv/main.xml b/kwin/tv/main.xml similarity index 100% rename from kwin/kwin4_effect_tv/main.xml rename to kwin/tv/main.xml diff --git a/kwin/kwin4_effect_tv/onSettingsChanged.js b/kwin/tv/onSettingsChanged.js similarity index 100% rename from kwin/kwin4_effect_tv/onSettingsChanged.js rename to kwin/tv/onSettingsChanged.js