* Better item appearance (selected and hover) on systemsettings.
* Keyboard navigation improved in dolphin, and now is possible to navigate with keyboard in systemsettings (it was not possible before).
* No rubberband or multiple selection on systemsettings.
* Single or double click for item activation depends on the system state on systemsettings.
* On KCategoryDrawer now titles are drawn with more margin, as happens on DolphinCategoryDrawer. This gives more consistency to its look.
David Faure [Thu, 20 Dec 2007 20:44:58 +0000 (20:44 +0000)]
If we should open the URL right away, then let's do it right away.
We can tell konqueror afterwards by using the openUrlNotify() signal.
Note: this design bit is a bit strange; the controller has urlChanged() and requestUrlChange(),
but they are both channeled to DolphinView::urlChanged(), which means the recipient has
to figure out if the url change was already done or not, with "if (m_view->url() != url)".
Wouldn't it be simpler to just have both signals coming out of DolphinView?
(but some receivers like the view container don't seem to care which one was emitted... strange)
Now the konsole part is autodestructed when no tabs do exist. This makes the desired effect on dolphin when typing "exit" on the terminal, the dock will be hidden.
The order is important, also is important to accept the event on the move event. While on the dock tree view we were always getting a forbidden cursor with no
possibility to drop, now we can nicely drop :)
Revert the whole code regarding the discussed issue. Columns view still show the "forbidden" cursor, so nothing is fixed while reverted. The drop-indicator is shown on
files too... so something needs a fix here. Shouldn't be hard anyway
Keep consistent all views. Peter, if you decide to revert the change that David did on dolphiniconsview, do the revert here too. It really makes things very clear this
way. Anyway, detailed and columns view were buggy since it did never accept the dragging events, so you were never able to drop on the detailed or column view.
Give visual feedback when dragging with the cursor also. If you are not able to drop to an item (for example, a txt file) the cursor also changes to "forbidden" with the
categorized view.
The drag&drop helper did not make the difference between the different kind of views. The only view that draws the hover indicator with rounded corners is the icon view
mode. For that reason, the drop marker with the detailed view was drawn with rounded corners. For making it consistent, we draw the drop indicator as the hover effect
indicator, so the only one that draws rounded corners is the icon one.
Peter Penz [Sun, 16 Dec 2007 12:23:49 +0000 (12:23 +0000)]
Only browse through zip and tar files if they are local (otherwise a cryptic error message will occur). We really must make this behavior configurable in KDE 4.1 - I'd suggest that per default no browsing through zip and tar is done (with an option turning this on again)
When collapsing nodes that made the scrollbar bigger, it didnt became smaller. I've debugged on event() method to find out which event was the one called. It seems
QEvent::MetaCall is always called when we want and is not as impressive called as paintEvent(), so there we go. This will fix another problem that when a second expanded
cached node should make the horizontal scrollbar bigger it didn't till the tree view lost the focus or was resized. Everything fixed :)
Peter Penz [Sun, 16 Dec 2007 11:28:52 +0000 (11:28 +0000)]
fixes for the terminal panel:
* assure that the correct directory is entered when reopening the terminal
* let the terminal be focused also when reopening it
The latest fix still had the same problem when dragging went out of the viewport and entered again. Non droppable places (e.g. files) were still drawn with MouseOver
flag. This completely fixes the problem for all cases, the problem was the hovered cached index being updated at indexAt() method used for general purposes. Now it is
updated on the MouseMove method, and this gives consistence.
Fix the problem of the elements being rendered as hovered when a dragging was being done. Regarding your mail Peter, well some variables are bad-named, but their values
were correct :)
Peter Penz [Sat, 15 Dec 2007 17:11:13 +0000 (17:11 +0000)]
Fixed "Eike Hein"-details-view-issue:
1. Open a Dolphin window
2. Switch to Details view
3. Navigate to a folder with a dozen or so items
4. Size the window so that there is an empty space below
the items
5. Move the mouse pointer below the items
6. Click and hold the mouse button, and move the pointer
upward to select all items in the list using the rect.
While selecting in this manner, move the pointer so
high that it is above the list headers in the toolbar.
Then, while still holding the mouse button and being
outside the listview's rect, move the pointer left out
of the window. Now with the pointer outside of the
window, move the pointer down into the area below the
list items, so that the selection rectangle no longer
intersects with the items. Notice they're still all
selected.
Peter Penz [Sat, 15 Dec 2007 16:48:48 +0000 (16:48 +0000)]
Fixed issue that Ctrl+A inverted the selection instead doing a "Select All". It seems like a Qt issue, but I'm not 100 % sure - I'll try to make this reproducible with a Qt-only code after KDE 4.0 and submit a bug report to Trolltech...
This fixes the selection problem with the mouse _only_ for the categorized view. QListView has a bug that will toggle the last selection done, have to report it to TT.
Peter Penz [Sat, 15 Dec 2007 16:25:23 +0000 (16:25 +0000)]
fixed selection behavior in the details view (when the selection enters the viewport area, Qt's QTreeView does no selection at all, even if the items are still within the elastic band)
Very interesting bug in Qt in which I will debug. For now, and since we need to release with the source version of Qt (not patched) we need this workaround. The problem
is that when you select by dragging with a rect a set of items, say (1, 2, 3) and you Ctrl+drag another set (5,6) the (1,2,3) selection is lost. If you do the same, that
is: select (1, 2, 3), now Ctrl+click on (4), it is not lost. Now, ctrl+drag another set (5, 6), the selection lost is (4). So we can say that the selection lost is the
last one done.
This is only a workaround and should be removed when fixed on Qt (I am going to debug it on Qt, to see where the fail is).
This workaround does not only fix KCategorizedView, but QListView also.
Peter Penz [Fri, 14 Dec 2007 11:45:11 +0000 (11:45 +0000)]
Fixed issue that when clicking on Open Office files that Dolphin handles the files as zip-folder. I'm not sure whether there might be a nicer way doing this, but at least for KDE 4.0 this should be sufficient.
Fix the bug reported by Will. Now this code is also more polite. This was a TODO and now is fixed :) Still a bug somewhere on Qt...
when you ctrl+selection rect (with mouse), it is lost the last selection done if they were done by groups. Going to dive more into
this problem, but it lives on Qt.
Now that we changed some needed stuff at naturalCompare() method, we can set the replacementchar to put "Others" category on the last place. Now, we can actually call it
"Others" since it is placed the last one, and it is not necessary to call it "Uncategorized" because it was placed the first one before.
Peter Penz [Thu, 6 Dec 2007 21:06:45 +0000 (21:06 +0000)]
Fixed wrong usage of QStyleOptionViewItem: caching of the file item in the constructor is too early (thanks to Fredrik for the hint!). This fixes 2 issues:
* the selection color of the details view now uses the correct selection color
* changing the colors of KDE results in updating the colors of all Dolphin views
Peter Penz [Tue, 4 Dec 2007 20:56:42 +0000 (20:56 +0000)]
Allow turning off the feature that additional information might be shown in the icons view. Per default the setting is still on, but for people who prefer browsing with the details view and only temporary switch to the icons view (e. g. for having a larger preview), this feature gets a showstopper (discussed with Eike Hein).
Got the OK from the translator team for adding the new string.