Commit graph

91 commits

Author SHA1 Message Date
Friedrich W. H. Kossebau
ed2d352c42 Add explicit moc includes to sources for moc-covered headers
* speeds up incremental builds as changes to a header will not always
  need the full mocs_compilation.cpp for all the target's headers rebuild,
  while having a moc file sourced into a source file only adds minor
  extra costs, due to small own code and the used headers usually
  already covered by the source file, being for the same class/struct
* seems to not slow down clean builds, due to empty mocs_compilation.cpp
  resulting in those quickly processed, while the minor extra cost of the
  sourced moc files does not outweigh that in summary.
  Measured times actually improved by some percent points.
  (ideally CMake would just skip empty mocs_compilation.cpp & its object
  file one day)
* enables compiler to see all methods of a class in same compilation unit
  to do some sanity checks
* potentially more inlining in general, due to more in the compilation unit
* allows to keep using more forward declarations in the header, as with the
  moc code being sourced into the cpp file there definitions can be ensured
  and often are already for the needs of the normal class methods
2023-07-05 07:59:18 +00:00
Serg Podtynnyi
38c34eeca3 Add clang-format and format code as in Frameworks 2023-02-05 12:45:38 +07:00
Laurent Montel
e19aa49a08 Remove unused includes 2022-09-26 08:17:13 +02:00
Shubham
6a5ad6b0ed Add tooltip to free space info widget showing full disk capacity
BUG: 452867
FIXED-IN: 22.08
2022-05-18 18:42:51 +00:00
Alexander Lohnau
0fc218fd26 Drop KNS3 prefix for KMoreTools includes
In KF6 KMoreTools should become it's own library and thus the KNS3 prefix should get removed.
Considering that the classes are not in any namespace, having a namespaced include is not needed and only causes noise.
2022-05-13 19:17:06 +00:00
Kai Uwe Broulik
ec8f757f9c [Status Bar] Don't mess with status bar visibility in extensions
"Extensions" is additions to the status bar like free space bar
and zoom slider which should hide while loading.

The status bar itself should only show/hide based on the global setting.

BUG: 443132
2021-11-29 11:34:22 +01:00
Michael Lang
ba8158e2fa Add option to hide entire status bar 2021-04-07 09:05:51 +00:00
Kai Uwe Broulik
b351afb9e1 [Status Bar] Hide zoomLabel also in menu handler 2021-02-14 23:07:46 +00:00
Nicolas Fella
f65b0899c3 Build with QT_NO_KEYWORDS 2021-02-09 20:39:50 +00:00
Nate Graham
be73a01f48 Make zoom slider and free space bar a little smaller by default
This makes more room for the new explanatory label for the zoom slider.
The zoom slider in particular was huge, and probably would have stood to
be reduced in width anyway even if we didn't add an explanaory label.
2021-01-23 23:15:56 +00:00
Nate Graham
0ba739c47e Add explanatory label to status bar's icon size slider
Right now the slider has no label. Let's add one so it's clear what it
does.

BUG: 429255
FIXED-IN: 21.04
2021-01-23 23:15:56 +00:00
Alexander Lohnau
97415729c3 Compile with QT_NO_KEYWORDS 2020-10-23 18:23:06 +00:00
Elvis Angelaccio
954e8c4790 Output of licensedigger + manual cleanup afterwards.
Unfortunately licensedigger does not strip the trailing * characters.
While at it, use a common style for all source files.
2020-08-25 17:07:38 +00:00
Nazar Kalinowski
771b9c8fc2 Fix 'show space' setting not being re-applied
BUG: 425542
2020-08-23 23:52:13 +02:00
Méven Car
bf4388c755 Status bar: Hide the space free bar when size is unknown
Summary:
BUG: 420027
BUG: 422226
FIXED-IN: 20.08

Test Plan: {F8312398}

Reviewers: #dolphin, ngraham, broulik, #vdg, elvisangelaccio

Reviewed By: #dolphin, ngraham, #vdg, elvisangelaccio

Subscribers: elvisangelaccio, kfm-devel

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D29213
2020-06-08 07:49:45 +02:00
Ahmad Samir
664f97ff0d [DolphinStatusBar] Fix free space info height with bigger fonts
When the font height is more than the zoom slider height, use the former
to set the fixed height of the free space widget on the status bar.
Otherwise the text is cut-off.

This works with Breeze, Oxygen and Fusion styles.
2020-05-31 21:30:22 +00:00
Elvis Angelaccio
16a3aea6a6 Remove unnecessary semicolons after Q_UNUSED
GIT_SILENT
2019-11-09 22:09:16 +01:00
Méven Car
31bc909c3b [Status Bar] Remove file status Timer, add text update delay
Summary:
Currently when hovering over a file we have its name, mimetype type and size display in the status bar for 1 second, after which the status of the folder is displayed.

This patch removes this timer making the status bar behavior more predictable and user friendly.

Instead there is a 50ms delay between when the status bar gets new text to display (for instance mouse hovering or keyboard navigation) and when the status bar displayed text is updated. This is to avoid flickering.

FIXED-IN: 19.12
BUG: 399267

Reviewers: #dolphin, elvisangelaccio, ngraham

Reviewed By: #dolphin, elvisangelaccio, ngraham

Subscribers: kfm-devel

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D25218
2019-11-09 22:00:35 +01:00
Felix Ernst
bd788a3ff4 Add "What's This?" to nearly everything in the main window
Summary:
This commit adds "What's This?" help to nearly everything in the
Dolphin main window (panels, views, buttons, ...). It adds the "?"
to the title bar so this help can easily be called.

For links in those help texts to work the WhatsThisClickedEvents are
handled in the main window class. This doesn't work for menus because
events from them aren't forwarded to the main window for some
reason so EventFilters are installed for the Control button menus.

Modifying the "Help" menu of KXmlGui is deprecated so no EventFilter
can be installed in the menubar. Therefore help texts without links
are provided for the menubar.

Test Plan:
Check if the event handling might make any problems.
Check for any big mistakes in the help messages.

Reviewers: #dolphin, elvisangelaccio

Subscribers: broulik, elvisangelaccio, yurchor, kfm-devel

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D20471
2019-06-23 21:19:49 +02:00
Elvis Angelaccio
f8196b8cf3 Drop unused includes
GIT_SILENT
2019-01-15 18:50:33 +01:00
Yuri Chornoivan
fd1a078cc4 Fix minor typos 2018-10-25 21:23:44 +03:00
Kai Uwe Broulik
c69ecab9b7 [MountPointObserverCache] Update mounts less frequently
Even on fastest disks, filling up the disk in 10 seconds is unlikely.
Moreover, Plasma's "low disk" warning only polls every minute as well and Dolphin doesn't warn you about the fact that it's full.
Reduces needless wake ups of disks and network.

CCBUG: 398612

Differential Revision: https://phabricator.kde.org/D15507
2018-10-09 13:37:10 +02:00
Kai Uwe Broulik
391006130e Update disk space info on refresh
When explicitly refreshing the view (e.g. F5) also refresh disk space info.
This would also allow us to raise the refresh interval somewhat.

CCBUG: 398612

Differential Revision: https://phabricator.kde.org/D15508
2018-09-19 10:20:14 +02:00
Elvis Angelaccio
c1a594a886 Drop obsolete version checks
We already depend on KF5 >= 5.43
2018-06-03 11:32:19 +02:00
Roman Inflianskas
48b58f830a Remove unused #include
Summary: I used CLion inspection to hunt all unused #include

Reviewers: #dolphin, elvisangelaccio, markg

Reviewed By: #dolphin, elvisangelaccio, markg

Subscribers: bcooksley, markg, elvisangelaccio, #dolphin

Differential Revision: https://phabricator.kde.org/D10985
2018-03-04 21:00:47 +03:00
Roman Inflianskas
848abc5922 Remove unused #include
Summary: I used CLion inspection to hunt all unused #include

Reviewers: #dolphin, elvisangelaccio, markg

Reviewed By: #dolphin, elvisangelaccio, markg

Subscribers: markg, elvisangelaccio, #dolphin

Differential Revision: https://phabricator.kde.org/D10985
2018-03-03 17:08:01 +03:00
Elvis Angelaccio
ecbab34510 Fix all krazy #include warnings
- "include own header first line"
- "put config.h in angle brackets line"
- "do not include QtModule/QtClass line"

`QElapsedTimer` was implicitly included by
kfileitemmodelsortalgorithm.h, now we need to explicitly include it in
kfileitemmodel.cpp.

We also need to explicitly link to `Qt5::Concurrent`, otherwise we
cannot `#include <QtConcurrentRun>`.
2018-02-04 11:38:50 +01:00
Elvis Angelaccio
bf1081a824 Fix all 'explicit constructor' krazy warnings 2018-02-03 22:21:30 +01:00
Ahmad Samir
11e2b186af Use kSqueezedTextLabel for the label text on the statusbar
Summary:
Following up from D8927; use kSqueezedTextLabel for the label text on the statusbar:
- This simplifies the code in updateLabelText()
- Remove the eventFilter as it's not needed any more since kSqueezedTextLabel has a resizeEvent function
- Specify a stretch factor, 1, for m_label, m_zoomSlider and m_spaceInfo, this prevents the changing of the width of m_label when the label text is updated from changing the widths of the zoomSlider and the spaceInfo widgets as that is a bit too jumpy.

(Thanks to the code of konversation statusbar for the hint about using the stretch factor in addWidget()).

Reviewers: elvisangelaccio

Subscribers: elvisangelaccio, #dolphin

Differential Revision: https://phabricator.kde.org/D8991
2017-11-25 18:29:23 +01:00
Ahmad Samir
a993485516 Elide the label text on the statusbar in the middle
Summary:
BUG: 387189

Currently the label text on the statusbar is elided in on the right, but that means that when the text gets elided the size of the file isn't shown.

The label text on the statusbar shows the file name, the mime type and the size; the name is already shown in the main window and the mimetype can usually be guessed from the icon or from the extension, so it's usually the size that the user wants to see on the statusbar.

Reviewers: #dolphin, ngraham, elvisangelaccio

Reviewed By: #dolphin, ngraham, elvisangelaccio

Subscribers: elvisangelaccio, ngraham, anthonyfieroni

Differential Revision: https://phabricator.kde.org/D8927
2017-11-21 18:19:36 -07:00
Kevin Funk
a6db5029ac Modernize: Use nullptr everywhere 2017-11-21 10:53:12 +01:00
Kevin Funk
464b13f382 Modernize: Use override where possible
Also use override instead of Q_DECL_OVERRIDE
2017-11-20 23:25:48 +01:00
Diego Gangl
f047b566cf Add more whitespace to the status bar
Summary:
This patch gives the status bar a little more vertical whitespace, prevents the status bar from "jumping up and down" when showing a progress bar, and adds a bit of padding on the sides so the labels are more clearly separated when using dual panes.

Reviewers: #dolphin, #vdg, ngraham, elvisangelaccio

Differential Revision: https://phabricator.kde.org/D8540
2017-11-07 17:51:35 +01:00
Elvis Angelaccio
69c3eba0ad Fix knewstuff popup menu position on wayland
On Wayland we need to pass a parent to popup menus.
See https://community.kde.org/Guidelines_and_HOWTOs/Wayland_Porting_Notes#Popup_Menus

So we use the new setParentWidget() method from KNewStuff (introduced in
Frameworks 5.37).
2017-07-13 17:30:36 +02:00
Elvis Angelaccio
e8eb6a7f2c Show pointing hand cursor when hovering spaceinfo bar
Summary:
This improves the discoverability of the diskspace menu, a feature
otherwise almost impossible to find.

Reviewers: gregormi, emmanuelp

Differential Revision: https://phabricator.kde.org/D4873
2017-03-10 18:56:58 +01:00
David Faure
e615bfaed4 add_definitions(-DQT_NO_URL_CAST_FROM_STRING) + fix compilation
This fixes some URLs built from local paths without scheme.
2016-06-25 16:40:18 +02:00
Artur Puzio
5593c252e8 [CLAZY] Fixed all level 1 and level 2 warnings with small exceptions
REVIEW: 126771
2016-03-16 22:17:37 +01:00
Gregor Mi
ece6650ecd Remove SpaceInfoToolsMenu and use KMoreToolsMenuFactory instead
Reduces the amount of needed code.
NEW: by using KMoreTools the menu is now user-configurable and
will automatically extended when KMoreToolsPresets gets new tools.
REVIEW: 122911
2015-05-03 20:42:23 +02:00
Chusslove Illich (Часлав Илић)
ad562d09c2 i18n: All visible text must be wrapped. 2015-03-07 12:01:42 +01:00
Elias Probst
4a86644b95 Update desktop filename for filelight. 2015-02-11 11:48:23 +01:00
Montel Laurent
f67bdd0fb7 kdelibs4support-- 2015-02-06 13:21:27 +01:00
Gregor Mi
088b516057 Add disk usage statistics menu to SpaceInfo widget in the status bar:
the menu has the following entries:

1. Filelight location
2. Filelight device
3. Filelight
4. KDiskFree

KService is used to find the applications and display proper
translations.
KRun is used to run the applications.

REVIEW: 121478
CHANGELOG: Add a menu on left-click on the SpaceInfo widget in the status bar to show Disk Usage statistics.
2015-01-12 16:18:50 +01:00
Lukáš Tinkl
037d5db85b Q_DECL_OVERRIDE 2014-11-03 23:52:18 +01:00
Lukáš Tinkl
1b4572dac9 port Dolphin from KUrl to QUrl
REVIEW: 120688
2014-10-21 21:19:14 +02:00
Montel Laurent
0a6257bce3 Fix includes 2014-10-18 15:00:17 +02:00
Montel Laurent
31a0c4fbd5 Fix includes 2014-10-18 14:42:41 +02:00
Frank Reininghaus
01e4f60a09 Merge remote-tracking branch 'origin/master' into frameworks
Conflicts:
	dolphin/src/main.cpp
	kdepasswd/kcm/kcm_useraccount.desktop
	plasma/applets/folderview/folderview.cpp
2014-10-16 20:36:49 +02:00
Emmanuel Pescosta
a58f159854 Made the free space indicator and zoom slider a little bit larger. (was reduced by an older commit)
BUG: 339768
FIXED-IN: 4.14.3
2014-10-13 11:53:06 +02:00
Montel Laurent
6f6b1bbb69 Clean includes + port to QMenu 2014-10-10 23:36:36 +02:00
Mathias Tillman
d380d27f47 Make the statusbar space info use the new KIO::fileSystemFreeSpace job.
REVIEW: 120137
BUG: 245226
2014-09-14 18:53:05 +02:00