| Summary: | digikam ui problem selecting images | ||
|---|---|---|---|
| Product: | [Applications] digikam | Reporter: | olistrut |
| Component: | Albums-IconView | Assignee: | Digikam Developers <digikam-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | caulier.gilles |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | RedHat Enterprise Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
olistrut
2005-03-16 17:59:51 UTC
CVS commit by jahrens:
This is a workaround, so you can use the keyboard selection. But the whole selection process has to be reworked. So I let this bug open as a reminder.
CCBUG: 101630
M +1 -1 albumdb.cpp 1.17
M +38 -2 thumbview.cpp 1.28
--- kdeextragear-3/digikam/digikam/thumbview.cpp #1.27:1.28
@@ -713,4 +713,10 @@ void ThumbView::contentsMousePressEvent(
}
}
+// for (ThumbItem *it = item->next; it; it = it->next)
+// {
+// if (it->isSelected()) {
+// it->setSelected(false, false);
+// }
+// }
}
else if (fwdSelection) {
@@ -721,6 +727,14 @@ void ThumbView::contentsMousePressEvent(
}
}
+// for (ThumbItem *it = item->prev; it; it = it->prev)
+// {
+// if (it->isSelected()) {
+// it->setSelected(false, false);
+// }
+// }
}
else {
+ // No other item is selected, invert the selection
+ // of the current item
item->setSelected(!item->isSelected(), false);
}
@@ -1311,6 +1325,12 @@ void ThumbView::keyPressEvent(QKeyEvent
case Key_Right: {
ThumbItem *item = currItem ? currItem->next : d->firstItem;
+
if (item)
{
+ if(currItem && currItem->isSelected() && item->isSelected())
+ {
+ currItem->setSelected(false,false);
+ }
+
keySelectItem(item, e->state() & Qt::ShiftButton);
ensureItemVisible(item);
@@ -1322,6 +1342,12 @@ void ThumbView::keyPressEvent(QKeyEvent
case Key_Left: {
ThumbItem *item = currItem ? currItem->prev : d->firstItem;
+
if (item)
{
+ if(currItem && currItem->isSelected() && item->isSelected())
+ {
+ currItem->setSelected(false,false);
+ }
+
keySelectItem(item, e->state() & Qt::ShiftButton);
ensureItemVisible(item);
@@ -1347,4 +1373,9 @@ void ThumbView::keyPressEvent(QKeyEvent
if (item)
{
+ if(currItem && currItem->isSelected() && item->isSelected())
+ {
+ currItem->setSelected(false,false);
+ }
+
keySelectItem(item, e->state() & Qt::ShiftButton);
ensureItemVisible(item);
@@ -1371,4 +1402,9 @@ void ThumbView::keyPressEvent(QKeyEvent
if (item)
{
+ if(currItem && currItem->isSelected() && item->isSelected())
+ {
+ currItem->setSelected(false,false);
+ }
+
keySelectItem(item, e->state() & Qt::ShiftButton);
ensureItemVisible(item);
sensible keyboard handling implemented in experimental branch |