Commit Graph

183 Commits

Author SHA1 Message Date
Ralf 2fccd5c51b Tunnels redesign 2025-12-17 01:25:15 +03:00
Ralf 21128ee23f Small fix 2025-12-14 15:05:22 +03:00
Ralf ab21cd97e2 PR update 2025-12-14 15:04:49 +03:00
Ralf d2b22b0017 socks5 - add ipv6 handler 2025-12-14 01:13:39 +03:00
Ralf 2e4058239f Add copyToClipboart for creds and targets 2025-12-14 01:12:34 +03:00
bl4ck-m33rk4t f854c2f516 Update TerminalWorker.cpp 2025-12-12 11:28:24 +01:00
bl4ck-m33rk4t 51952121f3 Fix remote terminal input and sizing for Gopher sessions 2025-12-12 11:20:32 +01:00
Ralf 7976d19f54 DB refactoring... for resave old db use db_resaver.py 2025-12-11 23:51:55 +03:00
Ralf 445e455b9b Remote Terminal fix 2025-12-10 23:45:03 +03:00
Ralf bb744e27a5 PR update 2025-12-09 21:47:45 +03:00
Mikhail Shashin ee23267085 Add per-widget notification settings with dynamic registry
- Add WidgetRegistry for automatic widget registration via REGISTER_DOCK_WIDGET macro
- Implement per-widget notification enable/disable in Settings dialog
- Store widget notification preferences in JSON format in database
- Use C++ RTTI for class name detection (no Q_OBJECT required in widgets)
- Cache class name in AbstractDock::getClassName() for performance
- Sort widget checkboxes alphabetically with proper spacing in UI
- Lazy initialization of DialogSettings to avoid static init order issues
2025-12-08 05:55:28 +03:00
Mikhail Shashin a99c30226a Add tab blinking notification for background updates
- Tab blinks when content changes while inactive
- Notification clears when user scrolls to see new content
- Auto-detection for QTableWidget, QTableView, QTreeWidget, QTreeView, QTextEdit, QPlainTextEdit
- Support for manual enable/disable via setAutoNotifyEnabled()
- RAII guard (AutoNotifyGuard) for bulk data loading
2025-12-07 19:33:42 +03:00
Mikhail Shashin 351f6c1244 Fix tab bar UI
- Fix tab overlap with float/close buttons using corner widget
- Add scroll buttons with proper styling
- Implement smooth mouse wheel scrolling with animation
- Hide title bar buttons when tabs visible (avoid duplication)
- Set tabs to not shrink (full text visible)
2025-12-07 08:23:30 +03:00
Ralf 26ffa0441b socks 4 -> 5 fix 2025-12-06 22:28:07 +03:00
Ralf acbe8deb69 PR update 2025-12-06 22:26:28 +03:00
Brice | bri5ee 3c90eecbd2 Add files via upload 2025-11-29 19:34:40 -08:00
Brice | bri5ee b18f688821 Add files via upload 2025-11-29 19:34:15 -08:00
Brice | bri5ee a2b80ab459 Add files via upload 2025-11-29 19:33:24 -08:00
Brice | bri5ee 6a1abadfb9 Add files via upload 2025-11-29 19:32:44 -08:00
Brice | bri5ee 1c52caa14f Add files via upload 2025-11-29 19:32:06 -08:00
Ralf 201c252f59 pr update 2025-11-28 01:24:30 +03:00
Mikhail Shashin 3e60c9ce2c Add dynamic title bar styling based on theme
Introduced TitleBarStyle utility to set window title bar color scheme according to the selected theme (light or dark). Updated KDDockWidgets TitleBar to support QSS-based styling and improved QSS for all themes to style title bars and tabs. Applied title bar style changes in MainAdaptix and DialogSettings to ensure consistency when themes are changed.
2025-11-28 00:40:43 +03:00
Ralf fc32e6328c sync update 2025-11-26 00:17:49 +03:00
Ralf 7fa4c0ed22 add ui_height and ui_width 2025-11-26 00:13:20 +03:00
Ralf 6e93c9da6b fix upload/download/sync 2025-11-23 19:23:37 +03:00
Ralf b759915d53 PR upd 2025-10-26 02:29:13 +03:00
Ralf 23d4bc6c26 Merge branch 'dev-0.10' into feature/sync-optimization-backward-compat 2025-10-26 02:24:35 +03:00
Ralf 5ccf1d1264 features from pull/173 2025-10-26 01:12:26 +03:00
Ralf 22c3ce6f1b small fix 2025-10-26 01:10:18 +03:00
Ralf 3d08c08e7c Credentials Manager update 2025-10-24 22:47:48 +03:00
lsroot a6e5b41f46 fix: Critical fixes for batch sync optimization
Critical Bug Fixes:
- Fix version detection logic (string comparison bug)
- Fix JWT refresh token version loss
- Fix C++ private member access (add GetLogsConsoleTextEdit accessor)
- Fix missing header guard in LogsWidget.h

Performance Optimizations:
- Optimize concurrent lock handling (serialize outside lock)
- Reduce lock hold time from ~2s to ~100ms (95% improvement)

Backward Compatibility:
- Support v0.10 batch sync (current dev branch)
- Auto-fallback to legacy mode for v0.9 and earlier
- Version detection via JWT claims

Version Support Matrix:
- v0.9 and earlier: Legacy mode (individual packets)
- v0.10+: Batch mode (6x performance improvement)

Files Modified:
Server:
- ts_clients.go: Fix version parsing, support >= 0.10
- ts_sync.go: Pre-serialize packets outside lock
- jwt.go: Add version to refresh token
- tc_client.go: Pass version to token generation

Client:
- LogsWidget.h: Add public accessor, fix header guard
- ProcessSyncPacket.cpp: Use accessor instead of private member

Performance Impact:
- 3000 logs sync: 6s → 1s (83% faster)
- Lock contention: 95% reduction
- Concurrent throughput: 20x improvement
2025-10-24 10:09:51 +08:00
lsroot e01a080429 feat: Add backward compatibility for batch sync optimization
- Add version detection via JWT token claims
- Support both legacy (v0.10) and optimized (v0.11+) sync modes
- Default to legacy mode for old clients (supportsBatchSync=false)
- Enable batch sync for clients version >= 0.11.0
- Add version field to Client, Credentials, and JWT Claims
- Implement automatic fallback to individual packet transmission
- Update client login to send FRAMEWORK_VERSION

Server changes:
- ts_clients.go: Add version detection and supportsBatchSync flag
- ts_sync.go: Add legacy fallback for old clients
- utils.go: Add version field to Client struct
- jwt.go: Add version to JWT claims
- tc_client.go: Extract and propagate version from credentials
- connector.go: Update interface signature

Client changes:
- Requestor.cpp: Send version in login request

This ensures zero-downtime deployment with mixed client versions.
2025-10-24 09:02:10 +08:00
lsroot 7ba6c79394 feat(sync): Phase 2 - Deep optimization with DirectAccess and categorization
Implement deep performance optimizations for log synchronization.

Server-side changes:
- Add DirectAccess() method to safe.Slice for zero-copy iteration
- Replace all Iterator() calls with DirectAccess() (10-15% faster)
- Implement type-based packet categorization (getPacketCategory)
- Add TYPE_SYNC_CATEGORY_BATCH (0x15) for organized batching
- Add SyncPackerCategoryBatch structure
- Update performance monitoring with category statistics

Client-side changes:
- Add TYPE_SYNC_CATEGORY_BATCH support
- Add category batch validation
- Unified batch processing for both batch types

Performance improvements:
- Eliminate slice copy overhead in Iterator
- Remove goroutine and channel creation overhead
- Improve cache locality with categorized transmission
- Better debugging with per-category statistics

Optimized functions:
- TsPresyncAgents, TsPresyncPivots, TsPresyncChat
- TsPresyncCredentials, TsPresyncTargets, TsPresyncEvents

Expected sync time for 3000 logs: 1.5s -> 0.8s (87% total improvement)

Related: Phase 1 batch transmission optimization
2025-10-24 08:41:05 +08:00
Ralf bc90630888 Targets Manager updated 2025-10-23 23:33:49 +03:00
lsroot b037a729cd feat(sync): Phase 1 - Implement batch transmission optimization
Optimize client-server log synchronization performance with batch processing.

Server-side changes:
- Add TYPE_SYNC_BATCH (0x14) packet type
- Implement batch transmission in TsSyncStored() (BATCH_SIZE=100)
- Add SyncPackerBatch structure for batch packets
- Add performance monitoring with timing logs

Client-side changes:
- Add TYPE_SYNC_BATCH packet type definition
- Implement batch packet validation in isValidSyncPacket()
- Add batch processing logic in processSyncPacket()
- Optimize UI updates with setUpdatesEnabled() for batch operations
- Add sync performance tracking and display

Performance improvements:
- Reduce WebSocket calls from N to N/100 (99% reduction)
- Reduce UI update operations by 99%
- Expected sync time for 3000 logs: 6s -> 1.5s (75% improvement)

Related issue: Slow sync performance with 3000+ logs
2025-10-24 01:51:57 +08:00
Ralf 1156bebba2 Sessions Table update 2025-10-22 23:48:38 +03:00
Ralf 12efbdd369 Tasks Manager update 2025-10-21 22:19:35 +03:00
Ralf 09fb71faf4 to 0.10 init 2025-10-18 14:25:39 +03:00
Ralf 0031a7b0a2 update makefiles 2025-09-26 18:50:31 +03:00
Ralf 5518c442f4 Client update 2025-09-26 00:35:58 +03:00
Ralf f566518d64 PR update 2025-09-25 22:04:10 +03:00
Ralf 437a71ca4e Add TS API 2025-09-25 19:47:20 +03:00
Ralf dedca899ef Client Update to Docks 2025-09-24 21:48:24 +03:00
Ralf 7fc83101f4 Client upd 2025-09-22 15:13:14 +03:00
Ralf c2e60cd3de Terminal tasks saver 2025-09-08 10:55:29 +03:00
Ralf bd2e566cf3 PR update 2025-09-07 13:46:48 +03:00
Exil 6b7ac8f799 Merge branch 'dev-v0.9' into add_chat 2025-09-05 16:17:56 +02:00
SETTAI Yassine f99295422f Fix typo 2025-09-05 16:10:56 +02:00
SETTAI Yassine ee9d08accb Add chat support 2025-09-05 16:10:41 +02:00
Ralf 3d97f03403 Client targets update 2025-09-05 12:36:29 +03:00