andrew-bibb / cmst

QT GUI for Connman
174 stars 38 forks source link

Requests - Just A Few Small Requests for GUI #4

Closed ghost closed 10 years ago

ghost commented 10 years ago

Hi,

First let me say this is a really nice GUI, nice work, and I really hope you're going to be at this for years to come! :)

I have a few requests...

These are my specs;

Slackware 14.1 x86_64 Openbox 3.5.2 tint2

I start cmst from ~/.config/openbox/autostart

sleep 3s && cmst -m &

This is working really great, cmst goes straight to the tray of tint2 minimized.

Now the problem, when I click on the tray icon it always opens up MAXIMIZED in size filling up my entire screen.

Can you please make the gui open in a small default size when opening it back up, and also make the gui so the end-user can size it to the size they want, so it will maintain that size when opening it back up.

Then if you will please consider under the 'Details' tab, under 'Service', when clicking the drop down, for all the wifi connections just list only the ssid there, personally here I think it's easier for the end-user to find networks based on the ssid, and then when someone picks a wifi ssid, then all this information is listed below. The last time I checked the mac gets listed in the bottom with all the details, so it seems a bit redundant having the mac listed in three different places.

wifi_9988782_managed_psk

To be honest even as geeks, do we really need the MAC listed under 'Status' - 'Services' - 'Connection' and the 'Details' drop down menu? It seems a bit overkill for the average user to list all this, no? Isn't just listing the ssid and encryption type enough information? So for all the MAC numbers under the 'Connection', who really needs this information? Just some food for thought, unless this all just comes from connman and there's no way for you to control this output. But again, when an end-user picks the wifi under the 'Details', and clicks on the drop down, then as I mentioned before, under a 'Connection' section you create, then they get all this information, and only in this location. I personally think just the ssid and encryption type being listed under the 'Status' - 'Services' is enough information.

Also I think it's a good idea to remove the ChangeLog from the GUI, it's seems to be common to just keep this in a /doc file, plus the ChangeLog gui fills up my entire screen running from top to bottom, and whatever is being displayed on the bottom is cut off, so you can't read it.

And this is my really big request, hehe, can this PLEASE be made to work with xfce4-notifyd? Which I believe is just a GUI for notify-send for OSD notfications. :)

Thank you very much for your time and consideration for these requests, keep up the great work! :)

andrew-bibb commented 10 years ago

moulei,

I'm glad you are using the program and it is working for you. To your comments:

1) Maximized is interesting. The main control box is a dialog and should not open full screen, especially with a common WM such as Openbox. The currently defined "normal" size is 702x546, and it should open that way. I'll check the settings in the GUI, if I had to guess I've got a line somewhere (or multiple somewheres) that says maximized instead of normal.

2) Remembering user settings I can do. While answering this I noticed I did not implement the GUI visual cue in the lower right corner to indicate you can grab the corner and resize the dialog. You can, it is just the visual cue that is missing. I'll put that in as well

3) The text in 'Details' under 'Service' is me being lazy. That is the ID returned by connman and I just used it as is. It is possible to take that ID and then lookup the SSID associated with it.

4) I see the point about redundancy, but I do want the full ID (MAC) listed at least once. Probably makes the most sense on the first tab. Reason I want it shown at least once is that if you are using the command line interface, connmanctl, you need that information to connect. Of course if you are using the GUI you are probably not using the command line interface, but I'd still prefer to keep the information shown at least once.

5) The change log is actually a text file in the text directory, if you would prefer to read it there is is called changelog.txt. That txt file contains the rich text formatting codes, and it is actually compiled into the program. I am aware of the potential for the text running off the bottom of the dialog, knew we were close but was not sure we were there yet. I'm using that same construct in another program and there I'm definitely off the screen. I need to implement scroll bars or paging into the dialog.

6) I'm not personally familiar with xfcd4-notifyd, but I'll take a peek. I'd obvioulsy prefer to code for one notify daemon, or one standard if such a thing exists. What sort of information do you want output to the notify daemon?

Just so you know, we are starting our very short spring/summer right about now, so it is most likely the simple items will be knocked off first (maximized window, save settings). The things that require more time, such as the notify daemon, and changing the presentation of the data will most likely happen towards Fall.

ghost commented 10 years ago

1) Maximized ... ok

2) User settings ... ok

3). Ahh come on don't be lazy, I'm cheering you on! LOL

4). Yes lots of redundancy, you say you want the full mac listed once, I'm all for that, it's just to me looking at the GUI the 'Details' looks exactly like where it belongs, hence the name 'Details', so I'm not sure why this can't be just the one place? Anywhere else IMHO just looks out of place.

Looking at this screen shot I found online it shows the complete mac for the eth0;

Device Address:

https://www.dropbox.com/sh/4mjz11k2anb45zw/ks_U0qt6F5#lh:null-page2.png

5). Ah yes some scrollbars, now why didn't I think of that? LOL...

6). If I'm not mistaken xfcd4-notifyd doesn't do anything fancy here, it's just a UI to notify-send is all... I can tell you right now every app that has notification support seems to work with it. HandBrake, Transmission, SABNzbd, etc...

Do you know Yad? It's a fork from Zenity, and I use it with a bash script the developer created to make a GUI frontend for the command line of OpenVPN, and I have a simple little bash command I use in two scripts for when the VPN Is connected or disconnected like the below example using notify-send that xfcd4-notifyd uses and gives me my nice OSD. :)

!/bin/bash

DISPLAY=:0.0 sudo -u foo /usr/bin/notify-send -i /home/foo/.icons/AwOken/clear/128x128/apps/openvpn.png "OpenVPN Disconnected"

Something I just realized I'm also having a problem with is turning the wifi on an off, it's the only technology I play with under Technologies. For where the ON OFF is located it would be nice to have buttons coded here you click and it just works. At the moment I click and click and click and sometimes nothing happens, so buttons would be really nice.

thanks :)

andrew-bibb commented 10 years ago

I think I've got the maximized bug worked out. Can you download the changed files, compile, try it out and let me know. I'm running the i3 window manager and it kind of ignores size hints for dialogs and does its own thing, which is why it looked (and still looks) fine on my side.

I also added a "Less" checkbox to the services window to toggle the long name on and off. Is this closer to what you think the display should be? If it is I'm thinking of having that setting saved with the sizes.

I thought the ON/OFF lag was just on my machine, so thank you for verifying that. That may be a connman or dbus issue, QT should send the request immediately. I'll put some debug code in to see where the lag is occuring. If it is connamn, or more than likely dbus, I may disable the line after the first click and show a popup to the effect of "hold your horses, we're trying to toggle power"

ghost commented 10 years ago

Hi,

Sounds great, by the way I did all this connman stuff as a trial and I don't have any of it installed at the moment, I reinstalled my clonezilla backup of my box before I started playing with all this and put that backup back.

So in Slack it doesnt use QT5 at the moment.

Slackware 14.1 uses qt-4.8.5, do you know if you can have qt4 & qt5 installed at the same time, it won't cause any issues?

From what I've read you can have them both installed and I found this qtchooser, here's Ubuntu's man page on it;

http://manpages.ubuntu.com/manpages/saucy/man1/qtchooser.1.html

So I'll use this qtchooser and keep them both installed.

I really wish your app could work with qt4, would make life simpler for me, LOL...

Thanks

andrew-bibb commented 10 years ago

Down porting I'm afraid would not be simple. QT introduced a new class to parse command line arguments in 5.2 and I use that new class extensively. It would be a lot of (tedious) work to deal with all the command line arguments and options porting to any version before 5.2.

I may have been a bit quick to cast aspersions on dbus and connman for the lag problem. Thinking about it overnight and it may actually be at my end in waiting to process the dbus return. Anyway I'll put in the debug markers and try to pin it down.

I was never completely happy with the toggle power on/off there because it is not typical. That is the only field where the user can interact with the contents. I looked at different ways and kept coming back to click the on/off field as being the most natural so I decided to accept the atypical behavior. I'm considering now adding a toggle button for power that activates, similar to the Move Before and Move After buttons, when a service is selected.

ghost commented 10 years ago

I guess 4 & 5 can coexist from what I can tell so I compiled 5 again over and I'm going to put it back in and have at this again, so I'll let you know about what you've done so far.

thanks

ghost commented 10 years ago

YEAH the window stays to the size you make it...

But I found another bug so I'll make a report for that so you can keep track of them...

thanks

ghost commented 10 years ago

Oops I yeahed to soon, LOL...

cmst maintains position and options you've made, but if I log out of X then startx over and log back in the size and options I have enabled are gone...

The size is changing back to a default small size, and the one option I've played with is 'Less' when I check it and log out and back in, it's unchecked...

The size and options need to be maintained on a restart.

By the way you have a TYPO on the 'Help' tab you spelled 'Whats This' instead of making it' What's This'...

One other thing I forgot to mention the tray icon of 16x16 is to small, I think the average sizes being used is more like 24x24 Even for the Global Properties making the icons a little bigger would look nicer.

Andrew, I hope you appreciate my 2 cents worth? LOL... To be honest here Nuvola is a bit on the old side of icons, going back 10 years ago, hehe... :)

If you're not a graphic designer, hopefully in time you can find someone to volunter and make something nice and more modern up to date, worthy of your fine application! :)

Well qt5 doesn't use qtconfig and it's going to support gtk3 either.

Right now I'm having to start it as; cmst -style gtk

But it should work with export QT_STYLE_OVERRIDE=gtk in my .bashrc but it's not...

thanks

andrew-bibb commented 10 years ago

Haven't yet put the settings to save all the sizes or the less box check state. Was going to start that next, but the code is a bit more involved. We'll see how far I make it this evening.

Thanks for the typo, I like easy ones to fix.

Icon size - easy enough to increase. I don't use a whole lot on my setup, but when I do they all match in height so possibly the i3bar scales them to the bar size so I don't notice.

For the icons: I mainly hang out in the Arch Linux side of things, and in that forum where I announced the program it I put out a call to any graphic type person who was looking for eternal fame and glory that they were welcome to provide some, I think I only use a total of 8 different ones. Didn't hear any respones, but the offer is still open if you know of anybody. I use Nuvola on all my projects because it has a decent license and a huge icon set. No other reason than that.

There is a start up switch that is supposed to use system icons instead of the built in ones. Somebody asked for it, I put it up, but never heard back if it worked or not. If you start with -i or --icon-theme it should use your builtin icon theme. I don't have a system theme so really can't check (I do like my minimal systems), but I'd be curious to know if it does work. If it does work and you don't like the choices it used let me know as I really just picked them based on text descriptions.

ghost commented 10 years ago

Ok settings to save...

Typo ok...

Icon size, yes needs to be little bigger 22x22 or 24x24

Icons for design, well if you just use a set for now, check out AwOken;

http://alecive.deviantart.com/art/AwOken-163570862

At least AwOken is a bit more modern up to date, I use Nuvola 10 years ago, they're old, and you have nice work here, it deserves something modern up to date, current with the times. :)

Startup switch ahh ok I'll try it with that.

By the way is there a man page for this thing? I don't recall seeing one when I built it.

Here's all I'm doing in a Slackware build script to compile it;

qmake-qt5 make make INSTALL_ROOT=$PKG install

and this is my contents of the package;

FILE LIST: ./ install/ install/doinst.sh install/slack-desc usr/ usr/doc/ usr/doc/cmst-05.23.14/ usr/doc/cmst-05.23.14/cmst.SlackBuild usr/doc/cmst-05.23.14/README usr/bin/ usr/bin/cmst

You only mentioned doing qmake but this doesn't create the /man path and add in the man page for it.

What compile flag would be needed to do this, or for now it just has to be moved manually?

By the way for other Openbox users I found out by placing export QT_STYLE_OVERRIDE=gtk in ~/.config/openbox/environment it worked to get cmst to use gtk2 themes, not sure why the export variable wouldn't work in my .bashrc, where I usually place such things.

http://openbox.org/wiki/Help:Autostart

So just wanted to share that with you in case you get other Openbox users stuck. :)

andrew-bibb commented 10 years ago

I fixed the typo in the help tab in the files uploaded when I fixed #6.

I actually put my first cut at a manpage up on github earlier this week. It should be in the text directory, called man_cmst. Still very much a work in progress and if you want to use it it has to be (for the moment) moved manually. I think I need to modify the .pro file to have qmake add the proper lines into the make file so that it is installed. Never done one before so some research is in order.

I'll take a look see at the AwOken icons you linked to.

ghost commented 10 years ago

Hi Andrew,

For the man shouldn't that be renamed from man_cmst to cmst.1?

For now I'm going to rename it in the src to cmst.1 and mv and gzip it to /usr/man/man1 :)

andrew-bibb commented 10 years ago

Most certainly once it is ready to go.

ghost commented 10 years ago

WOW fast reply, I edited my post above, unless you just saw.. :)

ghost commented 10 years ago

So starting it as;

cmst -i -m &

The tray icon should use an icon theme I'm using? Also would the two icons under the Status tab for Global Properties also change?

I change my icon sets with lxappearance.

thanks Andrew

andrew-bibb commented 10 years ago

The offline mode icon (green or red golf ball) does not change because I couldn't find a system one that made sense. For the others if the system icon cannot be found the program will fallback to the Nuvola ones. The tray icon should change assuming there is a matching system theme icon for that action. These are the system icon substitutions I used.

// bookmark --> emblem-favorite // connect_established --> network-transmit-receive // connect_creating -->network-idle // connect_no --> network-offline // ledgreen --> no substitution // ledred --> no substitution // cancel --> network-error // help --> system-help

Again, It is supposed to work that way, but I've not been able to test it. Do any of the icons change? System help is the ? for "What's This" in the lower left of the dialog. If any changed I'd expect that one to.

ghost commented 10 years ago

The ON/OFF isn't working right now, not sure if you disabled it, and you're working on something for it?

Have a look at the screen shot below, this is what I meant for buttons for the ON/OFF, just something small and flat looking so it doesn't distract from the gui and looks good, of course it changes to match themes, but it stays flat looking for any theme...

http://i.imgur.com/a2O3Oar.png

Oh, sorry I forgot to reply about the "Less" checkbox, I guess some people might like this, but again the MAC address is being shown under 'Details'; Device Address, again I think this is the only place it needs to be... :)

I still think better to not have a Changelog button, that thing is going to be BIG over time, LOL... Just keep ChangeLog in the /docs like most apps have. But if you just got to have it, need to change it to ChangeLog, one word.

If I start it as cmst -i nothing changes when I pick a new iconset in lxappearance.

I tried these iconsets from lxappearance with no changes;

AnyColorYouLike AwOken Elementary Faenza Gnome High Contrast

I just hacked on the code with QT Desinger and I added in AwOken icons... :)

The offline mode icon (green or red golf ball) changes for me, also the tray icon changes, have a look at the screen shots below using AwOken.

http://i.imgur.com/0Q255lo.png http://i.imgur.com/oYiHs0x.png http://i.imgur.com/ZO2ul5J.png

Here's the icons if the license is ok and you want to use them;

https://www.dropbox.com/s/1igzpnl8fbfuawy/images.tar.gz

andrew-bibb commented 10 years ago

I haven't touched the on/off yet. Next up on my hit parade.

Bummer on the -i not working, now I don't know if is my code (probably) or if neither of us has a system icon theme installed.

I was going to ask which version of the AwOken icons you wanted, now I know. Looked for a license last night and didn't see one listed on the web site so figured I'd have to download and see. I'm pretty flexible, just need something that lets me use and distribute it (without forcing my code to become GPL, I like my MIT license). I've no problem changing the icon set. If you want to help things along list for me the ones you'd like to see and where.

I see where you are going with the button idea. I think I can do it with a custom item delegate, but it will take me a bit to hack through it. I like it, but it is not going to happen real soon.

Settings should now be working and I've uploaded the code to github.

We may have to agree to disagree on the change log button. One of my pet peeves is getting a program update in my office and then haveing to sort through all the packing material, or even worse go to a web site, to find out what has been changed. When I've got the program up on my screen I just want to click something to see what is new. Assuming I'm like most people (maybe not a great assumption) you really only want to see what is different from the last time you used the program, and that will always be at the top of the change log. Is change log really changelog (one word)? English changes so fast, particularly with technical terms, that I can't keep up (we need a change log for English!). If it really is one word I'll change it.

The entry in the pulldown on the Details tab is the ID returned by connman, and with "Less" checked it is the only place we show it. I agree it is based on the MAC, but it is separate. The text that shows in the pulldown entry is what you have to use if you want to use the connmanctl command line interface. As an aside, in /var/lib/connman there is a directory named exactly as the text in the pulldown. These directories are created and named by connman and contain the information (including passphrases) necessary to manage the network connections.

andrew-bibb commented 10 years ago

I think I may have solved the lag problem when togging power. New code is uploaded if you want to try it out.

ghost commented 10 years ago

Well the ON/OFF doesn't do anything now when I try to click, before if I remember correctly it seemed to highlight before I clicked it and would go on or off, now I click and nothing is happening.

In ~/.config/openbox/environment I have this so I can use gtk2;

export QT_STYLE_OVERRIDE=gtk

I'll comment it out and test to see if the QT theme works for the ON/OFF and not s GTK2 theme issue, and let you know.

I'm downloading iconsets and placing them in ~/.icons and LXAppearance sees them and when I pick an iconset all my applications change and use these icons so I know this works on my end.

Retain Settings, is this suppose to remain checked when you restart cmst? Because when I log out of X back into X it's unchecked.

ChangeLog, ok you're the Boss it's your app, LOL... btw in QT Designer I changed the name to &ChangeLog. Most docs I've always seens it written as one word, either Changelog, or ChangeLog...

One other thing I did in QT Designer was remove all the Tooltips, this seems a bit overkill since you have a 'What's This' explanation for them. I'm not so sure having tooltips is needed, always getting popups in your face. Also most people using connman and cmst are going to be geeks I'm assuming and aren't going to need tooltips, it's all pretty self explanatory anyways.

Keep up the great work!

By the way, some thought here, if you think you'll need more options down the road you might want to consider making a preferences tab to place them in rather then on the gui.

Hide Tray Icon Retain Settings All Devices off

With these three, it's starting to get a little busy looking...

andrew-bibb commented 10 years ago

Retain settings is supposed to keep the check box and restore the GUI to where it was when you closed the window, and in typing this I may have just found the answer. Did you change the GUI as you wanted, then minimize to tray and then shutdown? That sequence may have bypassed the save code (triggered on the main window close event). If that is the case, or if you have any other information can you open up a separate issue for it. If that was the order of events the fix is simple, but until I implement the fix the workaround would be to actually exit the program after you get it to look the way you want and then restart.

ChangeLog one word it is.

I may need to spend some quality time looking at the theme and style options in QT. I've never really paid all that much attention to them.

Tooltips I went back and forth on. I think you are right on this interface that they just clutter up the place. I'll probably just remove them, or see next paragraph....

Totally agree on the busy looking with all the controls. I originally added the third one below the other two and it was horrendous. It looked marginally better in the grid form. Do you think we should do a complete tab for preferences or a pushbutton that opens up a dialog? The only checkbox that really should be at the top of the first tab is the "All Devices Off" one. According to the connman documentation that can be used to quickly put your computer into "airplane mode" where all transmitters are powered down.

ghost commented 10 years ago

Retain settings seems to be working now, I grabbed the latest from git not sure that helped or what...

ChangeLog ok...

Using GTK2 themes, the on/off not working, I made a new issue for that.

Tooltips, thank goodness it's crazy with all the popups... hehe :)

Well the last network app Ive been using is Wicd and for the preferences in that, it pops open it's own window, I don't remember, but I thought the NetworkManger just has a lot of tabs. Either way you need a new preferences window or tab.

But since you have all these tabs already I guess another one won't hurt, hehe...

Status   Details    Wireless    Counters   Preferences   Help
ghost commented 10 years ago

Here ya go I hacked it around and made a preferences tab;

http://i.imgur.com/m8aJDBd.png http://i.imgur.com/hP0D9Qw.png

By the way where is the Retain Settings being saved? Because I'll uninstall cmst and then make some changes to the code to play with it, then install it over and it's still check marked...

andrew-bibb commented 10 years ago

Preferences tab it is. It is nice having someone else to help provide input to these decisions.

The settings are in ${HOME}/.config/monkey business enterprises/cmst.conf It is a standard ini text file. When playing around with it I find it easiest to just remove the entire directory.

All the things I'm working on now you need to get from the git repo. I've not packaged any as a new release. I'm thinking a new release once the icons are sorted out and we're positive settings are functional. Speaking of icons, do you have a list of which ones you want to use?

andrew-bibb commented 10 years ago

Just uploaded to github 14.05.26-2 which includes the preferences tab and a new checkbox to toggle the display of tooltips on. Default is tooltips off, and I figured that if I completely removed them somebody else would want them in.

My guess as to why the settings were not being saved appears to be correct (did lots of rebooting to check). This version should fix that issue as well.

The system logging is still off as in 14.05.26-1.

ghost commented 10 years ago

You should change it to ~/.config/cmst :) No Monkey Bussiness LOL... :)

No the system settings were being saved before...

Getting back to icons, to be honest, wicd as an example and the NetworkManager will use the iconsets you choose. I think I mentioned it before, but in LXAppearance if I pick an iconset wicd does use it, so this does work properly on my box with icons. So I would have cmst set up so people can pick and choose their own iconset if they don't want to use the default you make cmst with.

On the side note of fonts, I noticed cmst will use the fonts I have on my system but they didn't look good, and I don't recall seeing many apps that change the look of the fonts, I know wicd doesn't.

I went back playing and changed cmst to Dejavu Sans bold and condensed and it looked really nice. I would personally hard code in the fonts, because I'm afraid some fonts people choose will not look right in cmst.

What do you mean system logging is off, I thought the logging is controlled by connman?

andrew-bibb commented 10 years ago

CMST is currently not writing anything to the systemlog to allow you to debug. As soon as you figure that out I'm going to reactivate it.

You don't like monkey business? Just kidding, I can and probably will change it. I've got about half a dozen analysis and design programs I've written for my company, and anything not engineering related I put under the money business directory and moniker to keep it separate on my computer.

Actually I found the system settings were not saved if you checked the box, minimized, then exited. They were only being saved if you actually exited with the window showing. Anyway now when you minimize I force a save of the current settings.

I though for icons we were going to hardwire in the AwOken set. Do you want to hold on that for now?

ghost commented 10 years ago

cmst was writing to the logs before?

MonkeyBusiness hehe...

Ahh ok on system settings...

Oh yes for icons of course you need to pick a set you want to code in, so AwOken by default do seem nice, but the end-user should also be able to load their own iconset and have it change too is what I meant...

andrew-bibb commented 10 years ago

We were (are) writing on major errors only, so hopefully you never saw one. I temporarily turned it off to help you debug.

Understand on the icons.

A-

ghost commented 10 years ago

Ok you replied back the logging was a bug from cmst...

Ok on the icons, can't wait for a new modern look, hehe... :)

Regarding the fonts I mentioned eariler hard coding them in, I forgot that wicd allows for font changes, but for some reason the same fonts I'm using Aller don't look as good in cmst, it looks like some of the top parts of letters is ever so slightly gettting cut off, you really have to look very closely to notice this.

andrew-bibb commented 10 years ago

The icons are licensed with the Creative Commons license, so that should be fine.

The guy who originally wanted the system icons enabled has resurfaced (Arch Linux forums) to say that they are working fine on his system. I'm going to ask how he set them, but for now I'm going to assume that my code is actually correct on that.

Turning off the tooltips also turned off the popups in the system tray icon. I've also added new controls to turn off just the interface tooltips, or just the system tray icon tooltips, or you could check both to turn everything off. RIght now default is interface tooltips off, tray icon tooltips on.

Monkey Business has been replaced by cmst (settings ini file is now ${HOME}/.config/cmst/cmst.conf). How boring!

ghost commented 10 years ago

AwOken are Creative Commons?

Sorry lost me on the guy who originally wanted the system icons enabled? Working fine, meaning he can switch to different looking icons on his box?

Technically speaking it's not called Tooltips for the System tray, more like Bubbles Popup...

So better to call it; Enable System Tray (Popup)

By the way it looks like you used an uppercase i for ToolTIps? It looks odd, need to change it to this;

ToolTips

Yeah ~/.config/cmst now looking pro, LOL... :)

andrew-bibb commented 10 years ago

AwOken are Creative Commons from what I can determine: http://brenta.free.fr/IMG/pdf/Installation_and_Instructions.pdf

System icons with -i are working on his box. I've posted a question to him about what utility did he use to define the system theme.

Enable System Tray (Popup) - I like it, much clearer. From a coding perspective they are tooltips, so I just continued to call them that.

ToolTIps - is a mistake, I'll correct it.

ghost commented 10 years ago

Hi Andrew,

Ok on Creative Commons...

-i not working here, and by the way wicd on my box will change it's icons when I pick them in lxappearance, and so do other applications, firefox, deadbeef, spacefm, and more, so I have to assume everything works ok, since all my apps will change when I pick them, but cmst doesn't.

Coding perspective, hehe...

Don't forget the SMALL i in Tips, you typed it again even here on GitHub as ToolTIps, you got a stuck key on that keyboard? LOL... --> ToolTips :)

By the way I replied to the small gui size issue I reported, you closed, the GUI is still going small, so size restriction not working, see my reply;

https://github.com/andrew-bibb/cmst/issues/9

andrew-bibb commented 10 years ago

Think I have the small i corrected (along with the System Tray popup). Problem is not my keyboard (well maybe initially) but rather my eyes.

For the system icons the reply I got is linked below. Don't actually understand where he made those changes, but I assume a bit of quality time with Mr. Google will enlighten me. Low on my list right now, there are a lot of other things backing up and I really need to hack through some of them.

https://bbs.archlinux.org/viewtopic.php?pid=1420530#p1420530

Edit: I may have an idea. Looking at your application list above the applications are all built against gtk2 or gtk3, not qt. That seems to mesh a bit with the comment I linked. I'd actually bet money (if I had any) that this may be part of the reason.

ghost commented 10 years ago

Your eyes, LOL, here let me wipe those glasses... :)

Ahh well, sorry I didn't mention my qt4 apps also change I use, transmission, keepassx, vlc, and some others, so qt4 apps also change on my box using LXAppearance.

By the way, not sure I mentioned it, but all I do is download the icons, unzip or untar them, and just place them in ~/.icons in my $HOME, nothing fancy.

cd /home/foo/.icons ls

AwOken Elementary  Faenza  Jungle  SimplyGrey  default  livarp_icons

Ok looks like this is all he did; DESKTOP_SESSION=gnome and QT_STYLE_OVERRIDE=gtk

I did QT_STYLE_OVERRIDE=gtk is all, and then if I remember you also went back working on this so I didn't test it over and if it doesn't work I'll add in DESKTOP_SESSION=gnome and let you know...

ghost commented 10 years ago

Ok some of the icons change depending on the themes, I'll explain that in a sec...

So to make this work for QT5, I believe for other desktops that aren't using KDE and you want to use GTK2 you need these two;

export DESKTOP_SESSION=gnome export QT_STYLE_OVERRIDE=gtk

So this works, but not all the icons are still changing. I looked through some of the folders and naming.

These are icons that don't get changed for every theme, these are names you've picked that are not common across most themes, you'll need to change them, for more compatibility across more themes...

bookmark.png
cancel.png
help.png
ledgreen.png
ledred.png

I hope I'm not confusing you here, you have icons that work with qt, so keep them the same and rename them to what gtk uses, and then copy those new named ones in with the old ones.

'bookmarks.png' 'cancel' - should work for most gtk themes, but you should check this. I don't have a lot of themes but I noticed that Faenza doesn't use the word cancel, which seems odd for such a popular theme. help.png is real common but I notice some themes are using instead, 'gtk-help.png'

The led icons I'm afraid you're just going to have to hardcode in because of this naming, and not many apps out there use a green and red circle too.

If you grabbed the icons before I changed to;

https://www.dropbox.com/s/1igzpnl8fbfuawy/images.tar.gz

I used two AwOken icons I found to make new ledred and ledgreen which look much nicer you could hard code in.

One last thing, should cmst require a restart for the new icons to take affect if it's sitting in the tray because I noticed the don't change unless I restart it.

andrew-bibb commented 10 years ago

Sounds like we're getting somewhere. The icon naming is something that has been nagging at me, particularly when I bring in the new set. I'd like to have just one name used internally, and then find someway to link that back to the real icon. Not sure that is possible to code though. What might be more possible is to create a fallback list for each icon. There are only 8 so not a big deal (hard part will be creating the list, not so much coding it).

Tried to download the AwOken set this evening and choked at 45MB. Going to give it a shot again in the AM. What I want to do is have an option on the new preferences tab to choose the icon size for the system tray. Got a couple of other ideas to flush out that page, one would be a group box to show the options the program is called with, another (if it is possible, not entirely sure) would be to show the options connman was started with. I don't recall seeing a query in the connman API for startup options, so the last may just be pie in the sky.

ghost commented 10 years ago

I just added this in, not sure you saw it above?

One last thing, should cmst require a restart for the new icons to take affect if it's sitting in the tray because I noticed the don't change unless I restart it. Just make duplicates is all of the same icons, one name for qt, the other for gtk, as example;

bookmark.png bookmarks.png cancel gtk-cancel

I put up AwOken icons for you to use if you wanted to hardcode them instead, I just repasted the link at the bottom of my last reply...

Don't need to mess with icon sizes, this is typically handled by the DE/WM or sys tray... I use tint2 as example I can make my system tray icons with it smaller or larger.

On your other ideas, hmmm

andrew-bibb commented 10 years ago

The icon choices are read at startup. I think I could put in a control (preferences again!) to force a reread of the icons. Will have to check the program flow to be positive I can.

Success on the download. Gads there are millions to choose from, really glad you gave me the list to use otherwise I'd have spent days browsing thorugh all of them.

Good on the icon sizes, makes things simple.

Think my idea of a fallback list may not work, it hit me a couple of hours later that I didn't pick the names, they are "standard" names defined by freedesktop.org. If they don't exist In the icon set I can't really tell QT that they do. There is a way of doing this all, just not sure what it is at the moment. I need to spend some time really thinking before I start coding.

andrew-bibb commented 10 years ago

First cut with AwOken (version 14.05.31-1) has been uploaded. I used 2 different than you had sent (help and favorite).

Lot of neat ones in there. I think I may modify the system tray icon to show a wireless symbol when there is a wireless connection, and a wired symbol when the wired connection is active.

ghost commented 10 years ago

Nice on the icons and yes a wifi one for wifi is good, wicd does this too...

41 comments in this section and going strong, LOL....

Let me know if you want me to go back and look over the individual things here and make different issues on them to keep better track of, trust me there are still a lot of small cosmetic gui glitches I can see that need working.

I think if we keep going on with comments in this one, we're going to get lost soon, hehe... :)

andrew-bibb commented 10 years ago

I was thinking the same thing about breaking the remaining items out. This thread is getting a bit long. Depressing to logon and find more and more issues, but without a doubt much easier to keep track of that way. If you are willing to go back and do that please have at it. We could then close this one and it would at least look like we've made some progress!

I'm online now looking at trying to get qmake to create the manpage automatically from the master. Feel like I spend more time on Google than I do coding.

ghost commented 10 years ago

Yep I'm here BOSS, will do! LOL...

andrew-bibb commented 10 years ago

Update 14.06.01-1 should have a proper manpage that is installed with "make install".

I'm eventually going to want to pick your brains for some of the system icon stuff you've been working out, seems to me a lot of it should be added to the manpage. Just not right now.

ghost commented 10 years ago

In my build script this is all I run to compile and install it;

qmake-qt5
make
make INSTALL_ROOT=$PKG install

The man page didn't respect the make install cmd I'm using, and didn't get installed into my package, instead it installed it into my system at /usr/share/man/man1

Is make INSTALL_ROOT=$PKG install correct?

Here's how my pkg contents turned out;

./
install/
install/doinst.sh
install/slack-desc
usr/
usr/doc/
usr/doc/cmst-06.01.14/
usr/doc/cmst-06.01.14/cmst.SlackBuild
usr/doc/cmst-06.01.14/README
usr/share/
usr/share/man/
usr/share/man/man1/
usr/bin/
usr/bin/cmst

thanks

andrew-bibb commented 10 years ago

I've never tried make INSTALL_ROOT=$PKG install. All I've ever done is the very basic: qmake (only for QT based programs) make make install

Interesting though the program itself went into your root, and the manpage path was also created. I'll try to spend some more time with Mr. Google and see if I can have the documentation do the same. I know which line in the PRO file that I need to look at (the one that starts 'documentation.extra') I'm actually finding that there is not a whole lot out there on having qmake configure for the last step - actually installing the beast. Up to that point there is tons of info on anything you might want to do, almost seems like they lost interest when they got to the last chapter.

I've built packages for Arch (and I actually need to build another one soon), but that is quite a different process and the manpage will not be done at all with qmake or make install.

Just uploaded the changelog dialog with scroll bars. I've also set it up to be non-modal so if someone opens it up it won't block like a typical dialog. Absolutely classic, when I was working on it a week or so ago it was segfault city and I couldn't find the problem no matter how hard I looked. Put it down for a couple of days then picked it up again this evening and the error jumped right out at me. Need to copy this to my media player where I've got dialogs left and right runnng off the page, but that is another story...

ghost commented 10 years ago

Hi Andrew,

Forgot to make another report for man, so I removed this and created the new issue...

andrew-bibb commented 10 years ago

Just uploaded an attempt to show powered on and off buttons. Still need to double click to activate, having problems with single click and I'm not sure why.

I think it needs touching up, but I'm not entirely sure what needs to be done. Does this look like we are at least on the right track?

EDIT: single click now working in the current version 14.06.03-3

ghost commented 10 years ago

https://github.com/andrew-bibb/cmst/issues/8