Giter VIP home page Giter VIP logo

simdock's Introduction

Simdock

This is simdock, an eye-candy deskbar for Linux.

simdock example

Features

  • Starters in the dock keep track of launched applications, enabling minimizing, raising and cycling through its windows
  • Transparent background with or without without compositing, and in both modes the dock automatically updates when the desktop background changes
  • Fluid animations โ€“ icons get bigger when hovered and shortly transparent when clicked
  • Configurable size and icon placement

Install

Currently, simdock has to be compiled manually. The main dependencies are wxWidgets and GTK3.

  1. Install dependencies.

    Under Void Linux:

     sudo xbps-install pkg-config wxWidgets-gtk3-devel librsvg-devel xcb-ewmh libwnck-devel make gcc
    
  2. Type make to compile

  3. Type sudo make install to install

Start

Start with simdock

Original

http://sourceforge.net/projects/simdock

simdock's People

Contributors

onli avatar probonopd avatar swt2c avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

simdock's Issues

Add composited transparency

Simdock should use real transparency for its background when a compositor is active.

This would fix #9 and likely #6.

Before now, this was impossible since the wxwidgets compositing feature was broken. Maybe it's fixed now, after the move to GTK3 in #11. However, an initial test did not work -> enabling transparency for the frame background in wxWidgets still seems to be completely broken. But maybe that's not true, and someone knows how to get it to work. Comments, PRs etc welcome.

Settings in the AppImage don't work

On neon-devedition-gitunstable-20180826-0812-amd64.iso with Simdock-5fc553b-x86_64.AppImage I get this error. Is it searching another hardcoded path?

wnck version under void linux

This is meant as documentation.

Today under void, simdock did not want to start anymore. The solution was to install libwnck2 and libwnck2-devel. Despite the name, this made libwnck-1.0 available again when compiling simdock.

GTK3 Support

GTK3 support would be appreciated. The main issue seems to be that GdkPixmap is gone, so I wasn't sure how to replace gdk_pixmap_foreign_new().

Fix pseudo-transparency

The move to GTK3 (#11) broke the pseudo transparency. Simdock grabs the image of the current workspace on start, including the currently open windows(!), but doesn't update when that image changes (like when windows gets closed).

Replace libgconf

On void, it seems like the old libgconf-2.4 is finally gone for good, which breaks simdock for me. Simdock should compile with something else. There is likely no need to use Gnome's storage API here in the first place, setting could be stored in an .ini or .toml instead.

Black box around the icons

On neon-devedition-gitunstable-20180826-0812-amd64.iso with Simdock-5fc553b-x86_64.AppImage I get a black box around the icons:

(GIF screen recording made with the Peek AppImage)

Use bigger window icon

When simdock is using icons for just a starter, everything is fine, since that icon can be chosen by the user. But when it becomes a task - a window is opened - simdock uses the icon wnck_get_icon returns (https://lazka.github.io/pgi-docs/api/Wnck_3.0/classes/Window.html#Wnck.Window.get_icon,

GdkPixbuf* pb = gdk_pixbuf_copy(wnck_window_get_icon (window));
). Sadly this uses a small version of the window icon that then gets upscaled. It would look better if simdock could use one of the the bigger icons that many windows are indeed transporting in _NET_WM_ICON(CARDINAL).

I don't see how to do that.

sim_gconf.cc:89]: (error) Dangerous usage of c_str

[sim_gconf.cc:89]: (error) Dangerous usage of c_str(). The value returned by c_str() is invalid after this call.

const gchar _data = wx2std (_value).c_str ();

Something like

wx2std tmp( *value);
const gchar *data = tmp.c_str ();

might work better.

Some problems on Mate

Hey, nice work. I loved the simplicity of the dock. So here is some problems i see on Mate 1.20.4 / Debian 10

  • Cannot get transparency of PNG

image

  • The dock is not always on the top

image

  • Can move dock using ALT+CLICK

image

  • A Clock will be nice feature

Anyway, I'll look and try do something, i loved the dock

AppImage fails when compositing is on

I restored the AppImage build infrastructure; The relevant files are:

Initially, I took the code from the old travis file (https://github.com/onli/simdock/blob/ec895834f463825adb6bc0e8e4f9345d4b669095/.travis.yml) and ported that directly, but linuxdeployqt produced an AppImage that threw this error:

**
Wnck:ERROR:../libwnck/xutils.c:2348:default_icon_at_size: assertion failed: (base)
Bail out! Wnck:ERROR:../libwnck/xutils.c:2348:default_icon_at_size: assertion failed: (base)
Aborted

So I switched to https://github.com/linuxdeploy/linuxdeploy - same error at first, but solveable by adding the gtk plugin (5a73197). Now we have a working AppImage again!

But simdock when run from the AppImage stays black when compositing is on:

simdock_broken

At first I though that AppImage might block access to the other icons and gfx files, but then it would not work when compositing is off, which I noticed afterwards. Two options remain:

  1. AppImage breaks compositing (unlikely, given how AppImage works)
  2. The old wxWidget version used for the AppImage is broken. This bug looks close to how wxWidgets behaved when I tried to enable compositing before - it had either no effect or the UI stayed dark, like here. And for the AppImage generation we use Ubuntu Focal, which means wxWidgets 3.0.x - it might very well be we run into a wxWidgets bug here, one that is solved in wxWidgets-3.2 my main system uses (and that newer Ubuntu systems would use)

Next step: See if we can raise the wxWidgets version - maybe by using a newer Ubuntu version as base? https://packages.ubuntu.com/lunar/libwxgtk3.2-dev would be the first option, from Ubuntu 23.04. But I do not know whether that is possible, and whether the resulting AppImage would work on a significant number of systems with a build base that new.

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.