GithubHelp home page GithubHelp logo

plastik's Introduction

Plastik Style

image A Plasma 5 port of the Plastik theme, used by default for KDE3.4 and KDE3.5. Also contains a port of the CrystalSVG icon theme used from KDE3.1 to KDE3.5, as well as a Plasma style based on the default look of KDE3's Kicker and SuperKaramba applets. This is meant to be used alongside the "KDE Classic" cursors and the "Plastik" window decorations included in Plasma by default.

Installation

Place the "color-schemes", "icons" and "plasma" folders in $HOME/.local/share/ (or $XDG_DATA_HOME).

git clone https://github.com/poudink/Plastik.git  
cd Plastik
cp -r color-schemes icons plasma $HOME/.local/share

Application Style

I consider the creation of a widget style to be outside the scope of this port. This is mainly because KDE has never officially adopted a proper theme engine for widgets, making them impossible to properly distribute through the KDE Store. However, other people have already done the work to port the Plastik widget style to Qt5, so I suggest you check them out:

Credits

  • cmdrk: Creating the Vintage Plasma Style, which I used as a base.
  • Everaldo Coelho: Creating the Crystal icon themes.
  • KDE3's developers: Creating the theme I'm porting.
  • maarizwan: Creating the QtCurve-Hardy Plasma Style, which I used as a base.
  • MartinF99: Creating a partial port of CrystalSVG to Plasma 5.
  • nferenc: Creating the Klassik Plasma Style, which I used as a base.
  • Trinity's developers: Maintaining and expanding the CrystalSVG icon theme.
  • usrkl: Porting the Plastik color scheme to Plasma.

plastik's People

Contributors

poudink avatar

Stargazers

fernando avatar Piotr Doroszewski avatar  avatar Alexey Orlenko avatar Xavi Velàsquez avatar  avatar Sinan Alkaya avatar Luna Nova avatar Bridget avatar  avatar Dave avatar Carlos Frederico Bastarz avatar Mikhail Likhachev avatar Dennis Prochniak avatar  avatar  avatar  avatar Jai A P avatar Marco Rebhan avatar  avatar  avatar Rodrigo Pedra Brum avatar  avatar Alexander Wilms avatar masih avatar  avatar  avatar Bradyn avatar Fatih avatar

Watchers

Alexander Wilms avatar  avatar

plastik's Issues

Create SDDM Theme

Plastik currently has no SDDM theme. KDE3.5's default KDM theme should be ported to SDDM and included here.

Some CrystalSVG icons are illegible on dark color schemes.

In light of the creation of the new Plastik Dark color scheme, it may be necessary to create a new "CrystalSVG Dark" icon theme. CrystalSVG has colorful icons, so most of them work perfectly fine on dark color schemes, but a few of them like the 16x16 versions of view-refresh are quite difficult to see on a dark background. It would also be nice to change icons representing windows and widgets like the view- icons to represent the Plastik Dark color scheme instead of the default light Plastik.

This icon theme would have CrystalSVG as a dependency. Since the vast majority of icons would be identical between the two, it makes a lot more sense to only include the change icons and inherit the rest from CrystalSVG.

Plastik Doesn't Adapt to the Active Color Scheme

The Plastik Plasma Style currently looks the same regardless of color scheme, unless that color scheme is dark, in which case all of the text and inherited breeze icons and widgets turn white and become unreadable. It should be made to instead follow the active color scheme.

Get rid of useless remnants from the KDE3 era.

There are a ton of these. Useless icons that haven't been used by any applications for fifteen years. Seems like they make up a good half of the icons in CrystalSVG. Removing them would make the icon theme much smaller. It'd be pretty easy to automate, by just checking for every icon if it's present in Breeze, Oxygen, Adwaita or Hicolor. What's preventing me from doing this right now is that this would also remove some useful icons. For instance, none of those themes cover game subcategories, like applications-games-arcade, applications-games-board, applications-games-card, applications-games-children, applications-games-logic and applications-games-strategy. The same is true for some of the action icons for Inkscape and Evince. There's probably more that I'm forgetting about too. A bunch of icons will have to be manually added back.

Publish to KDE Store

Once most of the big issues with this theme are fixed, it should be published to the KDE Store.

Inherit Oxygen

CrystalSVG and the Plastik plasma style should inherit Oxygen to make missing components look less jarring. This currently isn't done because the more jarring a missing component, the easier it is to notice and fix. This will need to happen eventually tho, since we can't cover everything Breeze and Oxygen do if we source everything from a mid-2000s theme. This will probably only be fixed once I'm happy with the completeness of CrystalSVG and the plasma style.

GNOME Applications Are Missing Many Icons

Unlike KDE applications, GNOME applications need -symbolic icons, otherwise they'll immediately fall back to Adwaita instead of looking for a non-symbolic version. They also use a bunch of action icons that KDE apps don't use because of a lack of standardization. I've already mostly covered the icons needed by Disks, Evince and Nautilus, but I'm still missing a lot of icons needed for other applications.

Port Plastik to GTK

Plastik should get a GTK port to improve the integration of GTK apps. Ideally, it should support GTK2, GTK3 and GTK4. Note that it's currently possible to get around the lack of a GTK2 port by using the QtCurve port of Plastik plus qtcurve-gtk2, but there's nothing for GTK3 and GTK4.

  • GTK2 support.
  • GTK3 support.
  • GTK4 support.

Improve Widget Coverage

Plastik has very few widgets covered right now. This means most of the widgets (as in scrollbars, checkboxes, sliders, etc.) and Plasmoids look like Breeze. Widgets should be made to look like Plastik, while Plasmoids should whenever possible be made to look like whatever the equivalent SuperKaramba applet looked like in KDE3.

Create Splash Screen

Plastik currently has no splash screen. KDE3.5's default splash screen should be ported to QML and included here.

Use Symlinks

Like most icon themes, CrystalSVG has a ton of duped icons, which wastes some space. Breeze and Oxygen use symlinks to solve this problem. We should do this too.

gtk-update-icon-cache: The generated cache was invalid.

Running gtk-update-icon-cache on the icon theme causes it to error:

% gtk-update-icon-cache ~/.local/share/icons/crystalsvg 
gtk-update-icon-cache: The generated cache was invalid.

I have no idea what this does or why it fails, but it prevents me from installing this as a system-wide package on NixOS since it runs this command on all selected icon themes.

Improve Tray Icon Coverage

Currently, Plastik only covers about half of the tray icons. The other half also needs to be covered.

Missing Window Action Icons

Most of the window action icons used (for example) in the kwin rules utility and CSD are missing. Currently, KDE applications fall back to the "window" icon, which looks quite off, while GTK CSD applications fall back to Adwaita.

Optimize Images

Most of the PNGs and SVGs probably haven't been optimized well, running an optimizer should save some space.

Inkscape is Missing Many Icons

Inkscape has a ton of icons (located in /usr/share/inkscape/icons/hicolor/) which CrystalSVG doesn't currently cover. That'll need to be fixed.

Messed Up SVGs

Due to Qt's fucked SVG rendering (see https://bugs.kde.org/show_bug.cgi?id=448234), the SVG versions of some icons are just broken and I'm not too sure how I'm supposed to fix them. Easy way out would be to just get rid of them so it just uses the non-broken bitmaps instead, but SVGs are cool and I would much rather just get them properly working. For now, I'll just hide the broken SVGs until I figure out how to fix them.

Messed up icons:
bordertool

Redo Global Theme

The current Plastik global theme is terrible. It was thrown together in fifteen minutes and never touched since. It shows. It doesn't even have a preview thumbnail. It needs to be completely redone.

Publish to AUR

Like #14, this'll happen once I'm satisfied with the state this theme is in. Will require creating PKGBUILDS and whatnot.

Port More Themes

This has lowest priority. Once most or all of the issues with Plastik are fixed, I'd like to start porting other legacy KDE themes, particularly Keramik and KDE Classic. I'd also like to port some application-specific themes, like Konsole schemas and KBlocks themes.

Kirigami scrollbars are invisible or hard to see with Plastik Dark + PlastikStyle.

No idea why. It wasn't a problem until I rebuilt PlastikStyle a few minutes ago. This doesn't seem to be PlastikStyle regression, since I tried going back to the commit I had been using before and that didn't fix it. This only seems to happen with the Plastik Dark color scheme and another similar-looking color scheme I have called Zion (Reversed). The scrollbars are invisible in System Settings and System Monitor and quite hard to see in Elisa. I don't know whether this is a problem with the color scheme (since it was working fine before I rebuilt PlastikStyle and most other color schemes are working fine), qqc2-desktop-style (since it's only in Kirigami apps) or PlastikStyle.

EDIT: Looks like it depends on the color of the background the scrollbar appears in front of.

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.