aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorFlafyDev <[email protected]>2022-08-19 23:18:09 +0300
committerFlafyDev <[email protected]>2022-08-19 23:18:09 +0300
commitf0ad77251b28fcf48dcaf25f23e3a140d69a4735 (patch)
tree4a4b96c67ced9d14c1850b466eb2b6f8587140b3
parent69d17bf4240e41f2b26abd7a46dfd0e754e9ee9e (diff)
downloadHyprland-f0ad77251b28fcf48dcaf25f23e3a140d69a4735.tar.gz
Hyprland-f0ad77251b28fcf48dcaf25f23e3a140d69a4735.zip
move absolutePath to MiscFunctions
-rw-r--r--src/config/ConfigManager.cpp24
-rw-r--r--src/config/ConfigManager.hpp5
-rw-r--r--src/helpers/MiscFunctions.cpp22
-rw-r--r--src/helpers/MiscFunctions.hpp3
-rw-r--r--src/managers/input/InputManager.cpp2
5 files changed, 28 insertions, 28 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index 37ea10fc..162c8611 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -782,7 +782,7 @@ void CConfigManager::handleSource(const std::string& command, const std::string&
return;
}
- auto value = absolutePath(rawpath);
+ auto value = absolutePath(rawpath, configCurrentPath);
if (!std::filesystem::exists(value)) {
Debug::log(ERR, "source= file doesnt exist");
@@ -876,28 +876,6 @@ std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::
return parseError;
}
-std::string CConfigManager::absolutePath(const std::string& rawpath) {
- auto value = rawpath;
-
- if (value[0] == '.') {
- auto currentDir = configCurrentPath.substr(0, configCurrentPath.find_last_of('/'));
-
- if (value[1] == '.') {
- auto parentDir = currentDir.substr(0, currentDir.find_last_of('/'));
- value.replace(0, 2, parentDir);
- } else {
- value.replace(0, 1, currentDir);
- }
- }
-
- if (value[0] == '~') {
- static const char* const ENVHOME = getenv("HOME");
- value.replace(0, 1, std::string(ENVHOME));
- }
-
- return value;
-}
-
void CConfigManager::applyUserDefinedVars(std::string& line, const size_t equalsPlace) {
auto dollarPlace = line.find_first_of('$', equalsPlace);
diff --git a/src/config/ConfigManager.hpp b/src/config/ConfigManager.hpp
index 05e00921..72eb58f6 100644
--- a/src/config/ConfigManager.hpp
+++ b/src/config/ConfigManager.hpp
@@ -101,12 +101,13 @@ public:
void ensureDPMS();
std::string parseKeyword(const std::string&, const std::string&, bool dynamic = false);
- std::string absolutePath(const std::string&);
void addParseError(const std::string&);
SAnimationPropertyConfig* getAnimationPropertyConfig(const std::string&);
+ std::string configCurrentPath;
+
private:
std::deque<std::string> configPaths; // stores all the config paths
std::unordered_map<std::string, time_t> configModifyTimes; // stores modify times
@@ -116,8 +117,6 @@ private:
std::unordered_map<std::string, SAnimationPropertyConfig> animationConfig; // stores all the animations with their set values
- std::string configCurrentPath;
-
std::string currentCategory = ""; // For storing the category of the current item
std::string parseError = ""; // For storing a parse error to display later
diff --git a/src/helpers/MiscFunctions.cpp b/src/helpers/MiscFunctions.cpp
index b7285637..b27489ca 100644
--- a/src/helpers/MiscFunctions.cpp
+++ b/src/helpers/MiscFunctions.cpp
@@ -40,6 +40,28 @@ static const float transforms[][9] = {{
},
};
+std::string absolutePath(const std::string& rawpath, const std::string& currentPath) {
+ auto value = rawpath;
+
+ if (value[0] == '.') {
+ auto currentDir = currentPath.substr(0, currentPath.find_last_of('/'));
+
+ if (value[1] == '.') {
+ auto parentDir = currentDir.substr(0, currentDir.find_last_of('/'));
+ value.replace(0, 2, parentDir);
+ } else {
+ value.replace(0, 1, currentDir);
+ }
+ }
+
+ if (value[0] == '~') {
+ static const char* const ENVHOME = getenv("HOME");
+ value.replace(0, 1, std::string(ENVHOME));
+ }
+
+ return value;
+}
+
void addWLSignal(wl_signal* pSignal, wl_listener* pListener, void* pOwner, std::string ownerString) {
ASSERT(pSignal);
ASSERT(pListener);
diff --git a/src/helpers/MiscFunctions.hpp b/src/helpers/MiscFunctions.hpp
index a40471a9..9f002c20 100644
--- a/src/helpers/MiscFunctions.hpp
+++ b/src/helpers/MiscFunctions.hpp
@@ -2,6 +2,7 @@
#include "../includes.hpp"
+std::string absolutePath(const std::string&, const std::string&);
void addWLSignal(wl_signal*, wl_listener*, void* pOwner, std::string ownerString);
void wlr_signal_emit_safe(struct wl_signal *signal, void *data);
std::string getFormat(const char *fmt, ...); // Basically Debug::log to a string
@@ -17,4 +18,4 @@ std::string execAndGet(const char*);
float getPlusMinusKeywordResult(std::string in, float relative);
-void matrixProjection(float mat[9], int w, int h, wl_output_transform tr); \ No newline at end of file
+void matrixProjection(float mat[9], int w, int h, wl_output_transform tr);
diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp
index 82889f8a..b35d9064 100644
--- a/src/managers/input/InputManager.cpp
+++ b/src/managers/input/InputManager.cpp
@@ -568,7 +568,7 @@ void CInputManager::applyConfigToKeyboard(SKeyboard* pKeyboard) {
xkb_keymap * KEYMAP = NULL;
if (!FILEPATH.empty()) {
- auto path = g_pConfigManager->absolutePath(FILEPATH);
+ auto path = absolutePath(FILEPATH, g_pConfigManager->configCurrentPath);
if (!std::filesystem::exists(path)) {
Debug::log(ERR, "input:kb_file= file doesnt exist");