Added more browser checks, changed app finding

This commit is contained in:
Djkáťo 2023-07-25 19:09:30 +02:00
parent e362382cae
commit d2d00497e1
6 changed files with 33 additions and 19 deletions

2
Cargo.lock generated
View file

@ -251,7 +251,7 @@ dependencies = [
[[package]]
name = "drp_creative"
version = "1.0.3"
version = "1.0.4"
dependencies = [
"discord-rich-presence",
"lazy_static",

View file

@ -1,8 +1,8 @@
[package]
name = "drp_creative"
version = "1.0.3"
version = "1.0.4"
edition = "2021"
author = "https://djkato.net"
authors = ["djkatovfx@gmail.com"]
[dependencies]
discord-rich-presence = "0.2.2"

View file

@ -2,4 +2,4 @@ keywords_list = []
show_default_when_excluded = true
portfolio_link = "djkato.net"
hide_portfolio_row = false
should_list_include_or_exclude = "Include"
should_list_include_or_exclude = "Exclude"

2
log.txt Normal file
View file

@ -0,0 +1,2 @@
'Process_list_dump.exe' is not recognized as an internal or external command,
operable program or batch file.

View file

@ -249,7 +249,16 @@ impl Apps {
impl Apps {
pub fn find_app(&self, str: &String) -> Option<&App> {
for app in self.as_iter() {
if str.contains(&app.process_search_string) {
// if (str
// .to_lowercase()
// .contains(&app.process_search_string.to_ascii_lowercase()))
// {
// dbg!(str);
// }
if str
.to_lowercase()
.contains(&app.process_search_string.to_lowercase())
{
return Some(&app);
}
}
@ -261,19 +270,13 @@ impl App {
pub fn parse(&self, window_title: &String) -> String {
match self.kind {
AppKind::C4d => {
let mut end_i: usize = window_title.len();
let mut start_i: usize = 0;
for (i, char) in window_title.chars().enumerate() {
if char == '[' {
start_i = i;
if let Some(curr_end_i) = window_title.rfind("] - ") {
end_i = curr_end_i;
} else {
return self.default_project_name.clone();
}
if let Some(split1) = window_title.rsplit_once("]") {
if let Some(split2) = split1.0.rsplit_once("[") {
dbg!(&split2.1);
return split2.1.to_string();
}
}
return window_title[start_i + 1..end_i].to_string();
return self.default_project_name.clone();
}
AppKind::Maya => {
let match_index = match window_title.as_str().find(".mb* - Autodesk Maya") {

View file

@ -8,7 +8,10 @@ pub fn get_running_program(apps: &Apps) -> Option<(&App, String)> {
for window_name in running_window_names {
//println!("{}", &window_name);
if let Some(app) = apps.find_app(&window_name) {
if !window_name.contains("- Google Chrome") {
if !window_name.contains("- Google Chrome")
|| !window_name.contains(" Mozilla Firefox")
|| !window_name.contains("- Brave")
{
//So googling it won't affect the DRP lol
return Some((&app, app.parse(&window_name)));
}
@ -20,8 +23,14 @@ pub fn is_program_still_running(app: &App) -> Option<String> {
let running_window_names = unsafe { get_running_windows_titles() };
for window_name in running_window_names {
if window_name.contains(&app.process_search_string) {
if !window_name.contains("- Google Chrome") {
if window_name
.to_lowercase()
.contains(&app.process_search_string.to_lowercase())
{
if !window_name.contains("- Google Chrome")
|| !window_name.contains(" Mozilla Firefox")
|| !window_name.contains("- Brave")
{
//So googling it won't affect the DRP lol
return Some(app.parse(&window_name));
}