404 Commits

Author SHA1 Message Date
Florian Müllner
1149c9d163 screenshot-window-sizer: Add explicit keybinding for backward cycling
The REVERSES flag was removed from Meta.KeyBindingFlags a while ago, as
gnome-control-center doesn't recognize it and the corresponding "magic"
shift handling. That is, nowadays reversible keybindings need to
provide an explicit reversed binding.

https://bugzilla.gnome.org/show_bug.cgi?id=784079
2017-07-05 17:07:23 +02:00
Christian Kellner
8a4b245812 places-menu: make the icon query asynchronous
Don't use the sync version of g_file_query_info because that might
potentially block (especially when the connection is slow or drops).

https://bugzilla.gnome.org/show_bug.cgi?id=781765
2017-04-27 14:19:26 +02:00
Florian Müllner
8453cf05a7 apps-menu: 'Touch' copied .desktop file after updating attributes
At least for now, nautilus' file monitor is blind to certain metadata
updates:
https://git.gnome.org/browse/nautilus/tree/src/nautilus-mime-actions.c#n1537

So in order for the changes in the previous patch to take effect
immediately, we need to force nautilus to reload the file info.
Achieve this by updating the access time of the newly copied file
after marking it as trusted.

https://bugzilla.gnome.org/show_bug.cgi?id=781596
2017-04-24 17:22:26 +02:00
Florian Müllner
5cb2657df7 apps-menu: Mark copied .desktop files as trusted
The application can already be launched from the menu without further
confirmation from the user, so there is no security gain in asking the
user to trust it when launched from the desktop - just set the appropriate
attributes of the newly copied file to mark it as trusted to nautilus.

https://bugzilla.gnome.org/show_bug.cgi?id=781596
2017-04-24 17:22:26 +02:00
Florian Müllner
234cf96d39 apps-menu: Remove excess parameters
Someone mixed up add() and add_actor() - this has been present since the
the big rewrite based on the AxeMenu extension in commit 9211fa4409, so
there's little point in coming up with a replacement for something that
never had any effect to begin with ...
2017-04-22 00:59:00 +02:00
Florian Müllner
09a60a27ba apps-menu: Only enable DND when there's a desktop
It's not very useful to allow dragging when there's no drop target,
so tie the functionality added in the previous commit to the presence
of a DESKTOP window.

https://bugzilla.gnome.org/show_bug.cgi?id=780371
2017-03-22 19:15:28 +01:00
Florian Müllner
243f700fa2 apps-menu: Allow creating desktop launchers via DND
Back in the olden days, it used to be possible to drag items from
the application menu to the desktop to create a launcher shortcut.
Reimplement that "classic" functionality in the apps menu extension.

https://bugzilla.gnome.org/show_bug.cgi?id=780371
2017-03-22 19:15:28 +01:00
Florian Müllner
021037bfcd apps-menu: Use Map to keep track of app items
The use of Array to keep track of inserted items is extremely
confusing, as no elements are ever added to the array. What
the code actually does is monkey-patching properties into an
empty object (that happens to be of type "Array"). While the
direct idiomatic replacement would be {}, update the code to
use a proper map instead.

https://bugzilla.gnome.org/show_bug.cgi?id=780371
2017-03-21 21:01:04 +01:00
Piotr Drąg
5ad82d05f9 Use Unicode in translatable strings
See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=772211
2017-02-16 02:20:03 +01:00
Felipe Borges
0f9ac6088f window-list: Hide workspace indicator when there's 1 workspace
There's no need to show the workspace indicator at the right
corner of the window-list if there's just a single workspace
AND the workspace creation is static. This saves us a bit more
of space.

https://bugzilla.gnome.org/show_bug.cgi?id=777504
2017-01-20 16:31:16 +01:00
Jakub Steiner
5e545d2991 theme: window-list minimized button
- when a window is minimized, it's unfocused, thus the button
in the window list should remain raised

https://bugzilla.gnome.org/show_bug.cgi?id=775282
2017-01-20 14:45:30 +01:00
Florian Müllner
0cdae2dae0 alternateTab: Don't take over 'switch-group' shortcuts
The original extension author really hated the app switcher with a
passion and took over all its uses, but there's really no reason
to replace the 'switch-group' shortcuts - not least because the
window switcher doesn't implement switching between windows of
a single application. So just keep the extension to making the
'switch-application' shortcuts behave as 'switch-windows' for the
"classic" session (and all users who rather install an extension
than change shortcut settings).

https://bugzilla.gnome.org/show_bug.cgi?id=771531
2016-11-14 12:30:12 +01:00
Florian Müllner
f99b42e732 window-list: Update icon on app changes
We currently assume that the application associated with a particular
window is fixed. While this holds true for almost every application,
there are some cases of multi-app-packages like LibreOffice where
windows may change the properties used for application matching at
runtime. Catch those cases to make sure we display the correct icon
when the window shifts applications.

https://bugzilla.gnome.org/show_bug.cgi?id=771731
2016-09-20 18:06:08 +02:00
Florian Müllner
db3e910b76 build: Say good-bye to intltool
intltool is unmaintained nowadays while upstream gettext gained
support for everything we used it for, so make the switch.

https://bugzilla.gnome.org/show_bug.cgi?id=769077
2016-08-19 22:17:07 +02:00
Florian Müllner
a35336d3c2 apps-menu: Handle .desktop files from non-standard directories
.desktop files in non-standard locations are not handled by GIO,
so looking up apps for entries for such locations (e.g. a
directory added via the AppsDir directive) will fail. We can
still handle this case in the menu by creating the app directly
from the entry's AppInfo.

https://bugzilla.gnome.org/show_bug.cgi?id=762206
2016-07-13 01:28:56 +02:00
Florian Müllner
e98e5d0d62 alternateTab: Adjust to gnome-shell changes
The code de-duplication in commit bf8d30603e57b broke the extension,
fix by duplicating the code here now :-(

(It's not really that bad though ...)

https://bugzilla.gnome.org/show_bug.cgi?id=767077
2016-06-10 17:43:27 +02:00
Jakub Steiner
59aa0f66f3 panel style changes
- based on a patch by rudolf@palaticky.com
- having three css locations with hardcoded colors,
  what could possibly go wrong in the future. :(

https://bugzilla.gnome.org/show_bug.cgi?id=756807
2016-05-10 15:51:49 +02:00
Will Thompson
5b1f7704a6 screenshot-window-sizer: hidpi support
The new logical dimensions are reported in the overlay, rather than the
pixel dimensions. That is: if scaleFactor is 2, a window might be
resized to 2400×1350 device pixels, which will be reported as 1200×675
in the overlay.

This is consistent with (for example) the DevTools in Chrome, which
reports the logical size of the viewport when you resize the window,
rather than the physical pixel size.

Tested with a freely-resizable window and with a constrained-geometry
window (GNOME Terminal), on a hidpi display.

https://bugzilla.gnome.org/show_bug.cgi?id=754607
2016-01-08 14:09:48 +00:00
Florian Müllner
79c76a87e2 apps-menu: Fix .desktop entries in subdirectories
GMenu's TreeEntries return an AppInfo that is created from the
.desktop filename, not from a desktop ID as expected by the
AppSystem. As a result, g_app_info_get_id() will simply return
the file's basename, which only matches the desktop ID if no
prefix-to-subdirectory mapping as described in the menu spec
is involved.
Fix this by basing the app lookup on the entry's desktop ID instead
of the AppInfo.

https://bugzilla.gnome.org/show_bug.cgi?id=759004
2015-12-16 22:50:41 +01:00
Florian Müllner
1958ce7794 apps-menu: Remove unused variable
https://bugzilla.gnome.org/show_bug.cgi?id=759004
2015-12-16 22:50:41 +01:00
Florian Müllner
2b9ea7519b native-window-placement: Make sure that the border does not overlap the title
https://bugzilla.gnome.org/show_bug.cgi?id=758976
2015-12-04 11:38:35 +01:00
Florian Müllner
1634af39dc native-window-placement: Cut down on copy-pasted code
https://bugzilla.gnome.org/show_bug.cgi?id=758976
2015-12-04 11:38:35 +01:00
Jakub Steiner
2935848954 window-list button colors
- not sure I win the override game

https://bugzilla.gnome.org/show_bug.cgi?id=756807
2015-10-26 15:34:52 +01:00
Florian Müllner
ca1da1b349 apps-menu: Fix up hover state after dropping grab
Category items grab the pointer to implement "triangle navigation", which
interferes with automatic hover tracking in other widgets. While this is
the correct behavior while we hold the grab (i.e. when crossing other
category items without switching), it can interfere with user expectation
when the grab is dropped, as the motion event that causes us to do so
doesn't necessarily occur before the "target"'s enter event - address this
by syncing up the hover state manually after dropping the grab.

https://bugzilla.gnome.org/show_bug.cgi?id=754959
2015-10-15 22:33:00 +02:00
Florian Müllner
c23580bd56 window-list: Set appropriate label-actors on buttons
Independent from the grouping mode, the window-list currently shows
up as a series of "push buttons" in screen readers, which is obviously
not useful, so point to the correct labels.

https://bugzilla.gnome.org/show_bug.cgi?id=755223
2015-09-21 22:39:38 +02:00
Florian Müllner
4cde6facc9 window-list: Use font-relative size in classic style
Commit 85b7049376 fixed this for the regular session, but forgot to also
update the classic style.
2015-09-04 19:56:23 +02:00
Florian Müllner
547163e895 places: Include DESKTOP when desktop icons are enabled
The user explicitly enabling desktop icons is a pretty good hint
that she intends to use the Desktop folder, so be consistent with
GTK+ and nautilus and include it when the corresponding setting
is true.

https://bugzilla.gnome.org/show_bug.cgi?id=754578
2015-09-04 17:50:06 +02:00
Florian Müllner
31506a342c workspace-indicator: Use consistent workspace numbering
The indicator numbers workspaces starting from 1, while newly added
workspace names in the preference dialog start counting at 0.
Change the latter to be consistent with the indicator.

https://bugzilla.gnome.org/show_bug.cgi?id=753105
2015-07-31 16:47:18 +02:00
Florian Müllner
d1bf592539 apps-menu: Handle non-UTF8 filename encodings more gracefully
Instead of failing completely if any .desktop file uses a filename
encoding other than UTF-8, just filter out the offending apps.

https://bugzilla.gnome.org/show_bug.cgi?id=651503
2015-07-31 16:22:32 +02:00
Florian Müllner
6062284ac4 window-list: Don't consider skip-taskbar windows for app sorting
It is odd to consider windows that are not shown in the window list
for app sorting, in particular when switching between grouped and
ungrouped mode, and when a long-lived window like the DESKTOP is
present.

https://bugzilla.gnome.org/show_bug.cgi?id=753055
2015-07-30 18:24:19 +02:00
Florian Müllner
85b7049376 window-list: Use font-relative sizes for width/height
Just like the top bar, the window list should scale according to
the font scaling factor, so convert the existing pixel sizes into
font-relative ones.

https://bugzilla.gnome.org/show_bug.cgi?id=703585
2015-06-19 23:49:01 +02:00
Florian Müllner
61ec98f504 window-list: Reposition on height changes
The window list position depends on both the monitor geometry and the
list height, however changes to the latter are currently ignored. For
the time being this doesn't matter due to the list's fixed height, but
we are about to scale the list with the text, so reposition the list
on height changes.

https://bugzilla.gnome.org/show_bug.cgi?id=703585
2015-06-19 23:49:01 +02:00
Florian Müllner
b97c111bde window-list: Expand window buttons vertically
The window-list's fixed height currently allows us to get away without
expanding buttons, however this won't be the case anymore once we start
adapting the list with the text scaling. So fix up the code to do what
was always the intention anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=703585
2015-06-19 23:49:01 +02:00
Florian Müllner
8b89840e2b apps-menu: Remove some obsolete code
The hot corner code has been modifying the existing hot corner rather
than replacing it with a custom one for quite a while now ...
2015-06-19 18:22:47 +02:00
Siteshwar Vashisht
dd620df620 apps-menu: Fix call to open_new_window()
The function never had a timestamp parameter, the parameter that was
added at some point is a workspace index. Ouch, this has gone unspotted
since the original AxeMenu extension was adapted for the apps-menu ...
2015-06-12 15:29:32 +02:00
Florian Müllner
0a5e5ee93c apps-menu: Take over shortcuts again on startup-complete
For a while now, gnome-shell has initialized extensions before
setting up its own keybinding handling. As a result, our taking
over of the panel-main-menu shortcut will be overwritten when
the extension is enabled at startup - work around this by setting
up the keybinding again on LayoutManager::startup-complete.

https://bugzilla.gnome.org/show_bug.cgi?id=746639
2015-03-24 14:20:49 +01:00
Florian Müllner
8f4cecc8e5 apps-menu: Move panel-main-menu handling into AppsMenuButton
This is really where it belongs, and will make an upcoming fix slightly
less ugly ...

https://bugzilla.gnome.org/show_bug.cgi?id=746639
2015-03-24 14:20:49 +01:00
Florian Müllner
487c089e86 apps-menu: Clean up signal code
Setting up signal handlers inside a class and rely on outside code
to disconnect them via global variables is utterly weird. Just
disconnect everything inside the class when the corresponding actor
is destroyed.

https://bugzilla.gnome.org/show_bug.cgi?id=746639
2015-03-24 14:20:49 +01:00
Rui Matos
903a3b25cb window-list: Fix WorkspaceIndicator's popup menu position
By default, PanelMenu.Button creates a popup menu with arrow side TOP
which is wrong in our case and can mess up BoxPointer's positioning.

We can work around that easily by creating the menu ourselves with the
correct arrow side.

https://bugzilla.gnome.org/show_bug.cgi?id=746365
2015-03-24 12:58:07 +01:00
Florian Müllner
11b151e5e0 native-window-placement: Update for mutter API changes 2015-03-17 19:46:05 +01:00
Florian Müllner
0b18b15fee screenshot-window-size: Update for mutter API changes 2015-03-17 19:46:05 +01:00
Florian Müllner
5e9f66f3d1 Use a proper arrows instead of UTF8
All proper shell menus were updated to do that a while ago, we
should do the same for consistency.

https://bugzilla.gnome.org/show_bug.cgi?id=745909
2015-03-10 19:56:41 +01:00
Florian Müllner
8bad8a3b63 window-list: Don't use 'panel-menu' class in bottom panel
Menus in the top bar have some margin at the bottom, to prevent
menus to extend all the way to the bottom edge as the expand; we
obviously don't want the same behavior in the window-list at the
bottom, so stop pretending to be a top bar menu.

https://bugzilla.gnome.org/show_bug.cgi?id=745952
2015-03-10 14:27:16 +01:00
Florian Müllner
715f445f61 apps-menu: Make it a bit narrower
General rule: if it can fit "GNU Image Manipulation Program", it is
wide enough ...

https://bugzilla.gnome.org/show_bug.cgi?id=745670
2015-03-06 17:28:01 +01:00
Florian Müllner
c9a6421f36 extensions: Remove systemMonitor extension
The systemMonitor extension extends the message tray with its UI, which
obviously broke when the bottom tray was removed. It has also been the
source for various performance/memory issues in the past and is part of
the semi-random collection that pre-dates the extension.gnome.org site
rather than the set of classic-mode/endorsed extensions, so just remove
it from the module.
Hopefully this will motivate someone who actually cares about it to pick
it up ...

https://bugzilla.gnome.org/show_bug.cgi?id=745195
2015-03-05 17:14:48 +01:00
Florian Müllner
a39aba4099 app-menu: Remove unused function
This was an override for a parent function that hasn't existed
since summer 2013 ...

https://bugzilla.gnome.org/show_bug.cgi?id=745670
2015-03-05 16:33:36 +01:00
Florian Müllner
c69ea808ae launch-new-instance: Fix warning
Commit 2667b9f3e5 updated the extension for a shell change that
renamed _onActivate() to _activate, but forgot to also rename the
declaration of the variable that stores the original function.
Fix this to stop a warning about assignment to an undefined variable.

https://bugzilla.gnome.org/show_bug.cgi?id=745470
2015-03-02 21:05:43 +01:00
Florian Müllner
7afdb541ce window-list: Adjust to trayBox removal
The point of that code is to keep the window-list underneath
modals' lightboxes if possible (i.e. unless the OSK is shown).
The trayBox was a natural pick back in the day, but the panel
will do just as well ...

https://bugzilla.gnome.org/show_bug.cgi?id=745304
2015-02-27 20:17:31 +01:00
Rui Matos
c0170ff945 window-list: Check if the window title is set
MetaWindow.title might be NULL, particularly for Wayland clients where
setting the title is a request separate from window creation. We
shouldn't try to set StLabel's text prop in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=745064
2015-02-24 21:09:02 +01:00
Florian Müllner
93a1fd0b60 window-list: Fix for "app-less" windows
While rare, it is possible to have a window not associated with any app
(not even a fake window-based one). We currently throw an error when
trying to set the icon for such a window, so handle this case and
use a fallback icon instead of the app icon.

https://bugzilla.gnome.org/show_bug.cgi?id=743401
2015-02-20 18:28:32 +01:00