Improve yoo
This commit is contained in:
parent
0f156ff3a9
commit
44f85c76ec
21 changed files with 599 additions and 1278 deletions
|
@ -26,4 +26,6 @@ add_executable(yo_dwm
|
||||||
src/movestack.c
|
src/movestack.c
|
||||||
src/transient.c
|
src/transient.c
|
||||||
src/util.c
|
src/util.c
|
||||||
src/util.h)
|
src/util.h src/keys/mouse.c src/keys/mouse.h src/keys/functions.h src/dwm.h)
|
||||||
|
|
||||||
|
target_link_libraries(yo_dwm X11 Xft Xinerama)
|
||||||
|
|
|
@ -0,0 +1,97 @@
|
||||||
|
{
|
||||||
|
"inputs" :
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"path" : "CMakeLists.txt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isGenerated" : true,
|
||||||
|
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeSystem.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isGenerated" : true,
|
||||||
|
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeGenericSystem.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/UnixPaths.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCInformation.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-C.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isCMake" : true,
|
||||||
|
"isExternal" : true,
|
||||||
|
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"kind" : "cmakeFiles",
|
||||||
|
"paths" :
|
||||||
|
{
|
||||||
|
"build" : "/home/anas/suckless_utils/yo-dwm/cmake-build-debug",
|
||||||
|
"source" : "/home/anas/suckless_utils/yo-dwm"
|
||||||
|
},
|
||||||
|
"version" :
|
||||||
|
{
|
||||||
|
"major" : 1,
|
||||||
|
"minor" : 0
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,406 +0,0 @@
|
||||||
{
|
|
||||||
"inputs" :
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"path" : "CMakeLists.txt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineSystem.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystem.cmake.in"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isGenerated" : true,
|
|
||||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeSystem.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompilerId.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCompilerIdDetection.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ADSP-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Borland-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Cray-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GHS-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/HP-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IAR-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Intel-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/LCC-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/MSVC-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/PGI-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/PathScale-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SCO-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/TI-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Watcom-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/XL-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeFindBinUtils.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-FindBinUtils.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompiler.cmake.in"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isGenerated" : true,
|
|
||||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeGenericSystem.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/UnixPaths.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCInformation.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-C.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCCompiler.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCompilerCommon.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompilerABI.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseImplicitIncludeInfo.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseImplicitLinkInfo.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseLibraryArchitecture.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCompilerCommon.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompileFeatures.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Internal/FeatureTesting.cmake"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isCMake" : true,
|
|
||||||
"isExternal" : true,
|
|
||||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompiler.cmake.in"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"isGenerated" : true,
|
|
||||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"kind" : "cmakeFiles",
|
|
||||||
"paths" :
|
|
||||||
{
|
|
||||||
"build" : "/home/anas/suckless_utils/yo-dwm/cmake-build-debug",
|
|
||||||
"source" : "/home/anas/suckless_utils/yo-dwm"
|
|
||||||
},
|
|
||||||
"version" :
|
|
||||||
{
|
|
||||||
"major" : 1,
|
|
||||||
"minor" : 0
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -39,7 +39,7 @@
|
||||||
{
|
{
|
||||||
"directoryIndex" : 0,
|
"directoryIndex" : 0,
|
||||||
"id" : "yo_dwm::@6890427a1f51a3e7e1df",
|
"id" : "yo_dwm::@6890427a1f51a3e7e1df",
|
||||||
"jsonFile" : "target-yo_dwm-Debug-619ca603d9f8a027e9c4.json",
|
"jsonFile" : "target-yo_dwm-Debug-631731075c5f906219d9.json",
|
||||||
"name" : "yo_dwm",
|
"name" : "yo_dwm",
|
||||||
"projectIndex" : 0
|
"projectIndex" : 0
|
||||||
}
|
}
|
|
@ -26,7 +26,7 @@
|
||||||
"objects" :
|
"objects" :
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"jsonFile" : "codemodel-v2-a8c048656fcb1fb7324c.json",
|
"jsonFile" : "codemodel-v2-47532c44014cf30e75ae.json",
|
||||||
"kind" : "codemodel",
|
"kind" : "codemodel",
|
||||||
"version" :
|
"version" :
|
||||||
{
|
{
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"jsonFile" : "cmakeFiles-v1-ad9218d2c69b47be0e82.json",
|
"jsonFile" : "cmakeFiles-v1-10ab7de84491b2ad21c0.json",
|
||||||
"kind" : "cmakeFiles",
|
"kind" : "cmakeFiles",
|
||||||
"version" :
|
"version" :
|
||||||
{
|
{
|
||||||
|
@ -76,7 +76,7 @@
|
||||||
},
|
},
|
||||||
"cmakeFiles-v1" :
|
"cmakeFiles-v1" :
|
||||||
{
|
{
|
||||||
"jsonFile" : "cmakeFiles-v1-ad9218d2c69b47be0e82.json",
|
"jsonFile" : "cmakeFiles-v1-10ab7de84491b2ad21c0.json",
|
||||||
"kind" : "cmakeFiles",
|
"kind" : "cmakeFiles",
|
||||||
"version" :
|
"version" :
|
||||||
{
|
{
|
||||||
|
@ -86,7 +86,7 @@
|
||||||
},
|
},
|
||||||
"codemodel-v2" :
|
"codemodel-v2" :
|
||||||
{
|
{
|
||||||
"jsonFile" : "codemodel-v2-a8c048656fcb1fb7324c.json",
|
"jsonFile" : "codemodel-v2-47532c44014cf30e75ae.json",
|
||||||
"kind" : "codemodel",
|
"kind" : "codemodel",
|
||||||
"version" :
|
"version" :
|
||||||
{
|
{
|
|
@ -11,6 +11,7 @@
|
||||||
"commands" :
|
"commands" :
|
||||||
[
|
[
|
||||||
"add_executable",
|
"add_executable",
|
||||||
|
"target_link_libraries",
|
||||||
"include_directories"
|
"include_directories"
|
||||||
],
|
],
|
||||||
"files" :
|
"files" :
|
||||||
|
@ -31,23 +32,29 @@
|
||||||
{
|
{
|
||||||
"command" : 1,
|
"command" : 1,
|
||||||
"file" : 0,
|
"file" : 0,
|
||||||
|
"line" : 31,
|
||||||
|
"parent" : 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"command" : 2,
|
||||||
|
"file" : 0,
|
||||||
"line" : 6,
|
"line" : 6,
|
||||||
"parent" : 0
|
"parent" : 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"command" : 1,
|
"command" : 2,
|
||||||
"file" : 0,
|
"file" : 0,
|
||||||
"line" : 7,
|
"line" : 7,
|
||||||
"parent" : 0
|
"parent" : 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"command" : 1,
|
"command" : 2,
|
||||||
"file" : 0,
|
"file" : 0,
|
||||||
"line" : 8,
|
"line" : 8,
|
||||||
"parent" : 0
|
"parent" : 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"command" : 1,
|
"command" : 2,
|
||||||
"file" : 0,
|
"file" : 0,
|
||||||
"line" : 9,
|
"line" : 9,
|
||||||
"parent" : 0
|
"parent" : 0
|
||||||
|
@ -69,19 +76,19 @@
|
||||||
"includes" :
|
"includes" :
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"backtrace" : 2,
|
"backtrace" : 3,
|
||||||
"path" : "/home/anas/suckless_utils/yo-dwm/."
|
"path" : "/home/anas/suckless_utils/yo-dwm/."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"backtrace" : 3,
|
"backtrace" : 4,
|
||||||
"path" : "/home/anas/suckless_utils/yo-dwm/src"
|
"path" : "/home/anas/suckless_utils/yo-dwm/src"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"backtrace" : 4,
|
"backtrace" : 5,
|
||||||
"path" : "/home/anas/suckless_utils/yo-dwm/src/keys"
|
"path" : "/home/anas/suckless_utils/yo-dwm/src/keys"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"backtrace" : 5,
|
"backtrace" : 6,
|
||||||
"path" : "/home/anas/suckless_utils/yo-dwm/src/layouts"
|
"path" : "/home/anas/suckless_utils/yo-dwm/src/layouts"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -106,7 +113,8 @@
|
||||||
13,
|
13,
|
||||||
14,
|
14,
|
||||||
15,
|
15,
|
||||||
16
|
16,
|
||||||
|
18
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -122,6 +130,21 @@
|
||||||
{
|
{
|
||||||
"fragment" : "",
|
"fragment" : "",
|
||||||
"role" : "flags"
|
"role" : "flags"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 2,
|
||||||
|
"fragment" : "-lX11",
|
||||||
|
"role" : "libraries"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 2,
|
||||||
|
"fragment" : "-lXft",
|
||||||
|
"role" : "libraries"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 2,
|
||||||
|
"fragment" : "-lXinerama",
|
||||||
|
"role" : "libraries"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"language" : "C"
|
"language" : "C"
|
||||||
|
@ -149,7 +172,8 @@
|
||||||
13,
|
13,
|
||||||
14,
|
14,
|
||||||
15,
|
15,
|
||||||
16
|
16,
|
||||||
|
18
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -162,7 +186,10 @@
|
||||||
9,
|
9,
|
||||||
10,
|
10,
|
||||||
12,
|
12,
|
||||||
17
|
17,
|
||||||
|
19,
|
||||||
|
20,
|
||||||
|
21
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -268,6 +295,27 @@
|
||||||
"backtrace" : 1,
|
"backtrace" : 1,
|
||||||
"path" : "src/util.h",
|
"path" : "src/util.h",
|
||||||
"sourceGroupIndex" : 1
|
"sourceGroupIndex" : 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 1,
|
||||||
|
"compileGroupIndex" : 0,
|
||||||
|
"path" : "src/keys/mouse.c",
|
||||||
|
"sourceGroupIndex" : 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 1,
|
||||||
|
"path" : "src/keys/mouse.h",
|
||||||
|
"sourceGroupIndex" : 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 1,
|
||||||
|
"path" : "src/keys/functions.h",
|
||||||
|
"sourceGroupIndex" : 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"backtrace" : 1,
|
||||||
|
"path" : "src/dwm.h",
|
||||||
|
"sourceGroupIndex" : 1
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"type" : "EXECUTABLE"
|
"type" : "EXECUTABLE"
|
|
@ -1,10 +1,4 @@
|
||||||
/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/bin/cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/ninja/linux/ninja -G Ninja -S /home/anas/suckless_utils/yo-dwm -B /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/bin/cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/ninja/linux/ninja -G Ninja -S /home/anas/suckless_utils/yo-dwm -B /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
||||||
-- The C compiler identification is GNU 12.2.0
|
|
||||||
-- Detecting C compiler ABI info
|
|
||||||
-- Detecting C compiler ABI info - done
|
|
||||||
-- Check for working C compiler: /usr/bin/cc - skipped
|
|
||||||
-- Detecting C compile features
|
|
||||||
-- Detecting C compile features - done
|
|
||||||
-- Configuring done
|
-- Configuring done
|
||||||
-- Generating done
|
-- Generating done
|
||||||
-- Build files have been written to: /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
-- Build files have been written to: /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
Start testing: Oct 31 07:03 EET
|
Start testing: Oct 31 10:02 EET
|
||||||
----------------------------------------------------------
|
----------------------------------------------------------
|
||||||
End testing: Oct 31 07:03 EET
|
End testing: Oct 31 10:02 EET
|
||||||
|
|
File diff suppressed because one or more lines are too long
18
src/colors.h
18
src/colors.h
|
@ -1,11 +1,6 @@
|
||||||
#ifndef colors_H
|
#ifndef colors_H
|
||||||
#define colors_H
|
#define colors_H
|
||||||
|
|
||||||
// #define wal "/home/anas/.cache/wal/colors-wal-dwm.h"
|
|
||||||
|
|
||||||
// #if __has_include(wal)
|
|
||||||
// #include wal
|
|
||||||
// #else
|
|
||||||
static const char norm_fg[] = "#e4ded4";
|
static const char norm_fg[] = "#e4ded4";
|
||||||
static const char norm_bg[] = "#191b1f";
|
static const char norm_bg[] = "#191b1f";
|
||||||
static const char norm_border[] = "#282c34";
|
static const char norm_border[] = "#282c34";
|
||||||
|
@ -18,12 +13,11 @@ static const char urg_fg[] = "#e4ded4";
|
||||||
static const char urg_bg[] = "#313036";
|
static const char urg_bg[] = "#313036";
|
||||||
static const char urg_border[] = "#312e36";
|
static const char urg_border[] = "#312e36";
|
||||||
|
|
||||||
static const char *colors[][3] = {
|
static const char *colors[][3] = {
|
||||||
/* fg bg border */
|
/* fg bg border */
|
||||||
[SchemeNorm] = { norm_fg, norm_bg, norm_border }, // unfocused wins
|
[SchemeNorm] = {norm_fg, norm_bg, norm_border}, // unfocused wins
|
||||||
[SchemeSel] = { sel_fg, sel_bg, sel_border }, // the focused win
|
[SchemeSel] = {sel_fg, sel_bg, sel_border}, // the focused win
|
||||||
[SchemeUrg] = { urg_fg, urg_bg, urg_border },
|
[SchemeUrg] = {urg_fg, urg_bg, urg_border},
|
||||||
};
|
};
|
||||||
// #endif
|
|
||||||
|
|
||||||
#endif // !colors.h
|
#endif // colors_H
|
||||||
|
|
|
@ -20,9 +20,7 @@ static const char *fonts[] = {"monospace:size=7", "Noto Color Emoji:size=8",
|
||||||
static const char dmenufont[] = "monospace:size=8";
|
static const char dmenufont[] = "monospace:size=8";
|
||||||
|
|
||||||
#ifndef STDDEF_H
|
#ifndef STDDEF_H
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "colors.h"
|
#include "colors.h"
|
||||||
|
|
324
src/dwm.c
324
src/dwm.c
|
@ -44,6 +44,7 @@
|
||||||
|
|
||||||
#include "drw.h"
|
#include "drw.h"
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
#include "dwm.h"
|
||||||
|
|
||||||
/* macros */
|
/* macros */
|
||||||
#define BUTTONMASK (ButtonPressMask|ButtonReleaseMask)
|
#define BUTTONMASK (ButtonPressMask|ButtonReleaseMask)
|
||||||
|
@ -71,327 +72,6 @@
|
||||||
#define VERSION_MINOR 0
|
#define VERSION_MINOR 0
|
||||||
#define XEMBED_EMBEDDED_VERSION (VERSION_MAJOR << 16) | VERSION_MINOR
|
#define XEMBED_EMBEDDED_VERSION (VERSION_MAJOR << 16) | VERSION_MINOR
|
||||||
|
|
||||||
/* enums */
|
|
||||||
enum {
|
|
||||||
CurNormal, CurResize, CurMove, CurLast
|
|
||||||
}; /* cursor */
|
|
||||||
enum {
|
|
||||||
SchemeNorm, SchemeSel, SchemeUrg
|
|
||||||
}; /* color schemes */
|
|
||||||
enum {
|
|
||||||
NetSupported, NetWMName, NetWMState, NetWMCheck,
|
|
||||||
NetSystemTray, NetSystemTrayOP, NetSystemTrayOrientation, NetSystemTrayOrientationHorz,
|
|
||||||
NetWMFullscreen, NetActiveWindow, NetWMWindowType,
|
|
||||||
NetWMWindowTypeDialog, NetClientList, NetLast
|
|
||||||
}; /* EWMH atoms */
|
|
||||||
enum {
|
|
||||||
Manager, Xembed, XembedInfo, XLast
|
|
||||||
}; /* Xembed atoms */
|
|
||||||
enum {
|
|
||||||
WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast
|
|
||||||
}; /* default atoms */
|
|
||||||
enum {
|
|
||||||
ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
|
|
||||||
ClkClientWin, ClkRootWin, ClkLast
|
|
||||||
}; /* clicks */
|
|
||||||
|
|
||||||
typedef union {
|
|
||||||
int i;
|
|
||||||
unsigned int ui;
|
|
||||||
float f;
|
|
||||||
const void *v;
|
|
||||||
} Arg;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
unsigned int click;
|
|
||||||
unsigned int mask;
|
|
||||||
unsigned int button;
|
|
||||||
|
|
||||||
void (*func)(const Arg *arg);
|
|
||||||
|
|
||||||
const Arg arg;
|
|
||||||
} Button;
|
|
||||||
|
|
||||||
typedef struct Monitor Monitor;
|
|
||||||
typedef struct Client Client;
|
|
||||||
struct Client {
|
|
||||||
char name[256];
|
|
||||||
float mina, maxa;
|
|
||||||
int x, y, w, h;
|
|
||||||
int oldx, oldy, oldw, oldh;
|
|
||||||
int basew, baseh, incw, inch, maxw, maxh, minw, minh, hintsvalid;
|
|
||||||
int bw, oldbw;
|
|
||||||
unsigned int tags;
|
|
||||||
int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen, issticky;
|
|
||||||
Client *next;
|
|
||||||
Client *snext;
|
|
||||||
Monitor *mon;
|
|
||||||
Window win;
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
unsigned int mod;
|
|
||||||
KeySym chain;
|
|
||||||
KeySym keysym;
|
|
||||||
|
|
||||||
void (*func)(const Arg *);
|
|
||||||
|
|
||||||
const Arg arg;
|
|
||||||
} Key;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
const char *symbol;
|
|
||||||
|
|
||||||
void (*arrange)(Monitor *);
|
|
||||||
} Layout;
|
|
||||||
|
|
||||||
typedef struct Pertag Pertag;
|
|
||||||
struct Monitor {
|
|
||||||
char ltsymbol[16];
|
|
||||||
float mfact;
|
|
||||||
int nmaster;
|
|
||||||
int num;
|
|
||||||
int by; /* bar geometry */
|
|
||||||
int mx, my, mw, mh; /* screen size */
|
|
||||||
int wx, wy, ww, wh; /* window area */
|
|
||||||
unsigned int seltags;
|
|
||||||
unsigned int sellt;
|
|
||||||
unsigned int tagset[2];
|
|
||||||
int showbar;
|
|
||||||
int topbar;
|
|
||||||
Client *clients;
|
|
||||||
Client *sel;
|
|
||||||
Client *stack;
|
|
||||||
Monitor *next;
|
|
||||||
Window barwin;
|
|
||||||
const Layout *lt[2];
|
|
||||||
Pertag *pertag;
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
const char *class;
|
|
||||||
const char *instance;
|
|
||||||
const char *title;
|
|
||||||
unsigned int tags;
|
|
||||||
int isfloating;
|
|
||||||
int monitor;
|
|
||||||
} Rule;
|
|
||||||
|
|
||||||
typedef struct Systray Systray;
|
|
||||||
struct Systray {
|
|
||||||
Window win;
|
|
||||||
Client *icons;
|
|
||||||
};
|
|
||||||
|
|
||||||
/* function declarations */
|
|
||||||
static void applyrules(Client *c);
|
|
||||||
|
|
||||||
static int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact);
|
|
||||||
|
|
||||||
static void arrange(Monitor *m);
|
|
||||||
|
|
||||||
static void arrangemon(Monitor *m);
|
|
||||||
|
|
||||||
static void attach(Client *c);
|
|
||||||
|
|
||||||
static void attachstack(Client *c);
|
|
||||||
|
|
||||||
static void buttonpress(XEvent *e);
|
|
||||||
|
|
||||||
static void checkotherwm(void);
|
|
||||||
|
|
||||||
static void cleanup(void);
|
|
||||||
|
|
||||||
static void cleanupmon(Monitor *mon);
|
|
||||||
|
|
||||||
static void clientmessage(XEvent *e);
|
|
||||||
|
|
||||||
static void configure(Client *c);
|
|
||||||
|
|
||||||
static void configurenotify(XEvent *e);
|
|
||||||
|
|
||||||
static void configurerequest(XEvent *e);
|
|
||||||
|
|
||||||
static Monitor *createmon(void);
|
|
||||||
|
|
||||||
static void destroynotify(XEvent *e);
|
|
||||||
|
|
||||||
static void detach(Client *c);
|
|
||||||
|
|
||||||
static void detachstack(Client *c);
|
|
||||||
|
|
||||||
static Monitor *dirtomon(int dir);
|
|
||||||
|
|
||||||
static void drawbar(Monitor *m);
|
|
||||||
|
|
||||||
static void drawbars(void);
|
|
||||||
|
|
||||||
static void enternotify(XEvent *e);
|
|
||||||
|
|
||||||
static void expose(XEvent *e);
|
|
||||||
|
|
||||||
static void focus(Client *c);
|
|
||||||
|
|
||||||
static void focusin(XEvent *e);
|
|
||||||
|
|
||||||
static void focusmon(const Arg *arg);
|
|
||||||
|
|
||||||
static void focusstack(const Arg *arg);
|
|
||||||
|
|
||||||
static Atom getatomprop(Client *c, Atom prop);
|
|
||||||
|
|
||||||
static int getrootptr(int *x, int *y);
|
|
||||||
|
|
||||||
static long getstate(Window w);
|
|
||||||
|
|
||||||
static unsigned int getsystraywidth();
|
|
||||||
|
|
||||||
static int gettextprop(Window w, Atom atom, char *text, unsigned int size);
|
|
||||||
|
|
||||||
static void grabbuttons(Client *c, int focused);
|
|
||||||
|
|
||||||
static void grabkeys(void);
|
|
||||||
|
|
||||||
static void incnmaster(const Arg *arg);
|
|
||||||
|
|
||||||
static void keypress(XEvent *e);
|
|
||||||
|
|
||||||
static void killclient(const Arg *arg);
|
|
||||||
|
|
||||||
static void manage(Window w, XWindowAttributes *wa);
|
|
||||||
|
|
||||||
static void mappingnotify(XEvent *e);
|
|
||||||
|
|
||||||
static void maprequest(XEvent *e);
|
|
||||||
|
|
||||||
static void monocle(Monitor *m);
|
|
||||||
|
|
||||||
static void motionnotify(XEvent *e);
|
|
||||||
|
|
||||||
static void movemouse(const Arg *arg);
|
|
||||||
|
|
||||||
static Client *nexttiled(Client *c);
|
|
||||||
|
|
||||||
static void pop(Client *);
|
|
||||||
|
|
||||||
static void propertynotify(XEvent *e);
|
|
||||||
|
|
||||||
static void quit(const Arg *arg);
|
|
||||||
|
|
||||||
static Monitor *recttomon(int x, int y, int w, int h);
|
|
||||||
|
|
||||||
static void removesystrayicon(Client *i);
|
|
||||||
|
|
||||||
static void resize(Client *c, int x, int y, int w, int h, int interact);
|
|
||||||
|
|
||||||
static void resizebarwin(Monitor *m);
|
|
||||||
|
|
||||||
static void resizeclient(Client *c, int x, int y, int w, int h);
|
|
||||||
|
|
||||||
static void resizemouse(const Arg *arg);
|
|
||||||
|
|
||||||
static void resizerequest(XEvent *e);
|
|
||||||
|
|
||||||
static void restack(Monitor *m);
|
|
||||||
|
|
||||||
static void run(void);
|
|
||||||
|
|
||||||
static void scan(void);
|
|
||||||
|
|
||||||
static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4);
|
|
||||||
|
|
||||||
static void sendmon(Client *c, Monitor *m);
|
|
||||||
|
|
||||||
static void setclientstate(Client *c, long state);
|
|
||||||
|
|
||||||
static void setfocus(Client *c);
|
|
||||||
|
|
||||||
static void setfullscreen(Client *c, int fullscreen);
|
|
||||||
|
|
||||||
static void fullscreen(const Arg *arg);
|
|
||||||
|
|
||||||
static void setlayout(const Arg *arg);
|
|
||||||
|
|
||||||
static void setmfact(const Arg *arg);
|
|
||||||
|
|
||||||
static void setup(void);
|
|
||||||
|
|
||||||
static void seturgent(Client *c, int urg);
|
|
||||||
|
|
||||||
static void showhide(Client *c);
|
|
||||||
|
|
||||||
static void sigchld(int unused);
|
|
||||||
|
|
||||||
static void spawn(const Arg *arg);
|
|
||||||
|
|
||||||
static Monitor *systraytomon(Monitor *m);
|
|
||||||
|
|
||||||
static void tag(const Arg *arg);
|
|
||||||
|
|
||||||
static void tagmon(const Arg *arg);
|
|
||||||
|
|
||||||
static void tile(Monitor *);
|
|
||||||
|
|
||||||
static void togglebar(const Arg *arg);
|
|
||||||
|
|
||||||
static void togglefloating(const Arg *arg);
|
|
||||||
|
|
||||||
static void togglesticky(const Arg *arg);
|
|
||||||
|
|
||||||
static void toggletag(const Arg *arg);
|
|
||||||
|
|
||||||
static void toggleview(const Arg *arg);
|
|
||||||
|
|
||||||
static void unfocus(Client *c, int setfocus);
|
|
||||||
|
|
||||||
static void unmanage(Client *c, int destroyed);
|
|
||||||
|
|
||||||
static void unmapnotify(XEvent *e);
|
|
||||||
|
|
||||||
static void updatebarpos(Monitor *m);
|
|
||||||
|
|
||||||
static void updatebars(void);
|
|
||||||
|
|
||||||
static void updateclientlist(void);
|
|
||||||
|
|
||||||
static int updategeom(void);
|
|
||||||
|
|
||||||
static void updatenumlockmask(void);
|
|
||||||
|
|
||||||
static void updatesizehints(Client *c);
|
|
||||||
|
|
||||||
static void updatestatus(void);
|
|
||||||
|
|
||||||
static void updatesystray(void);
|
|
||||||
|
|
||||||
static void updatesystrayicongeom(Client *i, int w, int h);
|
|
||||||
|
|
||||||
static void updatesystrayiconstate(Client *i, XPropertyEvent *ev);
|
|
||||||
|
|
||||||
static void updatetitle(Client *c);
|
|
||||||
|
|
||||||
static void updatewindowtype(Client *c);
|
|
||||||
|
|
||||||
static void updatewmhints(Client *c);
|
|
||||||
|
|
||||||
static void view(const Arg *arg);
|
|
||||||
|
|
||||||
static Client *wintoclient(Window w);
|
|
||||||
|
|
||||||
static Monitor *wintomon(Window w);
|
|
||||||
|
|
||||||
static Client *wintosystrayicon(Window w);
|
|
||||||
|
|
||||||
static int xerror(Display *dpy, XErrorEvent *ee);
|
|
||||||
|
|
||||||
static int xerrordummy(Display *dpy, XErrorEvent *ee);
|
|
||||||
|
|
||||||
static int xerrorstart(Display *dpy, XErrorEvent *ee);
|
|
||||||
|
|
||||||
static void zoom(const Arg *arg);
|
|
||||||
|
|
||||||
static void autostart_exec(void);
|
|
||||||
|
|
||||||
/* variables */
|
/* variables */
|
||||||
static Systray *systray = NULL;
|
static Systray *systray = NULL;
|
||||||
static const char broken[] = "broken";
|
static const char broken[] = "broken";
|
||||||
|
@ -440,6 +120,8 @@ static KeySym keychain = -1;
|
||||||
#include "movestack.c"
|
#include "movestack.c"
|
||||||
/* Keys bindings */
|
/* Keys bindings */
|
||||||
#include "keys/keys.h"
|
#include "keys/keys.h"
|
||||||
|
/* Mouse bindings */
|
||||||
|
#include "keys/mouse.h"
|
||||||
|
|
||||||
struct Pertag {
|
struct Pertag {
|
||||||
unsigned int curtag, prevtag; /* current and previous tag */
|
unsigned int curtag, prevtag; /* current and previous tag */
|
||||||
|
|
272
src/dwm.h
Normal file
272
src/dwm.h
Normal file
|
@ -0,0 +1,272 @@
|
||||||
|
//
|
||||||
|
// Created by anas on 10/31/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef DWM_H
|
||||||
|
#define DWM_H
|
||||||
|
|
||||||
|
/* enums */
|
||||||
|
enum {
|
||||||
|
CurNormal, CurResize, CurMove, CurLast
|
||||||
|
}; /* cursor */
|
||||||
|
enum {
|
||||||
|
SchemeNorm, SchemeSel, SchemeUrg
|
||||||
|
}; /* color schemes */
|
||||||
|
enum {
|
||||||
|
NetSupported, NetWMName, NetWMState, NetWMCheck,
|
||||||
|
NetSystemTray, NetSystemTrayOP, NetSystemTrayOrientation, NetSystemTrayOrientationHorz,
|
||||||
|
NetWMFullscreen, NetActiveWindow, NetWMWindowType,
|
||||||
|
NetWMWindowTypeDialog, NetClientList, NetLast
|
||||||
|
}; /* EWMH atoms */
|
||||||
|
enum {
|
||||||
|
Manager, Xembed, XembedInfo, XLast
|
||||||
|
}; /* Xembed atoms */
|
||||||
|
enum {
|
||||||
|
WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast
|
||||||
|
}; /* default atoms */
|
||||||
|
|
||||||
|
typedef union {
|
||||||
|
int i;
|
||||||
|
unsigned int ui;
|
||||||
|
float f;
|
||||||
|
const void *v;
|
||||||
|
} Arg;
|
||||||
|
|
||||||
|
typedef struct Monitor Monitor;
|
||||||
|
typedef struct Client Client;
|
||||||
|
struct Client {
|
||||||
|
char name[256];
|
||||||
|
float mina, maxa;
|
||||||
|
int x, y, w, h;
|
||||||
|
int oldx, oldy, oldw, oldh;
|
||||||
|
int basew, baseh, incw, inch, maxw, maxh, minw, minh, hintsvalid;
|
||||||
|
int bw, oldbw;
|
||||||
|
unsigned int tags;
|
||||||
|
int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen, issticky;
|
||||||
|
Client *next;
|
||||||
|
Client *snext;
|
||||||
|
Monitor *mon;
|
||||||
|
Window win;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *symbol;
|
||||||
|
|
||||||
|
void (*arrange)(Monitor *);
|
||||||
|
} Layout;
|
||||||
|
|
||||||
|
typedef struct Pertag Pertag;
|
||||||
|
struct Monitor {
|
||||||
|
char ltsymbol[16];
|
||||||
|
float mfact;
|
||||||
|
int nmaster;
|
||||||
|
int num;
|
||||||
|
int by; /* bar geometry */
|
||||||
|
int mx, my, mw, mh; /* screen size */
|
||||||
|
int wx, wy, ww, wh; /* window area */
|
||||||
|
unsigned int seltags;
|
||||||
|
unsigned int sellt;
|
||||||
|
unsigned int tagset[2];
|
||||||
|
int showbar;
|
||||||
|
int topbar;
|
||||||
|
Client *clients;
|
||||||
|
Client *sel;
|
||||||
|
Client *stack;
|
||||||
|
Monitor *next;
|
||||||
|
Window barwin;
|
||||||
|
const Layout *lt[2];
|
||||||
|
Pertag *pertag;
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *class;
|
||||||
|
const char *instance;
|
||||||
|
const char *title;
|
||||||
|
unsigned int tags;
|
||||||
|
int isfloating;
|
||||||
|
int monitor;
|
||||||
|
} Rule;
|
||||||
|
|
||||||
|
typedef struct Systray Systray;
|
||||||
|
struct Systray {
|
||||||
|
Window win;
|
||||||
|
Client *icons;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* function declarations */
|
||||||
|
static void applyrules(Client *c);
|
||||||
|
|
||||||
|
static int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact);
|
||||||
|
|
||||||
|
static void arrange(Monitor *m);
|
||||||
|
|
||||||
|
static void arrangemon(Monitor *m);
|
||||||
|
|
||||||
|
static void attach(Client *c);
|
||||||
|
|
||||||
|
static void attachstack(Client *c);
|
||||||
|
|
||||||
|
static void buttonpress(XEvent *e);
|
||||||
|
|
||||||
|
static void checkotherwm(void);
|
||||||
|
|
||||||
|
static void cleanup(void);
|
||||||
|
|
||||||
|
static void cleanupmon(Monitor *mon);
|
||||||
|
|
||||||
|
static void clientmessage(XEvent *e);
|
||||||
|
|
||||||
|
static void configure(Client *c);
|
||||||
|
|
||||||
|
static void configurenotify(XEvent *e);
|
||||||
|
|
||||||
|
static void configurerequest(XEvent *e);
|
||||||
|
|
||||||
|
static Monitor *createmon(void);
|
||||||
|
|
||||||
|
static void destroynotify(XEvent *e);
|
||||||
|
|
||||||
|
static void detach(Client *c);
|
||||||
|
|
||||||
|
static void detachstack(Client *c);
|
||||||
|
|
||||||
|
static Monitor *dirtomon(int dir);
|
||||||
|
|
||||||
|
static void drawbar(Monitor *m);
|
||||||
|
|
||||||
|
static void drawbars(void);
|
||||||
|
|
||||||
|
static void enternotify(XEvent *e);
|
||||||
|
|
||||||
|
static void expose(XEvent *e);
|
||||||
|
|
||||||
|
static void focus(Client *c);
|
||||||
|
|
||||||
|
static void focusin(XEvent *e);
|
||||||
|
|
||||||
|
static Atom getatomprop(Client *c, Atom prop);
|
||||||
|
|
||||||
|
static int getrootptr(int *x, int *y);
|
||||||
|
|
||||||
|
static long getstate(Window w);
|
||||||
|
|
||||||
|
static unsigned int getsystraywidth();
|
||||||
|
|
||||||
|
static int gettextprop(Window w, Atom atom, char *text, unsigned int size);
|
||||||
|
|
||||||
|
static void grabbuttons(Client *c, int focused);
|
||||||
|
|
||||||
|
static void grabkeys(void);
|
||||||
|
|
||||||
|
static void keypress(XEvent *e);
|
||||||
|
|
||||||
|
static void manage(Window w, XWindowAttributes *wa);
|
||||||
|
|
||||||
|
static void mappingnotify(XEvent *e);
|
||||||
|
|
||||||
|
static void maprequest(XEvent *e);
|
||||||
|
|
||||||
|
static void monocle(Monitor *m);
|
||||||
|
|
||||||
|
static void motionnotify(XEvent *e);
|
||||||
|
|
||||||
|
static Client *nexttiled(Client *c);
|
||||||
|
|
||||||
|
static void pop(Client *);
|
||||||
|
|
||||||
|
static void propertynotify(XEvent *e);
|
||||||
|
|
||||||
|
static Monitor *recttomon(int x, int y, int w, int h);
|
||||||
|
|
||||||
|
static void removesystrayicon(Client *i);
|
||||||
|
|
||||||
|
static void resize(Client *c, int x, int y, int w, int h, int interact);
|
||||||
|
|
||||||
|
static void resizebarwin(Monitor *m);
|
||||||
|
|
||||||
|
static void resizeclient(Client *c, int x, int y, int w, int h);
|
||||||
|
|
||||||
|
static void resizemouse(const Arg *arg);
|
||||||
|
|
||||||
|
static void resizerequest(XEvent *e);
|
||||||
|
|
||||||
|
static void restack(Monitor *m);
|
||||||
|
|
||||||
|
static void run(void);
|
||||||
|
|
||||||
|
static void scan(void);
|
||||||
|
|
||||||
|
static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4);
|
||||||
|
|
||||||
|
static void sendmon(Client *c, Monitor *m);
|
||||||
|
|
||||||
|
static void setclientstate(Client *c, long state);
|
||||||
|
|
||||||
|
static void setfocus(Client *c);
|
||||||
|
|
||||||
|
static void setfullscreen(Client *c, int fullscreen);
|
||||||
|
|
||||||
|
static void setup(void);
|
||||||
|
|
||||||
|
static void seturgent(Client *c, int urg);
|
||||||
|
|
||||||
|
static void showhide(Client *c);
|
||||||
|
|
||||||
|
static void sigchld(int unused);
|
||||||
|
|
||||||
|
static Monitor *systraytomon(Monitor *m);
|
||||||
|
|
||||||
|
static void tile(Monitor *);
|
||||||
|
|
||||||
|
static void toggletag(const Arg *arg);
|
||||||
|
|
||||||
|
static void toggleview(const Arg *arg);
|
||||||
|
|
||||||
|
static void unfocus(Client *c, int setfocus);
|
||||||
|
|
||||||
|
static void unmanage(Client *c, int destroyed);
|
||||||
|
|
||||||
|
static void unmapnotify(XEvent *e);
|
||||||
|
|
||||||
|
static void updatebarpos(Monitor *m);
|
||||||
|
|
||||||
|
static void updatebars(void);
|
||||||
|
|
||||||
|
static void updateclientlist(void);
|
||||||
|
|
||||||
|
static int updategeom(void);
|
||||||
|
|
||||||
|
static void updatenumlockmask(void);
|
||||||
|
|
||||||
|
static void updatesizehints(Client *c);
|
||||||
|
|
||||||
|
static void updatestatus(void);
|
||||||
|
|
||||||
|
static void updatesystray(void);
|
||||||
|
|
||||||
|
static void updatesystrayicongeom(Client *i, int w, int h);
|
||||||
|
|
||||||
|
static void updatesystrayiconstate(Client *i, XPropertyEvent *ev);
|
||||||
|
|
||||||
|
static void updatetitle(Client *c);
|
||||||
|
|
||||||
|
static void updatewindowtype(Client *c);
|
||||||
|
|
||||||
|
static void updatewmhints(Client *c);
|
||||||
|
|
||||||
|
static Client *wintoclient(Window w);
|
||||||
|
|
||||||
|
static Monitor *wintomon(Window w);
|
||||||
|
|
||||||
|
static Client *wintosystrayicon(Window w);
|
||||||
|
|
||||||
|
static int xerror(Display *dpy, XErrorEvent *ee);
|
||||||
|
|
||||||
|
static int xerrordummy(Display *dpy, XErrorEvent *ee);
|
||||||
|
|
||||||
|
static int xerrorstart(Display *dpy, XErrorEvent *ee);
|
||||||
|
|
||||||
|
static void autostart_exec(void);
|
||||||
|
|
||||||
|
#endif //DWM_H
|
46
src/keys/functions.h
Normal file
46
src/keys/functions.h
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
//
|
||||||
|
// Created by anas on 10/31/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef FUNCTIONS_H
|
||||||
|
#define FUNCTIONS_H
|
||||||
|
|
||||||
|
#include "../dwm.h"
|
||||||
|
|
||||||
|
static void spawn(const Arg *arg);
|
||||||
|
|
||||||
|
static void focusmon(const Arg *arg);
|
||||||
|
|
||||||
|
static void fullscreen(const Arg *arg);
|
||||||
|
|
||||||
|
static void focusstack(const Arg *arg);
|
||||||
|
|
||||||
|
static void tagmon(const Arg *arg);
|
||||||
|
|
||||||
|
static void incnmaster(const Arg *arg);
|
||||||
|
|
||||||
|
static void killclient(const Arg *arg);
|
||||||
|
|
||||||
|
static void movemouse(const Arg *arg);
|
||||||
|
|
||||||
|
static void togglebar(const Arg *arg);
|
||||||
|
|
||||||
|
static void togglesticky(const Arg *arg);
|
||||||
|
|
||||||
|
static void togglefloating(const Arg *arg);
|
||||||
|
|
||||||
|
static void setmfact(const Arg *arg);
|
||||||
|
|
||||||
|
static void view(const Arg *arg);
|
||||||
|
|
||||||
|
static void movestack(const Arg *arg);
|
||||||
|
|
||||||
|
static void setlayout(const Arg *arg);
|
||||||
|
|
||||||
|
static void tag(const Arg *arg);
|
||||||
|
|
||||||
|
static void zoom(const Arg *arg);
|
||||||
|
|
||||||
|
static void quit(const Arg *arg);
|
||||||
|
|
||||||
|
#endif //FUNCTIONS_H
|
|
@ -1,15 +1,11 @@
|
||||||
#include "../config.h"
|
#include "../config.h"
|
||||||
#include "keys.h"
|
#include "keys.h"
|
||||||
|
#include "functions.h"
|
||||||
|
#include "../layouts/layouts.h"
|
||||||
|
// X11 keysym definitions
|
||||||
|
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
||||||
|
|
||||||
/* key definitions */
|
#include <X11/keysym.h>
|
||||||
#define MODKEY Mod4Mask // win/super key
|
|
||||||
|
|
||||||
#define TAGKEYS(CHAIN, KEY, TAG) \
|
|
||||||
{ MODKEY, CHAIN, KEY, view, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ControlMask, CHAIN, KEY, toggleview, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ShiftMask, CHAIN, KEY, tag, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ControlMask|ShiftMask, CHAIN, KEY, toggletag, {.ui = 1 << TAG} },
|
|
||||||
|
|
||||||
|
|
||||||
static Key keys[] = {
|
static Key keys[] = {
|
||||||
/* modifier chain key key function argument */
|
/* modifier chain key key function argument */
|
||||||
|
@ -84,8 +80,8 @@ static Key keys[] = {
|
||||||
{MODKEY, -1, XK_i, incnmaster, {.i = +1}},
|
{MODKEY, -1, XK_i, incnmaster, {.i = +1}},
|
||||||
{MODKEY, -1, XK_d, incnmaster, {.i = -1}},
|
{MODKEY, -1, XK_d, incnmaster, {.i = -1}},
|
||||||
// Change the focus window size (in the tile mode)
|
// Change the focus window size (in the tile mode)
|
||||||
{MODKEY, -1, XK_h, setmfact, {.f = -0.05}},
|
{MODKEY, -1, XK_h, setmfact, {.f = -0.05f}},
|
||||||
{MODKEY, -1, XK_l, setmfact, {.f = +0.05}},
|
{MODKEY, -1, XK_l, setmfact, {.f = +0.05f}},
|
||||||
// { MODKEY, XK_Return, zoom, {0} },
|
// { MODKEY, XK_Return, zoom, {0} },
|
||||||
{MODKEY, -1, XK_Tab, view, {0}},
|
{MODKEY, -1, XK_Tab, view, {0}},
|
||||||
|
|
||||||
|
@ -171,20 +167,4 @@ static Key keys[] = {
|
||||||
// { MODKEY|ShiftMask|Mod1Mask, -1, XK_q, quit, {0} },
|
// { MODKEY|ShiftMask|Mod1Mask, -1, XK_q, quit, {0} },
|
||||||
};
|
};
|
||||||
|
|
||||||
/* button definitions */
|
|
||||||
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
|
||||||
static Button buttons[] = {
|
|
||||||
/* click event mask button function argument */
|
|
||||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
|
||||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
|
||||||
{ClkWinTitle, 0, Button2, zoom, {0}},
|
|
||||||
{ClkStatusText, 0, Button2, spawn, {.v = termcmd}},
|
|
||||||
{ClkClientWin, MODKEY, Button1, movemouse, {0}},
|
|
||||||
{ClkClientWin, MODKEY, Button2, togglefloating, {0}},
|
|
||||||
{ClkClientWin, MODKEY, Button3, resizemouse, {0}},
|
|
||||||
{ClkTagBar, 0, Button1, view, {0}},
|
|
||||||
{ClkTagBar, 0, Button3, toggleview, {0}},
|
|
||||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
|
||||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
|
@ -1,442 +0,0 @@
|
||||||
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
|
|
||||||
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
|
|
||||||
|
|
||||||
/* commands */
|
|
||||||
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
|
|
||||||
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", norm_bg,
|
|
||||||
"-nf", norm_fg, "-sb", sel_bg, "-sf", sel_fg, NULL };
|
|
||||||
static const char *termcmd[] = { TERMINAL, NULL };
|
|
||||||
|
|
||||||
/* key definitions */
|
|
||||||
#define MODKEY Mod4Mask // win/super key
|
|
||||||
|
|
||||||
#define TAGKEYS(KEY,TAG) \
|
|
||||||
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
|
|
||||||
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
|
|
||||||
|
|
||||||
// X11 keysym definitions
|
|
||||||
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
|
||||||
static Key keys[] = {
|
|
||||||
/* modifier key function argument */
|
|
||||||
/* ---------------------------------- Apps Keys ---------------------------------- */
|
|
||||||
// Dmenu (launcher)
|
|
||||||
{ MODKEY|ShiftMask, XK_d, spawn, {.v = dmenucmd } },
|
|
||||||
// Rofi launcher (small)
|
|
||||||
{ MODKEY|ShiftMask|ControlMask, XK_d, spawn, SHCMD("rofi -show drun") },
|
|
||||||
// Start the main terminal
|
|
||||||
{ MODKEY, XK_Return, spawn, {.v = termcmd } },
|
|
||||||
// Start the alacritty terminal
|
|
||||||
<<<<<<< HEAD
|
|
||||||
// {2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
|
||||||
// // Start the alacritty terminal with tmux
|
|
||||||
// {2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
|
||||||
// // kitty
|
|
||||||
// {2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
|
||||||
// // kitty with tmux
|
|
||||||
// {2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
|
||||||
// /************************************* File browsers *************************************/
|
|
||||||
// // GUI filebrowser (pcmanfm)
|
|
||||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
|
||||||
// // Rofi file browser (small)
|
|
||||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
|
||||||
// // ranger
|
|
||||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_r}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
|
||||||
// /************************************* Start the web browers *************************************/
|
|
||||||
// // Google chrome stable
|
|
||||||
// {2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
|
||||||
// // Tor brower
|
|
||||||
// {2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
|
||||||
// /************************************* Start the caht/email/\* apps *************************************/
|
|
||||||
// // Discord
|
|
||||||
// {2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
|
||||||
// // Obsidian
|
|
||||||
// {2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
|
||||||
// /************************************* Start the dev apps *************************************/
|
|
||||||
// // Jetbrains toolbox
|
|
||||||
// {2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
|
||||||
// // NeoVim
|
|
||||||
// {2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
|
||||||
// // Vim
|
|
||||||
// {2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
|
||||||
// // emacs
|
|
||||||
// {2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
|
||||||
// /************************************* Start personalize apps *************************************/
|
|
||||||
// // nitrogen
|
|
||||||
// {2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
|
||||||
// // nm-connection-editor
|
|
||||||
// {2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
|
||||||
// /************************************* Start multi media apps *************************************/
|
|
||||||
// // cmus
|
|
||||||
// {2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
|
||||||
// // vlc
|
|
||||||
// {2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
|
||||||
// // vlc in the main terminal
|
|
||||||
// {2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
|
||||||
// /************************************* Start the emoji piker apps *************************************/
|
|
||||||
// // Emoji selector (rofi)
|
|
||||||
// {1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofi -show emoji") },
|
|
||||||
// /************************************* dwm keys *************************************/
|
|
||||||
// // Full screen mode
|
|
||||||
// {1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
|
||||||
// // Toggle the slstatus bar (hide/show)
|
|
||||||
// {1, {{MODKEY, XK_b}}, togglebar, {0} },
|
|
||||||
// // Change the focus
|
|
||||||
// {1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
|
||||||
// {1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
|
||||||
// // Change the stack layout (horizontal/virtecal)
|
|
||||||
// {1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
|
||||||
// {1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
|
||||||
// // Change the focus window size (in the tile mode)
|
|
||||||
// {1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
|
||||||
// {1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
|
||||||
// // { MODKEY, XK_Return, zoom, {0} },
|
|
||||||
// {1, {{MODKEY, XK_Tab}}, view, {0} },
|
|
||||||
//
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
|
||||||
// // Toogle styky mode
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
|
||||||
//
|
|
||||||
// // Quit from the foucsed window (kill)
|
|
||||||
// {2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
|
||||||
// /************************* Switch between layouts *************************/
|
|
||||||
// // Tiled layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
|
||||||
// // Floating layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
|
||||||
// // Monocle layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
|
||||||
// // Grid layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
|
||||||
// // Spiral layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
|
||||||
// // Dwindle layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
|
||||||
// // Centerd master layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
|
||||||
// // Centerd floating master layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
|
||||||
//
|
|
||||||
// // Toggle between current layout and tile layout
|
|
||||||
// {2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
|
||||||
// // Toggle floating window
|
|
||||||
// {1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
|
||||||
// // View all tags
|
|
||||||
// {1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
|
||||||
// // Mirror the current tagg in all tags
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
|
||||||
// // I don't know
|
|
||||||
// {1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
|
||||||
// {1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
|
||||||
||||||| 95139f7
|
|
||||||
{2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
|
||||||
// Start the alacritty terminal with tmux
|
|
||||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
|
||||||
// kitty
|
|
||||||
{2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
|
||||||
// kitty with tmux
|
|
||||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
|
||||||
/************************************* File browsers *************************************/
|
|
||||||
// GUI filebrowser (pcmanfm)
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
|
||||||
// Rofi file browser (small)
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
|
||||||
// ranger
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_r}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
|
||||||
/************************************* Start the web browers *************************************/
|
|
||||||
// Google chrome stable
|
|
||||||
{2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
|
||||||
// Tor brower
|
|
||||||
{2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
|
||||||
/************************************* Start the caht/email/\* apps *************************************/
|
|
||||||
// Discord
|
|
||||||
{2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
|
||||||
// Obsidian
|
|
||||||
{2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
|
||||||
/************************************* Start the dev apps *************************************/
|
|
||||||
// Jetbrains toolbox
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
|
||||||
// NeoVim
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
|
||||||
// Vim
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
|
||||||
// emacs
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
|
||||||
/************************************* Start personalize apps *************************************/
|
|
||||||
// nitrogen
|
|
||||||
{2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
|
||||||
// nm-connection-editor
|
|
||||||
{2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
|
||||||
/************************************* Start multi media apps *************************************/
|
|
||||||
// cmus
|
|
||||||
{2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
|
||||||
// vlc
|
|
||||||
{2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
|
||||||
// vlc in the main terminal
|
|
||||||
{2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
|
||||||
/************************************* Start the emoji piker apps *************************************/
|
|
||||||
// Emoji selector (rofi)
|
|
||||||
{1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofi -show emoji") },
|
|
||||||
/************************************* dwm keys *************************************/
|
|
||||||
// Full screen mode
|
|
||||||
{1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
|
||||||
// Toggle the slstatus bar (hide/show)
|
|
||||||
{1, {{MODKEY, XK_b}}, togglebar, {0} },
|
|
||||||
// Change the focus
|
|
||||||
{1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
|
||||||
{1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
|
||||||
// Change the stack layout (horizontal/virtecal)
|
|
||||||
{1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
|
||||||
{1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
|
||||||
// Change the focus window size (in the tile mode)
|
|
||||||
{1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
|
||||||
{1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
|
||||||
// { MODKEY, XK_Return, zoom, {0} },
|
|
||||||
{1, {{MODKEY, XK_Tab}}, view, {0} },
|
|
||||||
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
|
||||||
// Toogle styky mode
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
|
||||||
|
|
||||||
// Quit from the foucsed window (kill)
|
|
||||||
{2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
|
||||||
/************************* Switch between layouts *************************/
|
|
||||||
// Tiled layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
|
||||||
// Floating layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
|
||||||
// Monocle layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
|
||||||
// Grid layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
|
||||||
// Spiral layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
|
||||||
// Dwindle layout
|
|
||||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
|
||||||
// Centerd master layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
|
||||||
// Centerd floating master layout
|
|
||||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
|
||||||
|
|
||||||
// Toggle between current layout and tile layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
|
||||||
// Toggle floating window
|
|
||||||
{1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
|
||||||
// View all tags
|
|
||||||
{1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
|
||||||
// Mirror the current tagg in all tags
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
|
||||||
// I don't know
|
|
||||||
{1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
|
||||||
{1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
|
||||||
=======
|
|
||||||
{2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
|
||||||
// Start the alacritty terminal with tmux
|
|
||||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
|
||||||
// kitty
|
|
||||||
{2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
|
||||||
// kitty with tmux
|
|
||||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
|
||||||
/************************************* File browsers *************************************/
|
|
||||||
// GUI filebrowser (pcmanfm)
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
|
||||||
// Rofi file browser (small)
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
|
||||||
// Terminal file manager (ranger)
|
|
||||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_t}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
|
||||||
/************************************* Start the web browers *************************************/
|
|
||||||
// Google chrome stable
|
|
||||||
{2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
|
||||||
// Tor brower
|
|
||||||
{2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
|
||||||
/************************************* Start the caht/email/\* apps *************************************/
|
|
||||||
// Discord
|
|
||||||
{2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
|
||||||
// Obsidian
|
|
||||||
{2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
|
||||||
/************************************* Start the dev apps *************************************/
|
|
||||||
// Jetbrains toolbox
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
|
||||||
// NeoVim
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
|
||||||
// Vim
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
|
||||||
// emacs
|
|
||||||
{2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
|
||||||
/************************************* Start personalize apps *************************************/
|
|
||||||
// nitrogen
|
|
||||||
{2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
|
||||||
// nm-connection-editor
|
|
||||||
{2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
|
||||||
/************************************* Start multi media apps *************************************/
|
|
||||||
// cmus
|
|
||||||
{2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
|
||||||
// vlc
|
|
||||||
{2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
|
||||||
// vlc in the main terminal
|
|
||||||
{2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
|
||||||
/************************************* Start the emoji piker apps *************************************/
|
|
||||||
// Emoji selector (rofi)
|
|
||||||
{1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofimoji") },
|
|
||||||
/************************************* dwm keys *************************************/
|
|
||||||
// Full screen mode
|
|
||||||
{1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
|
||||||
// Toggle the slstatus bar (hide/show)
|
|
||||||
{1, {{MODKEY, XK_b}}, togglebar, {0} },
|
|
||||||
// Change the focus
|
|
||||||
{1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
|
||||||
{1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
|
||||||
// Change the stack layout (horizontal/virtecal)
|
|
||||||
{1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
|
||||||
{1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
|
||||||
// Change the focus window size (in the tile mode)
|
|
||||||
{1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
|
||||||
{1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
|
||||||
// { MODKEY, XK_Return, zoom, {0} },
|
|
||||||
{1, {{MODKEY, XK_Tab}}, view, {0} },
|
|
||||||
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
|
||||||
// Toogle styky mode
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
|
||||||
|
|
||||||
// Quit from the foucsed window (kill)
|
|
||||||
{2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
|
||||||
/************************* Switch between layouts *************************/
|
|
||||||
// Tiled layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
|
||||||
// Floating layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
|
||||||
// Monocle layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
|
||||||
// Grid layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
|
||||||
// Spiral layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
|
||||||
// Dwindle layout
|
|
||||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
|
||||||
// Centerd master layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
|
||||||
// Centerd floating master layout
|
|
||||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
|
||||||
|
|
||||||
// Toggle between current layout and tile layout
|
|
||||||
{2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
|
||||||
// Toggle floating window
|
|
||||||
{1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
|
||||||
// View all tags
|
|
||||||
{1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
|
||||||
// Mirror the current tagg in all tags
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
|
||||||
// I don't know
|
|
||||||
{1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
|
||||||
{1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
|
||||||
>>>>>>> update-stuff
|
|
||||||
/************************* Tag keys *************************/
|
|
||||||
TAGKEYS( XK_1, 0)
|
|
||||||
TAGKEYS( XK_2, 1)
|
|
||||||
TAGKEYS( XK_3, 2)
|
|
||||||
TAGKEYS( XK_4, 3)
|
|
||||||
TAGKEYS( XK_5, 4)
|
|
||||||
TAGKEYS( XK_6, 5)
|
|
||||||
TAGKEYS( XK_7, 6)
|
|
||||||
TAGKEYS( XK_8, 7)
|
|
||||||
TAGKEYS( XK_9, 8)
|
|
||||||
TAGKEYS( XK_semicolon, 9)
|
|
||||||
/* ---------------------------------- Control Keys ---------------------------------- */
|
|
||||||
<<<<<<< HEAD
|
|
||||||
// // Brightness controllers (requires xbacklight)
|
|
||||||
// {1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
|
||||||
// {1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
|
||||||
// // Sound controllers (requires pamixer)
|
|
||||||
// {1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
|
||||||
// {1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
|
||||||
// {1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
|
||||||
// // Media controls (requires playerctl)
|
|
||||||
// {1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
|
||||||
// {1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
|
||||||
// {1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
|
||||||
// {1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
|
||||||
// // Mute and unmute mic
|
|
||||||
// {1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
|
||||||
// // Take a screenshot
|
|
||||||
// {1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
|
||||||
// /* ---------------------------------- lock Keys ---------------------------------- */
|
|
||||||
// // Lock the screen
|
|
||||||
// {1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
|
||||||
// // Kill dwm (super + shift + alt + q)
|
|
||||||
// {1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
|
||||||
||||||| 95139f7
|
|
||||||
// Brightness controllers (requires xbacklight)
|
|
||||||
{1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
|
||||||
{1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
|
||||||
// Sound controllers (requires pamixer)
|
|
||||||
{1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
|
||||||
{1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
|
||||||
{1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
|
||||||
// Media controls (requires playerctl)
|
|
||||||
{1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
|
||||||
{1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
|
||||||
{1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
|
||||||
{1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
|
||||||
// Mute and unmute mic
|
|
||||||
{1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
|
||||||
// Take a screenshot
|
|
||||||
{1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
|
||||||
/* ---------------------------------- lock Keys ---------------------------------- */
|
|
||||||
// Lock the screen
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
|
||||||
// Kill dwm (super + shift + alt + q)
|
|
||||||
{1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
|
||||||
=======
|
|
||||||
// Brightness controllers (requires xbacklight)
|
|
||||||
{1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
|
||||||
{1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
|
||||||
// Sound controllers (requires pamixer)
|
|
||||||
{1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
|
||||||
{1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
|
||||||
{1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
|
||||||
// Media controls (requires playerctl)
|
|
||||||
{1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
|
||||||
{1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
|
||||||
{1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
|
||||||
{1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
|
||||||
// Mute and unmute mic
|
|
||||||
{1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
|
||||||
// Take a screenshot
|
|
||||||
{1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
|
||||||
/* ---------------------------------- lock Keys ---------------------------------- */
|
|
||||||
// Lock the screen
|
|
||||||
{1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
|
||||||
{1, {{0, XF86XK_Suspend}}, spawn, SHCMD("betterlockscreen -l dim") },
|
|
||||||
// Kill dwm (super + shift + alt + q)
|
|
||||||
// {1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
|
||||||
>>>>>>> update-stuff
|
|
||||||
};
|
|
||||||
|
|
||||||
/* button definitions */
|
|
||||||
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
|
||||||
static Button buttons[] = {
|
|
||||||
/* click event mask button function argument */
|
|
||||||
{ ClkTagBar, MODKEY, Button1, tag, {0} },
|
|
||||||
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
|
|
||||||
{ ClkWinTitle, 0, Button2, zoom, {0} },
|
|
||||||
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
|
|
||||||
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
|
|
||||||
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
|
|
||||||
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
|
|
||||||
{ ClkTagBar, 0, Button1, view, {0} },
|
|
||||||
{ ClkTagBar, 0, Button3, toggleview, {0} },
|
|
||||||
{ ClkTagBar, MODKEY, Button1, tag, {0} },
|
|
||||||
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
|
|
||||||
};
|
|
||||||
|
|
|
@ -1,12 +1,31 @@
|
||||||
#ifndef keys_H
|
#ifndef KEYS_H
|
||||||
#define keys_H
|
#define KEYS_H
|
||||||
|
|
||||||
// X11 keysym definitions
|
|
||||||
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
|
||||||
|
|
||||||
#include <X11/keysym.h>
|
|
||||||
#include <X11/X.h>
|
#include <X11/X.h>
|
||||||
|
#include "../dwm.h"
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
unsigned int mod;
|
||||||
|
KeySym chain;
|
||||||
|
KeySym keysym;
|
||||||
|
|
||||||
|
void (*func)(const Arg *);
|
||||||
|
|
||||||
|
const Arg arg;
|
||||||
|
} Key;
|
||||||
|
|
||||||
|
/* key definitions */
|
||||||
|
#define MODKEY Mod4Mask // win/super key
|
||||||
|
|
||||||
|
#define TAGKEYS(CHAIN, KEY, TAG) \
|
||||||
|
{ MODKEY, CHAIN, KEY, view, {.ui = 1 << TAG} }, \
|
||||||
|
{ MODKEY|ControlMask, CHAIN, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||||
|
{ MODKEY|ShiftMask, CHAIN, KEY, tag, {.ui = 1 << TAG} }, \
|
||||||
|
{ MODKEY|ControlMask|ShiftMask, CHAIN, KEY, toggletag, {.ui = 1 << TAG} },
|
||||||
|
|
||||||
|
// Include all the key bindings
|
||||||
|
#ifndef KEYS_C
|
||||||
#include "keys.c"
|
#include "keys.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // keys_H
|
#endif // keys_H
|
||||||
|
|
23
src/keys/mouse.c
Normal file
23
src/keys/mouse.c
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
//
|
||||||
|
// Created by anas on 10/31/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "mouse.h"
|
||||||
|
#include "keys.h"
|
||||||
|
|
||||||
|
/* button definitions */
|
||||||
|
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
||||||
|
static Button buttons[] = {
|
||||||
|
/* click event mask button function argument */
|
||||||
|
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||||
|
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||||
|
{ClkWinTitle, 0, Button2, zoom, {0}},
|
||||||
|
{ClkStatusText, 0, Button2, spawn, {.v = termcmd}},
|
||||||
|
{ClkClientWin, MODKEY, Button1, movemouse, {0}},
|
||||||
|
{ClkClientWin, MODKEY, Button2, togglefloating, {0}},
|
||||||
|
{ClkClientWin, MODKEY, Button3, resizemouse, {0}},
|
||||||
|
{ClkTagBar, 0, Button1, view, {0}},
|
||||||
|
{ClkTagBar, 0, Button3, toggleview, {0}},
|
||||||
|
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||||
|
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||||
|
};
|
29
src/keys/mouse.h
Normal file
29
src/keys/mouse.h
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
//
|
||||||
|
// Created by anas on 10/31/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef MOUSE_H
|
||||||
|
#define MOUSE_H
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
unsigned int click;
|
||||||
|
unsigned int mask;
|
||||||
|
unsigned int button;
|
||||||
|
|
||||||
|
void (*func)(const Arg *arg);
|
||||||
|
|
||||||
|
const Arg arg;
|
||||||
|
} Button;
|
||||||
|
|
||||||
|
enum {
|
||||||
|
ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
|
||||||
|
ClkClientWin, ClkRootWin, ClkLast
|
||||||
|
}; /* clicks */
|
||||||
|
|
||||||
|
#ifndef MOUSE_C
|
||||||
|
#include "mouse.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif //MOUSE_H
|
|
@ -10,15 +10,15 @@
|
||||||
|
|
||||||
// Layouts array
|
// Layouts array
|
||||||
static const Layout layouts[] = {
|
static const Layout layouts[] = {
|
||||||
/* symbol arrange function */
|
/* symbol arrange function */
|
||||||
{ "[]=", tile }, /* first entry is default */
|
{"[]=", tile}, /* first entry is default */
|
||||||
{ "><>", NULL }, /* no layout function means floating behavior */
|
{"><>", NULL}, /* no layout function means floating behavior */
|
||||||
{ "[M]", monocle }, // 2
|
{"[M]", monocle}, // 2
|
||||||
{ "HHH", grid }, // 3
|
{"HHH", grid}, // 3
|
||||||
{ "[@]", spiral }, // 4
|
{"[@]", spiral}, // 4
|
||||||
{ "[\\]", dwindle }, // 5
|
{"[\\]", dwindle}, // 5
|
||||||
{ "|M|", centeredmaster }, // 6
|
{"|M|", centeredmaster}, // 6
|
||||||
{ ">M>", centeredfloatingmaster }, // 7
|
{">M>", centeredfloatingmaster}, // 7
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // !layouts.h
|
#endif // layouts_H
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
void
|
static void
|
||||||
movestack(const Arg *arg) {
|
movestack(const Arg *arg) {
|
||||||
Client *c = NULL, *p = NULL, *pc = NULL, *i;
|
Client *c = NULL, *p = NULL, *pc = NULL, *i;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue