diff --git a/data/gtk/window.ui b/data/gtk/window.ui
index 4665cee..51db83d 100644
--- a/data/gtk/window.ui
+++ b/data/gtk/window.ui
@@ -97,7 +97,7 @@
+
diff --git a/data/resources/style.css b/data/resources/style.css
index 96412e3..4a339da 100644
--- a/data/resources/style.css
+++ b/data/resources/style.css
@@ -8,7 +8,9 @@ button.osd.circular {
background: rgba(0, 0, 0, 0.65);
}
-shadow, border, outline {
+shadow,
+border,
+outline {
background: none;
}
@@ -32,14 +34,14 @@ row.property label.subtitle {
.custom-drag-n-drop-highlight {
box-shadow: none;
}
+
.lp-dragging-area-highlight {
border-radius: 8px;
- background-color: alpha(@accent_color, 0.35);
- border: 2px @accent_color solid;
+ background-color: alpha(@blue_2, 0.35);
}
lpprintpreview {
background-color: rgb(240, 240, 240);
border-radius: 4px;
box-shadow: 0 0 14px 1px black;
-}
+}
\ No newline at end of file
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 82000d2..57f53c3 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -20,6 +20,7 @@ src/image_metadata/obj.rs
src/main.rs
src/util/gettext.rs
src/util/mod.rs
+src/widgets/drag_overlay.rs
src/widgets/image.rs
src/widgets/image_page.rs
src/widgets/image_view.rs
diff --git a/src/widgets/drag_overlay.rs b/src/widgets/drag_overlay.rs
new file mode 100644
index 0000000..cd622f8
--- /dev/null
+++ b/src/widgets/drag_overlay.rs
@@ -0,0 +1,121 @@
+// Copyright (c) 2022 Maximiliano Sandoval R
+// Copyright (c) 2023 FineFindus
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+use gtk::{glib, prelude::*};
+
+mod imp {
+ use std::cell::RefCell;
+
+ use adw::subclass::prelude::*;
+ use glib::{ParamSpec, Properties, Value};
+
+ use super::*;
+
+ #[derive(Debug, Default, Properties)]
+ #[properties(wrapper_type = super::LpDragOverlay)]
+ pub struct LpDragOverlay {
+ /// Usual content
+ #[property(set = Self::set_child)]
+ pub child: Option,
+ /// Widget overplayed when dragging over child
+ #[property(set = Self::set_overlayed)]
+ pub overlayed: Option,
+ pub overlay: gtk::Overlay,
+ pub revealer: gtk::Revealer,
+ #[property(set = Self::set_drop_target, get, explicit_notify)]
+ pub drop_target: RefCell