File tree Expand file tree Collapse file tree 3 files changed +49
-6
lines changed
django/contrib/admin/static/admin Expand file tree Collapse file tree 3 files changed +49
-6
lines changed Original file line number Diff line number Diff line change 117
117
}
118
118
119
119
@media (max-width : 767px ) {
120
- # nav-sidebar , # toggle-nav-sidebar {
121
- display : none;
120
+ # container > .main .shifted {
121
+ overflow-x : hidden;
122
+ flex : 0 1 auto;
122
123
}
123
124
124
- .main > # nav-sidebar + .content ,
125
- .main .shifted > # nav-sidebar + .content {
126
- max-width : 100% ;
125
+ .main .shifted # nav-sidebar {
126
+ flex : none;
127
+ }
128
+
129
+ # nav-sidebar {
130
+ width : calc (100% - 23px );
131
+ height : 100% ;
127
132
}
128
133
}
129
134
Original file line number Diff line number Diff line change 2
2
{
3
3
const toggleNavSidebar = document . getElementById ( 'toggle-nav-sidebar' ) ;
4
4
if ( toggleNavSidebar !== null ) {
5
+ const isMobile = window . innerWidth <= 768 ;
5
6
const navSidebar = document . getElementById ( 'nav-sidebar' ) ;
6
7
const main = document . getElementById ( 'main' ) ;
7
- let navSidebarIsOpen = localStorage . getItem ( 'django.admin.navSidebarIsOpen' ) ;
8
+ let navSidebarIsOpen = isMobile ? false : localStorage . getItem ( 'django.admin.navSidebarIsOpen' ) ;
8
9
if ( navSidebarIsOpen === null ) {
9
10
navSidebarIsOpen = 'true' ;
10
11
}
Original file line number Diff line number Diff line change @@ -232,3 +232,40 @@ def test_sidebar_filter_persists(self):
232
232
filter_input = self .selenium .find_element (By .CSS_SELECTOR , "#nav-filter" )
233
233
filter_input .send_keys ("users" )
234
234
self .assertEqual (self .selenium .execute_script (filter_value_script ), "users" )
235
+
236
+ def test_sidebar_state_ignore_on_mobile (self ):
237
+ from selenium .webdriver .common .by import By
238
+
239
+ def get_nav_sidebar ():
240
+ return self .selenium .find_element (By .ID , "nav-sidebar" )
241
+
242
+ def get_users_link ():
243
+ return self .selenium .find_element (By .CSS_SELECTOR , "#auth-user a" )
244
+
245
+ self .selenium .get (
246
+ self .live_server_url + reverse ("test_with_sidebar:auth_user_changelist" )
247
+ )
248
+ with self .mobile_size ():
249
+ self .assertIsNone (
250
+ self .selenium .execute_script (
251
+ "return localStorage.getItem('django.admin.navSidebarIsOpen')"
252
+ )
253
+ )
254
+ users_link = get_users_link ()
255
+ users_link .click ()
256
+ nav_sidebar = get_nav_sidebar ()
257
+ self .assertFalse (nav_sidebar .is_displayed ())
258
+ toggle_button = self .selenium .find_element (
259
+ By .CSS_SELECTOR , "#toggle-nav-sidebar"
260
+ )
261
+ toggle_button .click ()
262
+ self .assertEqual (
263
+ self .selenium .execute_script (
264
+ "return localStorage.getItem('django.admin.navSidebarIsOpen')"
265
+ ),
266
+ "true" ,
267
+ )
268
+ users_link = get_users_link ()
269
+ users_link .click ()
270
+ nav_sidebar = get_nav_sidebar ()
271
+ self .assertFalse (nav_sidebar .is_displayed ())
You can’t perform that action at this time.
0 commit comments