Bug 91537 - usability: don't open tag's virtual folder if only 'collapse' arrow is clicked in tag tree
Summary: usability: don't open tag's virtual folder if only 'collapse' arrow is clicke...
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Tags-Engine (show other bugs)
Version: unspecified
Platform: Slackware Linux
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-17 20:35 UTC by Michał Kosmulski
Modified: 2022-01-22 14:02 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 7.6.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Kosmulski 2004-10-17 20:35:06 UTC
Version:           0.7 beta 1 (using KDE KDE 3.3.0)
Installed from:    Slackware Packages
Compiler:          gcc 3.3.4 
OS:                Linux

It is a bit unconvenient that it is impossible to just collapse a part of the tag's tree structure with the mouse without leaving the current album and entering the virtual album consisting of images marked with the tag that was clicked. A much more useful solution would be to open that virtual album if the name or the icon of the tag is clicked, but to only collapse (or expand, depending on current state) the part of the tree containing the tag's children if the small arrow / triangle left of the tag's icon is clicked. This way it would be possible to expand and collapse parts of the tag tree using the mouse without leaving the current album - it would make tagging images via drag and drop much easier.
Comment 1 Renchi Raju 2004-10-18 05:47:10 UTC
CVS commit by pahlibar: 


expanding/collapsing a tree item should not select the item
CCMAIL: 91537-done@bugs.kde.org


  M +11 -14    listview.cpp   1.11


--- kdeextragear-3/digikam/digikam/listview.cpp  #1.10:1.11
@@ -356,18 +356,4 @@ void ListView::contentsMousePressEvent(Q
         return;
 
-    setSelected(item);
-
-    if (e->button() == Qt::RightButton) {
-        emit signalRightButtonPressed(item);
-        return;
-    }
-}
-
-void ListView::contentsMouseReleaseEvent(QMouseEvent *e)
-{
-    ListItem* item = itemAt(e->pos());
-    if (!item)
-        return;
-
     if (item->isExpandable()) {
         QRect r(d->arrowBoxPos + item->m_offset,
@@ -379,4 +365,15 @@ void ListView::contentsMouseReleaseEvent
         }
     }
+    
+    setSelected(item);
+
+    if (e->button() == Qt::RightButton) {
+        emit signalRightButtonPressed(item);
+        return;
+    }
+}
+
+void ListView::contentsMouseReleaseEvent(QMouseEvent *)
+{
 }