mirror of
https://github.com/kossLAN/dots.git
synced 2025-11-04 14:39:51 -05:00
remove syncthing folder bar/popops: fix menu window anims and positioning bar/popops: change anims a little and add dropshadow Update README.md widgets/coloredicon: move to colorization, looks worse but..., yea bar/popops: make popup window dissapear on menu close README: add todo list, and brief desc Update README.md Update README.md Update README.md bar/systray: issue recreate on interact bar/systray: hide popup on interact bar/systray: add arrow for entries with children bar/battery: start of battery widget wallpaper/matugen: add foot template extra sizing conditions for sys tray bar/systray: add some more margin to text update settings schema bar/workspaces: filter by monitor, switch to scriptmodel settings: fix settings lol bar/systray: fix right item feat: screenshot tool clipboard one day... feat: init lockscreen mpris: add ipc handler for multimedia keys mpris stuff save progress put shell in subdir, and add nix package move readme back woops bar/volume: make tool bar smaller greeter: init greeter greeter: fixed resource links readme: update checklist progress maybe, maybe not fix: fixed screenshot tool not working fix: bar layout issues progress save progress update track styled popup still broken but getting there still broken but getting there fix: gitignore qmlls.ini fix: remove qmlls.ini progress save new popup system new popup system new popup system more work on popups fix: mask issues on popups update readme
54 lines
1.6 KiB
QML
54 lines
1.6 KiB
QML
import QtQuick
|
|
import ".."
|
|
|
|
Canvas {
|
|
id: root
|
|
|
|
property color overlayColor: "#80000000"
|
|
property color outlineColor: ShellSettings.colors["primary"]
|
|
property rect selectionRect
|
|
property point startPosition
|
|
signal areaSelected(rect selection)
|
|
|
|
onPaint: {
|
|
var ctx = getContext("2d");
|
|
ctx.clearRect(0, 0, width, height);
|
|
|
|
// grey overlay
|
|
ctx.fillStyle = overlayColor;
|
|
ctx.fillRect(0, 0, width, height);
|
|
|
|
// cut out the selection rectangle
|
|
ctx.globalCompositeOperation = "destination-out";
|
|
ctx.fillRect(selectionRect.x, selectionRect.y, selectionRect.width, selectionRect.height);
|
|
ctx.globalCompositeOperation = "source-over";
|
|
ctx.strokeStyle = outlineColor;
|
|
ctx.lineWidth = 2;
|
|
ctx.strokeRect(selectionRect.x, selectionRect.y, selectionRect.width, selectionRect.height);
|
|
}
|
|
|
|
MouseArea {
|
|
anchors.fill: parent
|
|
|
|
onPressed: mouse => {
|
|
root.startPosition = Qt.point(mouse.x, mouse.y);
|
|
}
|
|
|
|
onPositionChanged: mouse => {
|
|
if (pressed) {
|
|
var x = Math.min(root.startPosition.x, mouse.x);
|
|
var y = Math.min(root.startPosition.y, mouse.y);
|
|
var width = Math.abs(mouse.x - root.startPosition.x);
|
|
var height = Math.abs(mouse.y - root.startPosition.y);
|
|
|
|
root.selectionRect = Qt.rect(x, y, width, height);
|
|
root.requestPaint();
|
|
}
|
|
}
|
|
|
|
onReleased: mouse => {
|
|
root.visible = false;
|
|
root.areaSelected(root.selectionRect);
|
|
}
|
|
}
|
|
}
|