| Age | Commit message (Collapse) | Author |
|
- Statusbar has three modes: Small, FullWidth and Disabled
- FullWidth is the original statusbar
- Small is the new default statusbar
- This statusbar overlays on top of the items instead of taking space
- It changes size according to content
- Disabled turns statusbar completely off
- Zoom slider and space information is only shown in full-width statusbar
- Space information is now always on
- If user navigates with keyboard, or scrolls to selection, the scrolling will take the statusbar into account
- This makes sure the statusbar does not cover any items
Related discussion: https://invent.kde.org/system/dolphin/-/issues/50
|
|
Before this commit pressing the free space button when Filelight
is not installed would show a singular action called "Install
Filelight to View Disk Usage Statistics…". Pressing this button
would open the store page for Filelight. This is an okay user
experience, but we can do better.
This commit makes it so pressing the free space button when
Filelight is not installed shows an attractive UI that makes clear
that freeing up disk space can be accomplished nicely by installing
Filelight. The "Install Filelight…" button on this UI is connected
to PackageKit directly, so we do not need to show a separate store
like Discover and instead trigger an installation right then and
there. For this, the recently introduced DolphinPackageInstaller
KJob is used.
Installation progress is reported through the status bar similar to
the progress reporting of slowly loading directories or searches.
Installation failure or success is ultimately shown within Dolphin
as a passive notification above the view.
On Microsoft Windows or when PackageKit is not available, the
install button will only open a store page for Filelight.
CCBUG: 477739
|
|
Merge setting title and progress percent into one method. This
makes sure that the method can be called from all over the place
and will still always show a consistent state instead of partially
showing the progress percent for one progress but the label for
a different one.
This is to enable various tasks reporting progress at the same time
in a way that doesn't lead to a confusing mess for users. Usually
multiple tasks do not show progress at the same time, but when it
happens this commit should make sure that the user experience is
at least bearable.
Allow not having a "Stop" button next to the progress report for
tasks that cannot be stopped.
|
|
When a bar is toggled visible this usually happens because the
user might want to use its functionality now. However, if bars
appear without animation or at a location the user is not
currently looking at, they might not notice that they have appeared
at all.
An animation makes it more likely that the user notices the change
and can then use the newly made visible component.
Another reason for animations for showing or hiding of components
is that it can be disorienting for users when panels or bars
suddenly appear or disappear without animation. There is no visible
movement then, so the user might not know what happened if they
didn't concentrate or blink at that moment. The newly appearing or
disappearing component might also displace other components which
can make it difficult to find what one was just looking at.
These bars animate now after this change:
- Search panel
- Filter bar
- Status bar
This is implemented by extracting the animation code from
SelectionMode::TopBar into a new abstract base class
AnimatedHeightWidget. This class is now also used in
SelectionMode::BottomBar and the animating code there was removed.
These bars are left in Dolphin that stay without animation:
- Menu bar (Would probably need to be implemented in KXmlGui)
- Tool bar (Would probably need to be implemented in KXmlGui)
- Tab bar (Needs a different appraoch because it already inherits
QTabBar and therefore can not inherit AnimatedHeightWidget)
|
|
The usage of a label to show this space information is problematic
because there are features/actions hidden behind clicking the
label. A button makes this clear. It also fixes the accessibility
of this control because previously this info would never be read
out by screen readers as it couldn't get keyboard focus.
A side-effect of this change is that the free disk space bar looks
more normal with non-Breeze styles. This had been a long-standing
issue.
|
|
Reduce margins in some places, make the dolphinstatusbar use a
QStatusBar style, and mark the kitemlistcontainer as no frame
|
|
|
|
|
|
Right now the slider has no label. Let's add one so it's clear what it
does.
BUG: 429255
FIXED-IN: 21.04
|
|
Unfortunately licensedigger does not strip the trailing * characters.
While at it, use a common style for all source files.
|
|
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
|
|
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
|
|
|
|
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
|
|
Also use override instead of Q_DECL_OVERRIDE
|
|
|
|
REVIEW: 120688
|
|
BUG: 305694
FIXED-IN: 4.12.3
REVIEW: 111197
|
|
This fixes the problem that the Dolphin window has a rather large
minimum size. A side effect of this was that splitting the view could
resize the window (because twice the minimum status bar width was
needed then).
BUG: 319373
REVIEW: 110966
FIXED-IN: 4.10.5
|
|
- Don't show information messages as KMessageWidget
- Assure that a set text in a statusbar will be shown for at least
one second
|
|
See http://agateau.com/2011/04/21/kde-ux-2011/ for more details.
This simplifies the statusbar in Dolphin a lot and allows to
do a proper eliding in case if status-messages are too long: In
this case a tooltip will show the whole status-message (thanks
to Wolfgang Mader for the initial patch!).
There is still missing some finetuning but the general approach
seems to work quite nice.
BUG: 249638
BUG: 245618
BUG: 146533
FIXED-IN: 4.9.0
|
|
BUG: 292698
FIXED-IN: 4.8.1
|
|
This is important if the zoom levels are different with previews
enabled/disabled.
|
|
Dolphin 2.0 will get a new view-engine with the
following improvements:
- Better performance
- Animated transitions
- No clipped filenames due to dynamic item-sizes
- Grouping support for all view-modes
- Non-rectangular selection areas
- Simplified code for better maintenance
More details will be provided in a blog-entry during
the next days.
Please note that the code is in a very
early alpha-stage and although the most tricky parts
have been implemented already very basic things like
drag and drop or selections have not been pushed yet.
Those things are rather trivial to implement but this
still will take some time.
|
|
svn path=/trunk/KDE/kdebase/apps/; revision=1216293
|
|
URL.
svn path=/trunk/KDE/kdebase/apps/; revision=1205329
|
|
BUG: 257421
FIXED-IN: 4.6.0
svn path=/trunk/KDE/kdebase/apps/; revision=1199112
|
|
a close button) to libkonq
so that it can be used in konqueror as well. Fix its sizeHint. Reviewed by Peter Penz.
svn path=/trunk/KDE/kdebase/apps/; revision=1169901
|
|
svn path=/trunk/KDE/kdebase/apps/; revision=1154073
|
|
- Provide proper size hints instead of hiding extensions on small widths
- Provide context menu, which allows to enable/disable the zoom level extension and the space info extension. Also copying the status bar text is possible (useful e. g. for error messages).
BUG: 188980
svn path=/trunk/KDE/kdebase/apps/; revision=1110498
|
|
some KDE3 relicts for the progress bar code have been removed too...
svn path=/trunk/KDE/kdebase/apps/; revision=1048225
|
|
default messages.
svn path=/trunk/KDE/kdebase/apps/; revision=1005712
|
|
svn path=/trunk/KDE/kdebase/apps/; revision=1005704
|