Improvements on UI/UX consistency and usability
Closed, ResolvedPublic

Description

Edit (08/10 Update): After some discussion, due to the release of the new HIG just a few days after this goal was proposed, this is being merged with T17408 A Beacon for Open Design, that encompasses the remaining aspects of this one, marking this as "Resolved".

Description

Goal: UX Integrity

Integrity can be defined as "the state of being whole and undivided".

The recent work on the Human Interface Guidelines (HIG) has made the goal of KDE UX integrity that much more attainable. Currently, the guide is just that--a guide--and we propose that for KDE system elements, components, and integral apps, there should be more adherence to a predefined set of rules curated from the HIG. In other words, if it doesn't follow the rule, it is a bug.

Why UX Integrity?

The HIG's theme is clear: responsive & consistent. We agree!

Although there has been significant progress towards consistency, modernization, and accessibility of KDE's UI and theme recently, there is still room for improvement. In order for KDE to increase its userbase, it needs to respond to the plethora of form factors and display scales that vary greatly. It also needs to be able to adapt to different types of user input methods and themes, and do this all while maintaining cohesion across its ecosystem.

Since there are many devices that people use that come in different form factors that also have different display scales, KDE Plasma should adhere to a responsive UI/UX design policy that handles that variation of form factors. The KDE application Discover can be the example of what responsiveness should look like.

KDE Plasma's UI should also be able to adapt to various input methods. The user-experience (UX) should feel complete while using all the different various types of input methods. Currently, "touch mode" can feel unintuitive. KDE Plasma's UI should be treating touch input as touch input instead of tweaking the UI so that the user can use touch input as though they were using a mouse. There are also issues such as different components scaling different with different display scale settings; e.g., SDDM's display does not reflect the lockscreen scaling when the system's display scale is scaled up.

KDE Plasma's UI should feel complete, and it cannot feel complete with separate components behaving and looking differently. A good example would be with Discover and System-settings; they both have similar layouts, however, Discover has a responsive UI while System-settings does not. The display scaling issue mentioned above could also serve as an example of the need for cohesion.

What it will take:

  • Creating and adopting a ruleset developed from the HIG.
  • Defining what constitutes a system app & component.
  • People willing to look across the stack to find use cases and componenents that violate the newly created ruleset.
  • Individual apps devs would need to be on board, unless some easily accessible api for customization of each element or component is provided so they can keep whatever style or layout they want, in case they don't like whatever common style is settled.
  • Porting of existing interfaces that violate ruleset.
  • Fixing all bugs & features that violate ruleset.

Initial Project Team Organization

  • Bug curation team
  • Application developer/team
  • Plasma component developer/team
  • Input method (e.g., touch-mode, etc.) developer/team

Initial Roadmap

  • The acceptance of this goal.
  • The creation of a ruleset developed from the HIG.
  • The curation and prioritization of the bugs & features that fall under the new ruleset.
  • The development that will fix the bugs and add the features.

How we know we succeeded

Feedback from users, a reduction on the usage of theme-related customization options, reduced number of bug reports related to User Interface, either due to changes on the default layouts and themes or to reduction of usage of third party themes.

Relevant links

Champions

The team is:

  • Diego Damohill
  • Donald Menig
  • XXX

I am willing to put work into this

I am interested

lydia updated the task description. (Show Details)Jun 8 2024, 5:22 PM
akselmo added a subscriber: akselmo.Jun 8 2024, 9:22 PM

This sounds very interesting to me and I wouldn't mind to help with it.

akselmo updated the task description. (Show Details)Jun 8 2024, 9:22 PM

What I would add, are the stupid bottom corners in every app. This issue needs to be fixed in KWin, because KDE is going to a more rounded interface, and still they didn't fix it. The top corners are already rounded, but the bottom aren't for some reason. I hope I'm not the only one.

A quick note: The Human Interface Guidelines (HIG) is currently being reworked, and in its current state (from master), it looks like it will be greatly helpful with refining this goal. Along with utilizing the new HIG, I'm currently working on refining the goal so that its more readable and actionable.

This sounds very interesting to me and I wouldn't mind to help with it.

Welcome! ...and thanks for the support!

What I would add, are the stupid bottom corners in every app. This issue needs to be fixed in KWin, because KDE is going to a more rounded interface, and still they didn't fix it. The top corners are already rounded, but the bottom aren't for some reason. I hope I'm not the only one.

I prefer bottom rounded corners as well; however, I think that is more of a preference that falls under a feature request--I'm not so sure it would fall into the realm of this goal. Having said that, I'd be happy to see it implemented!

djmenig updated the task description. (Show Details)Jun 10 2024, 7:11 PM
ngraham updated the task description. (Show Details)Jun 16 2024, 4:31 AM
ngraham added a subscriber: ngraham.

The new HIG is merged and live, JFYI.

The new HIG is merged and live, JFYI.

Thanks!

The goal's original language used "guide" in place of ruleset because of the previous HIG, and with the new HIG having done such a great job its basically removed the step of creating a guide--hence, the change to "ruleset" in the goal language. I'm just not sure on how far to push the goal at this stage. I do have an example of a starting-point for the ruleset that could be used. If anyone's interested, I currently keep all of my work related to this goal in my github repo. Here's the ruleset starting-point example, and as always, any feedback is most appreciated and welcome! :)

UX Integrity Ruleset

The following example outlines a starting point on how to get to a comprehensive set of rules for KDE Plasma's system apps & components.

Starting with categories might aid in maintaining focus without becoming overwhelmed by the large scope of the goal (category titles are in question).

Responsive rules

  1. These rules force KDE Plasma to adapt to all device displays & display scales.
  2. To be determined...
  3. ???

Adaptive rules

  1. These rules keep in mind the device or input type; e.g., touch-input.
  2. To be determined...
  3. ???

Cohesive rules

  1. These rules focus on consistency on a global scale; in other words, things should look, feel, and behave similarly everywhere.
  2. To be determined...
  3. ???
frdbr added a subscriber: frdbr.Jul 29 2024, 3:53 PM
Cyzor moved this task from Ready for voting to Selected on the Goal Setting 2024 board.
Cyzor moved this task from Selected to Not ready for voting on the Goal Setting 2024 board.
djmenig added a comment.EditedAug 12 2024, 5:44 PM

This goal is merging with T17408 A Beacon for Open Design

frdbr added a comment.Aug 12 2024, 7:00 PM

Hello,

Please note that the deadline is on Wednesday, just two days away, so you still have a bit of time to put the finishing touches on your proposal. Take a moment to polish, adjust, and refine your ideas to ensure they’re ready for voting.

If you need any help or have questions, don’t hesitate to reach out.

diegodamohill closed this task as Resolved.Aug 12 2024, 7:25 PM
diegodamohill updated the task description. (Show Details)
diegodamohill updated the task description. (Show Details)