Commit Graph

13841 Commits

Author SHA1 Message Date
Jonas Dreßler
84250bbf88 altTab: Don't return from _init() if there are no windows/apps
If a new SwitcherPopup is created and there are no windows or apps to
switch through found, instead of returning from _init(), still
initialize the SwitcherPopup and let the check in SwitcherPopup.show()
return false to terminate the popup.

In both cases, with or without the return statements,
WindowManager._startSwitcher() will call SwicherPopup.destroy(), which
will try to disconnect signal handlers, destroy actors etc. Now if the
constructor can't finish creating the popup, some of the functions
called from _onDestroy() will fail and throw errors.

One of those cases is when window-switcher is limited to the current
workspace, and a WindowCyclerPopup is initiated on an empty workspace.
Because this._highlight hasn't been created, _onDestroy() will fail when
trying to destroy the actor of this._highlight.

Also, the actor of this._switcherList will not get destroyed in case
show() returns because this._items is empty. For example, this will
happen when a new AppSwitcherPopup is initialized with at least 1
running app, but 0 windows on the active workspace.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/168
2020-01-17 14:34:34 +00:00
Jonas Dreßler
79ccf1a0b5 altTab: Rename List* classes to Switcher*
Calling those classes ThumbnailSwitcher and WindowSwitcher makes more
sense since we are using this naming scheme for all classes extending
SwitcherPopup.SwitcherList.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/168
2020-01-17 14:34:34 +00:00
Dušan Kazik
b3770fd923 Update Slovak translation 2020-01-17 13:55:15 +00:00
nana-4
f0e04e7892 theme: Don't apply the search entry style to the login entry
The password entry is not a search entry.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
889863f353 theme: Don't recolor buttons and entries in dialogs and notifications
We should have a consistent dialog style in the whole system.

See https://gitlab.gnome.org/GNOME/gnome-shell/issues/1343
2020-01-17 12:21:44 +00:00
nana-4
9726aba257 theme: Normalize entry focus style
This fixes the focus style of the regular entry to match with the GTK
one.

This will allow removing a number of overrides of entries for
normalization.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
nana-4
c4646c15e9 theme: Regain focus ring in %bubble_button
Instead of removing all button shadows forcibly with
`box-shadow: none !important`, remove only the drop shadows selectively
with button(). This allows %bubble_button to preserve the focus ring
while eliminating the drop shadows.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
5195f6f92e theme: Improve button styling
- Move the more generic %button style before %bubble_button to reduce
  ugly overrides.
- Remove sizing factors from _drawing.scss to reduce ugly !importants.
- Make the %bubble_button style more consistent.
- Add missing focus styling to %notification_bubble.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
nana-4
7ed39f7905 theme/hotplug: Remove some dead code
Those style classes were removed about 5 years ago and no longer exist.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
nana-4
ebf6e75b5e theme: Fix off-centered clickable area of dash items
https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
b0ca52ffdc theme: Don't apply inconsistent hover style to menu items in submenus
https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
fbfa22f964 theme: Add missing border-radius to the active workspace in the switcher
https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
260cce9d92 theme: Don't jump the today button on hover/focus
This seemed quite buggy as no other button jumps on hover/focus in the
theme.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2088
2020-01-17 12:21:44 +00:00
nana-4
dcf7ba3bc7 theme: Separate run dialog specific style from generic dialog style
Like other specific dialog styles already do.

Also move .modal-dialog-linked-button into .modal-dialog as well as
.modal-dialog-content-box.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
nana-4
2ae8606e5e theme: Remove unnecessary %bubble_panel extensions
Since these dialogs have .modal-dialog class, there is no need to extend
%bubble_panel.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
nana-4
9719b13cf8 theme: Remove invalid button styling
There is no ".message-list-clear-button .button" selector, but
".message-list-clear-button.button". To make it clear, this commit adds
.button to .message-list-clear-button.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/931
2020-01-17 12:21:44 +00:00
Jonas Dreßler
d27638e37e shellEntry: Show popup menu at cursor position when pressing menu key
When pressing the menu key to show the popupMenu inside a ShellEntry,
the menu is currently aligned with the end of the entered text, this
causes a bug in case the text is overflowing the width of the entry: The
menu will be shown outside of the entry field, because it's aligned with
the (invisible) end of the text.

Fix that by simply aligning the popup menu with the cursor of the entry,
which is a behavior that makes sense when pressing the menu-key anyway.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/934
2020-01-15 18:27:31 +01:00
Jonas Dreßler
e4cb1a8f4b dialog: Update the layout of dialogs according to the new design
According to the new dialog mockups, update the dialogs paddings and
spacings. Also change the font-weigth of the title to 800 and the
font-size to 18pt, this will make the headings of some dialogs ellipsize
because they contain too much text, we'll have to fix this in subsequent
commits.

See https://gitlab.gnome.org/GNOME/gnome-shell/issues/1343

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:18:30 +01:00
Jonas Dreßler
2fc84e0fe3 dialog: Remove MessageDialogContent.body property
According to the new dialog design, dialogs generally only have a title
and a description, so the `body` property is no longer needed.

At the places where it's still used, we replace it with the description
property or a plain label we add to MessageDialogContent ourselves.

See https://gitlab.gnome.org/GNOME/gnome-shell/issues/1343

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:17:25 +01:00
Jonas Dreßler
845c52797b dialog: Rename subtitle property to description
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:12:54 +01:00
Jonas Dreßler
48f1c4b9d7 dialog: Remove messageBox container from MessageDialogContent
`MessageDialogContent.messageBox` is not really needed and was only
needed to show icons, which is now no longer supported. The styling can
also be done using other CSS classes and this makes it a bit more
straightforward to add actors to the MessageDialogContent.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:05:34 +01:00
Jonas Dreßler
5d99bdbe5e dialog: Remove icons from dialogs
According to the new mockups, remove the icon from MessageDialogContent

See https://gitlab.gnome.org/GNOME/gnome-shell/issues/1343

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:05:34 +01:00
Jonas Dreßler
929c2c3921 js: Move dialog parts out of messageBox
Since MessageDialogContent.messageBox is going to be removed in a
subsequent commit, move the parts where it's used out of messageBox and
into the contentLayout instead. This will introduce wrong spacings in
some dialogs, which we're going to fix when implementing the redesigned
individual dialogs.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:05:04 +01:00
Jonas Dreßler
914c6e48b1 dialog: Remove addContent function
Now that child metas are removed, there's no need for a custom
`addContent` function anymore. It was only used in one place anyway...

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:05:02 +01:00
Jonas Dreßler
259c44395f dialog: Switch to new indentation style
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:05:02 +01:00
Jonas Dreßler
5de713b262 css: Remove unused class run-dialog-button-box
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/886
2020-01-15 00:04:47 +01:00
Sucipto
882f6d9a72 Update Indonesian translation 2020-01-14 06:28:04 +00:00
Jonas Dreßler
aac01f1c9e status/network: Compare icon name to NULL instead of empty string
Since the last commit we set the gicon property of StIcon to NULL if an
empty string was given when setting the icon name, this means
`st_icon_get_icon_name()` will return NULL instead of an empty string.

When `getIndicatorIcon()` returns an empty string, the icon_name
property will now be set to NULL, so compare it to NULL here.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:47:19 +01:00
Jonas Dreßler
8b15519160 st/icon: Check icon name for empty string in setter function
Don't try to create a GIcon if the given icon name is empty, it will
lead to failure when loading the icon anyway, instead set the gicon to
NULL just as we do in the `set_gicon()` API when unsetting an icon.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
69a5e89096 st/icon: Use own methods for updating GIcon when setting icon names
Instead of reimplementing the functions to set the GIcon inside the
`set_*_icon_name` functions, just use the already defined methods for
that.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
e784afe9ac st/icon: Add API to set the fallback GIcon
Let's support the fallback icon a bit better and allow setting its GIcon
just as we do for the normal icon.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
8b8d3e28b2 st/icon: Update GtkDoc and annotations
Add missing documentation for some functions and make existing
documentation a bit more precise.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
9b673dc98b st/icon: Use existing method for getting gicon property
We have an existing method for this, let's use it instead of accessing
the private property here.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
c0fcf2d3a8 st/icon: Simplify property setting in set_gicon()
We can easily use `g_set_object()` to set the gicon property here.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Jonas Dreßler
3b46c3910c st/icon: Reorder header file
The order of the functions is currently quite messy, change the order of
the headers so it makes more sense and correct a wrong argument name
while at it.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/888
2020-01-13 14:44:08 +01:00
Daniel van Vugt
76961927d5 iconGrid.js: Animate icon spring using translation
Animating the icon spring using the `translation-x/y` properties instead
of the `x/y` properties avoids relayouts. There are still other non-icon
actors moving, but it's a big improvement.

Before: 595 relayouts per spring
After: 94 relayouts per spring

Reducing relayouts reduces reallocation, which reduces CPU-intensive
JavaScript execution.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/926
2020-01-13 16:23:37 +08:00
Carmen Bianca BAKKER
8064f4498e Update Esperanto translation 2020-01-11 10:30:04 +00:00
Alexander Mikhaylenko
b21c8c1290 workspacesView: Round workspace position
Prevent blurring when scrolling workspaces by aligning it to pixel grid,
and be consistent with app grid.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/930
2020-01-11 02:58:19 +05:00
Florian Müllner
4c6a0678ff screenshot: Fix stripping suffix from relative filename
String.prototype.substr() doesn't support a negative length value
(to subtract from the full length), so we end up with a filename
of '' when hitting that code paths (a relative filename with '.png'
suffix).

Fix this by switching to String.prototype.replace() instead.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/2091
2020-01-10 19:31:04 +01:00
Alexander Mikhaylenko
a8dcfa4656 windowManager: Use SwipeTracker
Replace existing four-finger gestures with SwipeTracker.

Since TouchpadWorkspaceSwitchAction and WorkspaceSwitchAction are now
unused, remove them.

Change programmatic workspace transition to use easeOutCubic interpolator
to match the gesture.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/756

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/826
2020-01-10 18:20:22 +01:00
Alexander Mikhaylenko
3e6bcbb486 appDisplay: Use SwipeTracker
Replace existing panning and touchpad scrolling by SwipeTracker.

Since SwipeTracker only references one actor, redirect scroll events
from page indicators to the main scroll view.

Change programmatic scroll animation to use easeOutCubic interpolator
to match the gesture.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/826
2020-01-10 18:20:22 +01:00
Alexander Mikhaylenko
a11f417cd0 workspacesView: Use SwipeTracker
Replace existing panning, touchpad scrolling and four-finger gesture by
SwipeTracker.

Change programmatic workspace animation to use easeOutCubic interpolator
to match the gesture.

Also change the dragging distance to always match the current monitor.

Fixes touchpad parts of https://gitlab.gnome.org/GNOME/gnome-shell/issues/1338

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/826
2020-01-10 18:20:22 +01:00
Alexander Mikhaylenko
a0c0e52229 swipeTracker: Introduce swipe tracker
Add a unified swipe tracker supporting dragging, four-finger swipe on both
touchscreen and touchpad, and touchpad scrolling.

The shared logic is largely same as the one in WebKit and libhandy.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/826
2020-01-10 18:20:22 +01:00
Florian Müllner
1f2116eaf8 screenShield: Stop messing with fixed-position-set
We no longer change the position at all, so this property doesn't
change and doesn't matter (anymore).

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/927
2020-01-10 16:26:31 +01:00
Florian Müllner
ceda02f2da screenShield: Fix showing shield without animation
Commit 24e631ffe2 changed the shield animation to use translation
instead of position.

However once the shield is raised, only an animation will lower it
again, which means the shield is missing when it's supposed to be
shown without animation (for example after an idle blank).

Fix this by resetting the translation-y property in that case.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/927
2020-01-10 16:26:31 +01:00
Andrej Shadura
0df3b47366 Update Slovak translation 2020-01-10 06:41:21 +00:00
Georges Basile Stavracas Neto
e169e5a30a shell/blur-effect: Set float brightness property
The brightness property of ShellBlurEffect is of float type, but
we are calling g_value_set_int() in the GObject::get_property()
handler, which throws warnings when trying to set the property
via g_object_set() and family.

Use g_value_set_float() instead.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/924
2020-01-09 22:03:55 +00:00
Florian Müllner
0d9dcd4e0a dateMenu: Adjust weather section spacing
Add some vertical spacing above and below the time labels to make
the section less crammed and let forecast icon and temperature
appear as a unit.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1143
2020-01-09 17:13:24 +01:00
Florian Müllner
6233d87e5b dateMenu: Move weather forecast time above icon
The time is de-emphasized like the header, grouping them together
helps to further accentuate the more important information.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1143
2020-01-09 17:13:24 +01:00
Florian Müllner
57751a2bef dateMenu: Tweak temperature labels
Together with the forecast icon, the temperature label is the most
important information in the weather section. To emphasize it more,
reduce its space requirement by removing the temperature unit, then
make the text bold.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1143
2020-01-09 17:13:19 +01:00