Code Monkey home page Code Monkey logo

Comments (14)

topeterk avatar topeterk commented on July 25, 2024

Hi, I was already asked, if this would become available for MAC. Since I don't use Linux at all as a Desktop OS and don't own any iOS copy, I think there will be no Linux or MAC compatible version built by myself in the near future, sorry.

However if someone is reading this and wants to help me out in porting the software to another OS, please have a look at Shortcuts.cs as it should be the only file that needs to be modified in order to support other platforms.

from hitcountermanager.

 avatar commented on July 25, 2024

If someone is familiar with mono this may be possible to port over to Linux. I have no experience with mono currently, but had the same thought as @LuciousLisa. I figure I can look into this as time allows. Not sure what this will do for Mac, but I do not have one to test with no real interest in that platform to be honest.

https://www.mono-project.com/

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

Even the mono project doesn't seem to have good support for global system hot keys. Also searched a while for a C# linux implementation for hot keys but couldn't find any good one that I can make use of.

Most promising to me is Global Hotkey in Mono and Gtk# but even that sounds like "it may work o.O" rather than "it works, always!"

PS: The HitCounterManager without any hot key functionality should also work on other platforms as it is plain dotNet code when there is a dotNet framework available for the OS. That means one has to remove all external WinAPI calls of Shortcuts.cs and insert some sort of stub or empty function.

from hitcountermanager.

 avatar commented on July 25, 2024

While I think the hotkeys are helpful, if they had to be added to a Linux port later my opinion is that would be acceptable. It isn't that big of a deal to Alt+Tab to click the button if needed.

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

I removed the WindowsAPI calls and inserted stubs to run the application using Mono on Ubuntu 18.04. Unluckily it crashes and will not startup successfully but at least it started - until the crash happend :)
Finding the solution may cost some time as the exceptions should not occur and there is no reason for that. It works with Microsoft .Net Framework and I have to workaround the issues that Mono is seeing.

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

I updated the source that works with Mono quite well today. Only issue I can see so far (no final deep testing done yet) is that the session progress (right side checkbox of the splits) is not updated correctly.
Also I had to disabled global hotkeys in the application, so maybe someone finds a solution to get it working for Linux or MAC and can help me out with an implementation. I'm sorry but I guess I will not dig deeper into global hotkeys for other OSes.
However, as it looks good so far, I am planning to upload also a release package that can be run with Mono on upcoming releases.
Just need some final testing (also for the Windows version as I switched from VB to C#) and updating of documentation (Readme/Wiki).

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

OK guys, you may want to have a look at the version 1.14 that I just released.
This version comes with a Mono compatible executable.
Hopefully it works on your end although the global hot keys will not work, unfortunately.

I appreciate any feedback if this version is fine so far or if there is anything we can do better next time, so I will keep this issue open for now.

from hitcountermanager.

LuciousLisa avatar LuciousLisa commented on July 25, 2024

Thanks for the work so far! I'll try it out soon and let you know about my experiences.

from hitcountermanager.

LuciousLisa avatar LuciousLisa commented on July 25, 2024

I'm going to list my findings here. I'm not super savvy, but I'll try to be meticulous to make up for that. 😃

Mono version: 4.6.2.7+dfsg-1
Path to my HCM folder: /home/lisa/.local/opt/HitCounterManager

  1. Can't load profiles:
  1. Cursor gets stuck in text field for hits/pb when editing the number:
  1. HitCounterManagerSave.xml (screenshot) and HitCounter.html (screenshot) are written to (and read from) the home folder instead of the application's folder (which would be the desired result). Steps to replicate:
  • Open application.
  • Click icon to create new profile.
  • Name profile in dialogue window, click OK to confirm.
  • Result: HitCounter.html is created in /home.
  • Click icon to save session.
  • Result: HitCounterManagerSave.xml is created in /home.

Let me know if you'd like me to open separate issues for each (or some) of them and if so, what additional info you need. I chose not to, to keep from overwhelming the repo (and potentially you) with multiple issues. 😉

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

Hi, for me this looks like that 1. and 3. are the same thing. The application uses only the filename to load/write the files, so it is important that the working folder for the application is were the application resides. When one double clicks the exe file in windows the working directory is taken from the exe directly, so there is no problem. However starting it from command line in windows or via mono then you have to take care of the correct working directory. Maybe try to jump to the hitcounter's directly via CD in the terminal and then run "mono HitCounterManager.exe" this should load up the application on the correct path. Let me know if this helps.

I will look into the issue with the number fields.

It is okay to discuss this in here as it all belongs to the "linux version" and as long we don't have too many tasks :)

Thanks for your feedback

from hitcountermanager.

LuciousLisa avatar LuciousLisa commented on July 25, 2024

Launching the application as you said (navigating to the directory through a command line and launching it from there) solved issues 1 and 3. Problem with that is you can't make a menu item (read: shortcut) for running the application without using a shell script.

Sharing how I made my shell script here for future reference, in case anyone else ever runs into this question. Credits for writing that go to my partner btw. 😉

mkdir /home/lisa/.local/usr
mkdir /home/lisa/.local/usr/bin
nano /home/lisa/.local/usr/bin/HitCounterManager.sh

----

#!/bin/sh

cd /home/lisa/.local/opt/HitCounterManager
mono HitCounterManager.exe

----

CTRL+X
Y

----

chmod a+x /home/lisa/.local/usr/bin/HitCounterManager.sh

----

/home/lisa/.local/usr/bin/HitCounterManager.sh

This work around suffices for now, but it's not a very 'sophisticated' method. Hopefully you'll be able to refine compatibility on this in the future. Thanks again for your work on this!

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

Good idea to add some kind of launcher script. I'll have a look at this and add it to the next version.

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

Hey, sorry that it took a while until I made the release.

I introduced a tarball for the Mono version that should have the unix permissions already set.
It also contains a start script that should invoke mono correctly.
Additionally the issue with entering numbers should be fixed as well.

Maybe you or someone else may have a look if this works and/or if I still can improve anything?
The current version is available here: Version 1.15.0.0

PS: ⛄ Merry Christmas! 🎄 🎁

from hitcountermanager.

topeterk avatar topeterk commented on July 25, 2024

I'm closing this issue at this point. Thanks for the support 👍

from hitcountermanager.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.