appDisplay: Show a dot when application is running
Show a dot in the icon of running applications. Design request. https://bugzilla.gnome.org/show_bug.cgi?id=744680
This commit is contained in:
parent
95e141e47e
commit
6cf53a8d1c
@ -493,6 +493,10 @@ StScrollBar {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dash-item-container > StWidget {
|
||||||
|
padding: 4px 8px;
|
||||||
|
}
|
||||||
|
|
||||||
.dash-label { //osd tooltip
|
.dash-label { //osd tooltip
|
||||||
border-radius: 7px;
|
border-radius: 7px;
|
||||||
padding: 4px 12px;
|
padding: 4px 12px;
|
||||||
@ -539,21 +543,17 @@ StScrollBar {
|
|||||||
.app-well-app,
|
.app-well-app,
|
||||||
.show-apps,
|
.show-apps,
|
||||||
.grid-search-result {
|
.grid-search-result {
|
||||||
& > .overview-icon {
|
& .overview-icon {
|
||||||
@extend %icon_tile;
|
@extend %icon_tile;
|
||||||
}
|
}
|
||||||
&.running > .overview-icon {
|
&:active .overview-icon,
|
||||||
text-shadow: black 0px 2px 2px;
|
&:checked .overview-icon {
|
||||||
}
|
|
||||||
&:active > .overview-icon,
|
|
||||||
&:checked > .overview-icon {
|
|
||||||
background-color: transparentize(darken($osd_bg_color,10%),.1); //FIXME not working?
|
background-color: transparentize(darken($osd_bg_color,10%),.1); //FIXME not working?
|
||||||
box-shadow: inset 0 1px 2px $osd_borders_color;
|
box-shadow: inset 0 1px 2px $osd_borders_color;
|
||||||
}
|
}
|
||||||
&:hover > .overview-icon,
|
&:hover .overview-icon,
|
||||||
&.running:hover > .overview-icon,
|
&:focus .overview-icon,
|
||||||
&:focus > .overview-icon,
|
&:selected .overview-icon {
|
||||||
&:selected > .overview-icon {
|
|
||||||
background-color: transparentize($fg_color,.9);
|
background-color: transparentize($fg_color,.9);
|
||||||
transition-duration: 200ms;
|
transition-duration: 200ms;
|
||||||
border-image: none;
|
border-image: none;
|
||||||
@ -562,6 +562,12 @@ StScrollBar {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.app-well-app-running-dot { //running apps indicator
|
||||||
|
width: 10px; height: 3px;
|
||||||
|
background-color: $selected_bg_color;
|
||||||
|
margin-bottom: 2px; //FIXME will happen :)
|
||||||
|
}
|
||||||
|
|
||||||
%icon_tile {
|
%icon_tile {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
padding: 6px;
|
padding: 6px;
|
||||||
|
@ -1026,7 +1026,7 @@ StEntry {
|
|||||||
border-color: #1c1f1f;
|
border-color: #1c1f1f;
|
||||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
|
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
|
||||||
selection-background-color: #215d9c;
|
selection-background-color: #215d9c;
|
||||||
selected-color: white; }
|
selected-color: #ffffff; }
|
||||||
StEntry:focus {
|
StEntry:focus {
|
||||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
|
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
|
||||||
border-color: rgba(154, 154, 142, 0.5); }
|
border-color: rgba(154, 154, 142, 0.5); }
|
||||||
@ -1399,6 +1399,9 @@ StScrollBar {
|
|||||||
width: 24px;
|
width: 24px;
|
||||||
height: 24px; }
|
height: 24px; }
|
||||||
|
|
||||||
|
.dash-item-container > StWidget {
|
||||||
|
padding: 4px 8px; }
|
||||||
|
|
||||||
.dash-label {
|
.dash-label {
|
||||||
border-radius: 7px;
|
border-radius: 7px;
|
||||||
padding: 4px 12px;
|
padding: 4px 12px;
|
||||||
@ -1443,35 +1446,35 @@ StScrollBar {
|
|||||||
background-color: rgba(238, 238, 236, 0.1);
|
background-color: rgba(238, 238, 236, 0.1);
|
||||||
transition-duration: 200ms; }
|
transition-duration: 200ms; }
|
||||||
|
|
||||||
.app-well-app.running > .overview-icon,
|
.app-well-app:active .overview-icon, .app-well-app:checked .overview-icon,
|
||||||
.show-apps.running > .overview-icon,
|
.show-apps:active .overview-icon,
|
||||||
.grid-search-result.running > .overview-icon {
|
.show-apps:checked .overview-icon,
|
||||||
text-shadow: black 0px 2px 2px; }
|
.grid-search-result:active .overview-icon,
|
||||||
.app-well-app:active > .overview-icon, .app-well-app:checked > .overview-icon,
|
.grid-search-result:checked .overview-icon {
|
||||||
.show-apps:active > .overview-icon,
|
|
||||||
.show-apps:checked > .overview-icon,
|
|
||||||
.grid-search-result:active > .overview-icon,
|
|
||||||
.grid-search-result:checked > .overview-icon {
|
|
||||||
background-color: rgba(23, 25, 26, 0.9);
|
background-color: rgba(23, 25, 26, 0.9);
|
||||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.7); }
|
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.7); }
|
||||||
.app-well-app:hover > .overview-icon, .app-well-app.running:hover > .overview-icon, .app-well-app:focus > .overview-icon, .app-well-app:selected > .overview-icon,
|
.app-well-app:hover .overview-icon, .app-well-app:focus .overview-icon, .app-well-app:selected .overview-icon,
|
||||||
.show-apps:hover > .overview-icon,
|
.show-apps:hover .overview-icon,
|
||||||
.show-apps.running:hover > .overview-icon,
|
.show-apps:focus .overview-icon,
|
||||||
.show-apps:focus > .overview-icon,
|
.show-apps:selected .overview-icon,
|
||||||
.show-apps:selected > .overview-icon,
|
.grid-search-result:hover .overview-icon,
|
||||||
.grid-search-result:hover > .overview-icon,
|
.grid-search-result:focus .overview-icon,
|
||||||
.grid-search-result.running:hover > .overview-icon,
|
.grid-search-result:selected .overview-icon {
|
||||||
.grid-search-result:focus > .overview-icon,
|
|
||||||
.grid-search-result:selected > .overview-icon {
|
|
||||||
background-color: rgba(238, 238, 236, 0.1);
|
background-color: rgba(238, 238, 236, 0.1);
|
||||||
transition-duration: 200ms;
|
transition-duration: 200ms;
|
||||||
border-image: none;
|
border-image: none;
|
||||||
background-image: none; }
|
background-image: none; }
|
||||||
|
|
||||||
|
.app-well-app-running-dot {
|
||||||
|
width: 10px;
|
||||||
|
height: 3px;
|
||||||
|
background-color: #215d9c;
|
||||||
|
margin-bottom: 2px; }
|
||||||
|
|
||||||
.search-provider-icon,
|
.search-provider-icon,
|
||||||
.list-search-result, .app-well-app > .overview-icon,
|
.list-search-result, .app-well-app .overview-icon,
|
||||||
.show-apps > .overview-icon,
|
.show-apps .overview-icon,
|
||||||
.grid-search-result > .overview-icon {
|
.grid-search-result .overview-icon {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
padding: 6px;
|
padding: 6px;
|
||||||
border: 1px solid transparent;
|
border: 1px solid transparent;
|
||||||
|
@ -1547,6 +1547,19 @@ const AppIcon = new Lang.Class({
|
|||||||
can_focus: true,
|
can_focus: true,
|
||||||
x_fill: true,
|
x_fill: true,
|
||||||
y_fill: true });
|
y_fill: true });
|
||||||
|
|
||||||
|
this._dot = new St.Widget({ style_class: 'app-well-app-running-dot',
|
||||||
|
layout_manager: new Clutter.BinLayout(),
|
||||||
|
x_expand: true, y_expand: true,
|
||||||
|
x_align: Clutter.ActorAlign.CENTER,
|
||||||
|
y_align: Clutter.ActorAlign.END });
|
||||||
|
|
||||||
|
this._iconContainer = new St.Widget({ layout_manager: new Clutter.BinLayout(),
|
||||||
|
x_expand: true, y_expand: true });
|
||||||
|
|
||||||
|
this.actor.set_child(this._iconContainer);
|
||||||
|
this._iconContainer.add_child(this._dot);
|
||||||
|
|
||||||
this.actor._delegate = this;
|
this.actor._delegate = this;
|
||||||
|
|
||||||
if (!iconParams)
|
if (!iconParams)
|
||||||
@ -1560,7 +1573,7 @@ const AppIcon = new Lang.Class({
|
|||||||
iconParams['createIcon'] = Lang.bind(this, this._createIcon);
|
iconParams['createIcon'] = Lang.bind(this, this._createIcon);
|
||||||
iconParams['setSizeManually'] = true;
|
iconParams['setSizeManually'] = true;
|
||||||
this.icon = new IconGrid.BaseIcon(app.get_name(), iconParams);
|
this.icon = new IconGrid.BaseIcon(app.get_name(), iconParams);
|
||||||
this.actor.set_child(this.icon.actor);
|
this._iconContainer.add_child(this.icon.actor);
|
||||||
|
|
||||||
this.actor.label_actor = this.icon.label;
|
this.actor.label_actor = this.icon.label;
|
||||||
|
|
||||||
@ -1620,9 +1633,9 @@ const AppIcon = new Lang.Class({
|
|||||||
|
|
||||||
_updateRunningStyle: function() {
|
_updateRunningStyle: function() {
|
||||||
if (this.app.state != Shell.AppState.STOPPED)
|
if (this.app.state != Shell.AppState.STOPPED)
|
||||||
this.actor.add_style_class_name('running');
|
this._dot.show();
|
||||||
else
|
else
|
||||||
this.actor.remove_style_class_name('running');
|
this._dot.hide();
|
||||||
},
|
},
|
||||||
|
|
||||||
_setPopupTimeout: function() {
|
_setPopupTimeout: function() {
|
||||||
|
Loading…
Reference in New Issue
Block a user