Martin Tranberg
a55365259c
refactor: remove redundant pulse_gauge calls and fix breadcrumb dedup (S1, S3)
...
- S1: drop pulse_gauge(True) from inside pagination while-loops in
_fetch_sites_bg, _fetch_tree_children_bg, and _fetch_list_contents_bg;
the gauge is already running from the call before the loop
- S3: remove the is_breadcrumb bypass on the early-return guard so
clicking the already-active breadcrumb segment no longer fires a
redundant network request
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-12 09:45:49 +02:00
Martin Tranberg
d529568798
fix: add navigation generation counter to prevent stale list overwrite (I1)
...
Introduces self._nav_gen, incremented on every _navigate_to_item_data
call. The counter is threaded through _fetch_list_contents_bg and
checked in _finalize_list_loading: if the user navigated away while a
fetch was in flight, the stale results are silently discarded instead of
overwriting the active folder view and re-sorting its items.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-12 09:44:39 +02:00
Martin Tranberg
b800f0308d
fix: resolve C2/I4 review findings
...
- C2: remove duplicate EVT_SIZE binding (on_status_bar_resize); merge
gauge repositioning into the single on_resize handler
- I4: position gauge correctly on first show by updating rect inside
pulse_gauge._do() when start=True, so no resize event is required
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-12 09:42:52 +02:00
Martin Tranberg
dadbb4d51a
fix: resolve C1/I2/I3/S2 review findings
...
- C1: initialize url=None before conditional in _fetch_tree_children_bg
to prevent UnboundLocalError on unexpected data types
- I2: translate System tab label via get_txt instead of hardcoded string
- I3: add status_loading_items to STRINGS (da+en) and use it in
_fetch_list_contents_bg instead of hardcoded Danish f-string
- S2: remove unreachable SITE branch from _append_list_items
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-12 09:41:25 +02:00
Martin Tranberg
be7a78deb8
feat: update credits section with company address and contact information
2026-04-07 13:34:56 +02:00
Martin Tranberg
4abf221887
refactor: convert settings dialog to tabbed interface and add about section
2026-04-07 13:32:19 +02:00
Martin Tranberg
205b1ac241
refactor: consolidate navigation logic and improve refresh reliability using path data context
2026-04-07 13:21:23 +02:00
Martin Tranberg
0159b91c69
feat: add status bar gauge and implement pagination for site and folder fetching
2026-04-07 12:30:33 +02:00
Martin Tranberg
2dfe1a41be
refactor: replace path-based breadcrumb rendering with data-driven navigation and synchronization
2026-04-01 10:38:41 +02:00
Martin Tranberg
f11f487ba3
feat: add get_txt helper method for localized string retrieval
2026-04-01 10:25:44 +02:00
Martin Tranberg
ad6055963d
feat: add configurable logging toggle to settings and implement dynamic log level management
2026-04-01 10:19:21 +02:00
Martin Tranberg
e14012d2a5
feat: add path tracking to items and improve checkout/checkin logic with discard support
2026-04-01 10:17:58 +02:00
Martin Tranberg
62725f9be6
feat: implement QuickXorHash integrity verification for downloads and add SharePoint site navigation support
2026-04-01 09:42:06 +02:00
Martin Tranberg
1a85f1d963
feat: update status bar to ready state after drive initialization
2026-04-01 09:30:09 +02:00
Martin Tranberg
62639632dc
refactor: improve context menu separator logic and update login button label for compact mode
2026-04-01 09:18:59 +02:00
Martin Tranberg
bff066d3fb
feat: migrate to wxPython, add setup wizard, and update documentation
2026-04-01 09:04:12 +02:00
Martin Tranberg
232ab85cc7
feat: add StartGuideDialog for initial Azure configuration and conditional MSAL initialization
2026-04-01 08:43:33 +02:00
Martin Tranberg
044559c913
Remove search
2026-03-31 19:56:12 +02:00
Martin Tranberg
2dd31d19c6
feat: implement global search functionality with indexing support and UI controls
2026-03-31 17:50:37 +02:00
Martin Tranberg
6b6387f5c8
feat: add native Windows icon support and context menu options to open items in browser
2026-03-31 17:21:10 +02:00
Martin Tranberg
6ab9901cc8
feat: implement responsive UI with compact mode for navigation buttons on window resize
2026-03-31 17:04:43 +02:00
Martin Tranberg
c5f18b520a
feat: implement natural sorting and column-based list view sorting with visual indicators
2026-03-31 16:56:10 +02:00
Martin Tranberg
784ca755d5
feat: add license key configuration to settings and update UI with system icons and button bitmaps
2026-03-31 16:48:36 +02:00
Martin Tranberg
fa6840de75
refactor: update path display to derive breadcrumbs from current_path instead of tree selection
2026-03-31 16:37:51 +02:00
Martin Tranberg
8e53f69e68
feat: implement favorites sidebar with add, remove, and navigation functionality
2026-03-31 16:37:28 +02:00
Martin Tranberg
8f80611d32
feat: implement settings dialog for configuration of authentication, paths, and language
2026-03-31 16:32:26 +02:00
Martin Tranberg
86ff8043f1
refactor: replace global editing lock with active_edits dictionary to support concurrent file editing
2026-03-31 16:21:02 +02:00
Martin Tranberg
0d8407f624
feat: add application icon and improve path handling for bundled executables
2026-03-31 16:11:08 +02:00
Martin Tranberg
6659ebd6ac
feat: add refresh functionality to UI and document future feature requests
2026-03-31 12:05:50 +02:00
Martin Tranberg
f7cebfc489
feat: add file and folder download functionality to context menu
2026-03-31 11:41:46 +02:00
Martin Tranberg
b1c46fbace
feat: add open in browser context menu option and optimize MSAL authentication handling
2026-03-31 11:35:55 +02:00
Martin Tranberg
ed931f2088
refactor: implement token validation and localize UI labels and status messages
2026-03-31 11:25:09 +02:00
Martin Tranberg
9ccbcbaf0c
feat: implement multi-language support, file drag-and-drop, and new UI controls for file management
2026-03-31 11:21:41 +02:00
Martin Tranberg
07913c0224
fix: add safety checks to path display and tree selection to prevent runtime errors during object destruction
2026-03-31 10:48:55 +02:00
Martin Tranberg
dfbef36558
feat: add file size column and formatting helper to list view
2026-03-31 10:45:29 +02:00
Martin Tranberg
220bedda48
refactor: move project_description.md to dev directory and remove obsolete screenshot
2026-03-31 10:41:28 +02:00
Martin Tranberg
d3a7ce69e9
feat: implement UI locking and prevent application exit during active file editing sessions
2026-03-30 19:49:16 +02:00
Martin Tranberg
2b82a7aa5c
feat: add ImageList to TreeCtrl and ListCtrl for visual item classification
2026-03-30 19:40:00 +02:00
Martin Tranberg
14e327989c
feat: add file editing workflow with manual completion button and info bar notifications
2026-03-30 19:34:51 +02:00
Martin Tranberg
16fca9d7d2
feat: replace static path label with interactive breadcrumb navigation panel
2026-03-30 19:25:10 +02:00
Martin Tranberg
125e9e8232
refactor: replace customtkinter with wxPython and implement tree-based navigation
2026-03-30 19:11:51 +02:00
Martin Tranberg
4e028aaf66
Fix navigation loop: Synchronize breadcrumb path with displayed folder ID when navigating back.
2026-03-30 15:53:59 +02:00
Martin Tranberg
b2d7f8f24f
Keep original filename during editing by using unique subfolders for downloads.
2026-03-30 15:44:06 +02:00
Martin Tranberg
8def477647
Improved file processing logic: added better checkout/upload error handling and more robust file lock detection.
2026-03-30 15:39:28 +02:00
Martin Tranberg
741a7ee489
Initial commit: SharePoint Explorer with modern UI and settings.json support
2026-03-30 15:18:48 +02:00